From 6307be0cee386349f0f22ac8b08192854be4e4aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Fri, 23 Mar 2018 21:33:22 -0300 Subject: [PATCH 001/456] Fixes #284: missing star counts --- test/functional/libraries.js | 24 ++++++++++++++++++++++++ views/website/libraries/1c.pug | 2 ++ views/website/libraries/java4.pug | 2 ++ views/website/libraries/java5.pug | 2 ++ views/website/libraries/netrt.pug | 2 ++ 5 files changed, 32 insertions(+) diff --git a/test/functional/libraries.js b/test/functional/libraries.js index f600f4ab..7ca00ab4 100644 --- a/test/functional/libraries.js +++ b/test/functional/libraries.js @@ -92,6 +92,30 @@ describe('Libraries', function() { })).to.be.true; }); + it('Has a data-repo attribute for star counts if repo ' + + 'is in GitHub', async function() { + const repos = await this.page.$$eval('.panel-wrap', bodies => { + const result = []; + for(let i = 0; i < bodies.length; ++i) { + const spanStars = bodies[i].querySelector('span.stars'); + const repoUrl = bodies[i].querySelector('.repository a').href; + + if(repoUrl.indexOf('github') !== -1) { + result.push({ + url: repoUrl, + dataRepo: spanStars ? spanStars.getAttribute('data-repo') : null + }); + } + } + + return result; + }); + + for(const repo of repos) { + expect(repo.dataRepo, repo.url).to.exist.and.not.be.empty; + } + }); + it('Displays libraries stacked on top of each other ' + 'for small screens', async function() { try { diff --git a/views/website/libraries/1c.pug b/views/website/libraries/1c.pug index 2f60a593..b4c1de48 100644 --- a/views/website/libraries/1c.pug +++ b/views/website/libraries/1c.pug @@ -74,6 +74,8 @@ article.jwt-1c._1c.accordion(data-accordion) a(href='https://github.com/pintov') i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') | Vasily Pintov + span.stars(data-repo='pintov/1c-jwt', style='display: inline;') + i.icon-budicon-466 .repository i.icon-1392070209-icon-social-github a(href='https://github.com/pintov/1c-jwt') View Repo diff --git a/views/website/libraries/java4.pug b/views/website/libraries/java4.pug index dfd65826..7bb45d99 100644 --- a/views/website/libraries/java4.pug +++ b/views/website/libraries/java4.pug @@ -74,6 +74,8 @@ article.jwt-java.java.accordion(data-accordion) a(href='https://twitter.com/lhazlewood') i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') | Les Hazlewood + span.stars(data-repo='jwtk/jjwt', style='display: inline;') + i.icon-budicon-466 .repository i.icon-1392070209-icon-social-github a(href='https://github.com/jwtk/jjwt') View Repo diff --git a/views/website/libraries/java5.pug b/views/website/libraries/java5.pug index 1aba7013..16f69f79 100644 --- a/views/website/libraries/java5.pug +++ b/views/website/libraries/java5.pug @@ -74,6 +74,8 @@ article.jwt-java.java.accordion(data-accordion) a(href='https://github.com/inversoft') i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') | Inversoft + span.stars(data-repo='inversoft/prime-jwt', style='display: inline;') + i.icon-budicon-466 .repository i.icon-1392070209-icon-social-github a(href='https://github.com/inversoft/prime-jwt') View Repo diff --git a/views/website/libraries/netrt.pug b/views/website/libraries/netrt.pug index c600e371..961bd587 100644 --- a/views/website/libraries/netrt.pug +++ b/views/website/libraries/netrt.pug @@ -74,6 +74,8 @@ article.jwt-net.net.accordion(data-accordion) a(href='https://github.com/dvsekhvalnov/jose-rt') i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') | DV + span.stars(data-repo='dvsekhvalnov/jose-rt', style='display: inline;') + i.icon-budicon-466 .repository i.icon-1392070209-icon-social-github a(href='https://github.com/dvsekhvalnov/jose-rt') View Repo From aae97aacde01368b11a498c75b79428c2f7e48cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Mon, 26 Mar 2018 22:26:00 -0300 Subject: [PATCH 002/456] Ignore VS Code config folder. --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index df917eb7..2be5df3e 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ dist .tmp .DS_Store npm-debug.log +.vscode From 375c9e18702331ca38e1f057038a7fa08ba59b17 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Mon, 26 Mar 2018 22:26:19 -0300 Subject: [PATCH 003/456] Fixes #272: we now support plain RSA public keys without the X.509 SubjectPublicKeyInfo header. --- src/editor/jwt.js | 47 ++++++++++++++++++++++++++++++++++++++--- test/unit/editor/jwt.js | 28 ++++++++++++++++++++---- 2 files changed, 68 insertions(+), 7 deletions(-) diff --git a/src/editor/jwt.js b/src/editor/jwt.js index 56eb4176..ebc78697 100644 --- a/src/editor/jwt.js +++ b/src/editor/jwt.js @@ -5,7 +5,9 @@ import { KEYUTIL, b64utoutf8, b64utohex, - utf8tohex + utf8tohex, + b64tohex, + ASN1HEX } from 'jsrsasign'; import log from 'loglevel'; @@ -28,6 +30,44 @@ export function sign(header, } } +/** + * This function takes a PEM string with a public key and returns a + * jsrsasign key object (RSAKey, KJUR.crypto.DSA, KJUR.crypto.ECDSA). It also + * handles plain RSA keys not wrapped in a X.509 SubjectPublicKeyInfo + * structure. + * See: https://stackoverflow.com/questions/18039401/how-can-i-transform-between-the-two-styles-of-public-key-format-one-begin-rsa + * @param {String} publicKey The public key as a PEM string. + * @returns {Object} The public key as a jsrsasign key object. + */ +function getPublicKeyObject(publicKey) { + try { + const startTag = '-----BEGIN RSA PUBLIC KEY-----'; + const endTag = '-----END RSA PUBLIC KEY-----'; + const startTagPos = publicKey.indexOf(startTag); + const endTagPos = publicKey.indexOf(endTag); + + if(startTagPos !== -1 && endTagPos !== -1) { + const plainDataBase64 = + publicKey.substr(0, endTagPos) + .substr(startTagPos + startTag.length); + + const plainDataDER = b64tohex(plainDataBase64); + + const barePublicKey = { + n: ASN1HEX.getVbyList(plainDataDER, 0, [0], '02'), + e: ASN1HEX.getVbyList(plainDataDER, 0, [1], '02') + }; + + return KEYUTIL.getKey(barePublicKey); + } + } catch(e) { + log.error('Failed to make public key into X.509 ' + + 'SubjectPublicKeyInfo key:', e); + } + + return KEYUTIL.getKey(publicKey); +} + export function verify(jwt, secretOrPublicKeyString, base64Secret = false) { if(!isToken(jwt)) { return false; @@ -46,11 +86,12 @@ export function verify(jwt, secretOrPublicKeyString, base64Secret = false) { b64utohex(secretOrPublicKeyString) : utf8tohex(secretOrPublicKeyString)); } else { - return jws.JWS.verify(jwt, secretOrPublicKeyString); + const publicKeyObject = getPublicKeyObject(secretOrPublicKeyString); + return jws.JWS.verify(jwt, publicKeyObject); } } catch(e) { log.warn('Could not verify token, ' + - 'probably due to bad data in it or the keys: ', e); + 'probably due to bad data in it or the keys: ', e); return false; } } diff --git a/test/unit/editor/jwt.js b/test/unit/editor/jwt.js index f3b2b8bf..73f9afca 100644 --- a/test/unit/editor/jwt.js +++ b/test/unit/editor/jwt.js @@ -9,6 +9,13 @@ import { should } from 'chai'; should(); +const publicKeyPlainRSA = +`-----BEGIN RSA PUBLIC KEY----- +MIGJAoGBAN2Vq1GNGOiCjdaiOAYcUdgu6B1RYBj2JHd/LhqtY0DUqhLyRXDfdwmJ +tevxu/BQBSlqsLCW91sfp28Q5+i7T+AIVCwdR9CtIO/4y5JQwB7yPMoTipb6Mr7F +BT1rTcZScoeSSV75DSlf+DqNdnuvX/EArkOjaRD5fnEr1yKlGAQrAgMBAAE= +-----END RSA PUBLIC KEY-----`; + describe('JWT', function() { it('detects tokens', function() { jwt.isToken('skdjf9238ujdhkf.asdfasdf2.sdsdffsfsd').should.be.false; @@ -97,7 +104,7 @@ describe('JWT', function() { } }); - it('signs tokens (HS256)', function() { + it('signs/verifies tokens (HS256)', function() { const header = { alg: 'HS256' }; @@ -118,7 +125,7 @@ describe('JWT', function() { decoded.payload.should.deep.equal(payload); }); - it('signs tokens (RS256)', function() { + it('signs/verifies tokens (RS256)', function() { const header = { alg: 'RS256' }; @@ -139,7 +146,7 @@ describe('JWT', function() { decoded.payload.should.deep.equal(payload); }); - it('signs tokens (ES256)', function() { + it('signs/verifies tokens (ES256)', function() { const header = { alg: 'ES256' }; @@ -160,7 +167,7 @@ describe('JWT', function() { decoded.payload.should.deep.equal(payload); }); - it('signs tokens (PS256)', function() { + it('signs/verifies tokens (PS256)', function() { const header = { alg: 'PS256' }; @@ -180,4 +187,17 @@ describe('JWT', function() { decoded.header.should.deep.equal(header); decoded.payload.should.deep.equal(payload); }); + + it('verifies tokens (RS256) using a plain RSA public key', function() { + const header = { + alg: 'RS256' + }; + const payload = { + sub: 'test' + }; + + const token = jwt.sign(header, payload, tokens.rs256.privateKey); + + jwt.verify(token, publicKeyPlainRSA).should.be.true; + }); }); From 556998bdbb5a741d3919d58537c440dcec074972 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Tue, 27 Mar 2018 22:58:58 -0300 Subject: [PATCH 004/456] Fixes #141: adding/removing/editing libraries is now as simple as editing a JSON file. --- Gruntfile.js | 6 + stylus/website/index.styl | 84 - views/website/libraries.pug | 107 +- views/website/libraries/1c.pug | 84 - views/website/libraries/c.pug | 84 - views/website/libraries/c2.pug | 84 - views/website/libraries/clojure.pug | 84 - views/website/libraries/cpp.pug | 84 - views/website/libraries/cpp2.pug | 84 - views/website/libraries/cpp3.pug | 84 - views/website/libraries/crystal.pug | 84 - views/website/libraries/d.pug | 84 - views/website/libraries/d2.pug | 84 - views/website/libraries/data.json | 2186 +++++++++++++++++ views/website/libraries/delphi.pug | 84 - views/website/libraries/delphi2.pug | 84 - views/website/libraries/elixir.pug | 83 - views/website/libraries/elixir2.pug | 83 - views/website/libraries/elixir3.pug | 83 - views/website/libraries/erlang.pug | 84 - views/website/libraries/go.pug | 84 - views/website/libraries/go2.pug | 84 - views/website/libraries/go3.pug | 86 - views/website/libraries/go4.pug | 84 - views/website/libraries/go5.pug | 84 - views/website/libraries/go6.pug | 84 - views/website/libraries/go7.pug | 84 - views/website/libraries/go8.pug | 84 - views/website/libraries/go9.pug | 84 - views/website/libraries/groovy.pug | 84 - views/website/libraries/haskell.pug | 82 - views/website/libraries/haskell2.pug | 84 - views/website/libraries/haxe.pug | 84 - views/website/libraries/java.pug | 84 - views/website/libraries/java2.pug | 82 - views/website/libraries/java3.pug | 82 - views/website/libraries/java4.pug | 84 - views/website/libraries/java5.pug | 84 - views/website/libraries/java6.pug | 84 - views/website/libraries/js.pug | 88 - views/website/libraries/js2.pug | 84 - views/website/libraries/lua.pug | 84 - views/website/libraries/net.pug | 86 - views/website/libraries/net2.pug | 87 - views/website/libraries/netrt.pug | 87 - views/website/libraries/node.pug | 88 - views/website/libraries/objective-c.pug | 83 - views/website/libraries/perl5.pug | 84 - views/website/libraries/php.pug | 88 - views/website/libraries/php3.pug | 88 - views/website/libraries/php4.pug | 84 - views/website/libraries/php5.pug | 84 - views/website/libraries/php6.pug | 84 - views/website/libraries/php7.pug | 84 - views/website/libraries/php8.pug | 84 - views/website/libraries/php9.pug | 84 - views/website/libraries/postgresql.pug | 84 - views/website/libraries/python.pug | 88 - views/website/libraries/python2.pug | 84 - views/website/libraries/python3.pug | 84 - views/website/libraries/q.pug | 85 - views/website/libraries/ruby.pug | 83 - views/website/libraries/ruby2.pug | 83 - views/website/libraries/ruby3.pug | 84 - views/website/libraries/ruby4.pug | 84 - views/website/libraries/rust.pug | 84 - views/website/libraries/rust2.pug | 84 - views/website/libraries/rust3.pug | 84 - views/website/libraries/scala.pug | 84 - views/website/libraries/scala2.pug | 84 - views/website/libraries/scala3.pug | 84 - views/website/libraries/scala4.pug | 85 - .../website/libraries/support/getLibsData.js | 88 + views/website/libraries/swift.pug | 84 - views/website/libraries/swift2.pug | 84 - views/website/libraries/swift3.pug | 84 - views/website/libraries/template.pug | 93 + 77 files changed, 2379 insertions(+), 6169 deletions(-) delete mode 100644 views/website/libraries/1c.pug delete mode 100644 views/website/libraries/c.pug delete mode 100644 views/website/libraries/c2.pug delete mode 100644 views/website/libraries/clojure.pug delete mode 100644 views/website/libraries/cpp.pug delete mode 100644 views/website/libraries/cpp2.pug delete mode 100644 views/website/libraries/cpp3.pug delete mode 100644 views/website/libraries/crystal.pug delete mode 100644 views/website/libraries/d.pug delete mode 100644 views/website/libraries/d2.pug create mode 100644 views/website/libraries/data.json delete mode 100644 views/website/libraries/delphi.pug delete mode 100644 views/website/libraries/delphi2.pug delete mode 100644 views/website/libraries/elixir.pug delete mode 100644 views/website/libraries/elixir2.pug delete mode 100644 views/website/libraries/elixir3.pug delete mode 100644 views/website/libraries/erlang.pug delete mode 100644 views/website/libraries/go.pug delete mode 100644 views/website/libraries/go2.pug delete mode 100644 views/website/libraries/go3.pug delete mode 100644 views/website/libraries/go4.pug delete mode 100644 views/website/libraries/go5.pug delete mode 100644 views/website/libraries/go6.pug delete mode 100644 views/website/libraries/go7.pug delete mode 100644 views/website/libraries/go8.pug delete mode 100644 views/website/libraries/go9.pug delete mode 100644 views/website/libraries/groovy.pug delete mode 100644 views/website/libraries/haskell.pug delete mode 100644 views/website/libraries/haskell2.pug delete mode 100644 views/website/libraries/haxe.pug delete mode 100644 views/website/libraries/java.pug delete mode 100644 views/website/libraries/java2.pug delete mode 100644 views/website/libraries/java3.pug delete mode 100644 views/website/libraries/java4.pug delete mode 100644 views/website/libraries/java5.pug delete mode 100644 views/website/libraries/java6.pug delete mode 100644 views/website/libraries/js.pug delete mode 100644 views/website/libraries/js2.pug delete mode 100644 views/website/libraries/lua.pug delete mode 100644 views/website/libraries/net.pug delete mode 100644 views/website/libraries/net2.pug delete mode 100644 views/website/libraries/netrt.pug delete mode 100644 views/website/libraries/node.pug delete mode 100644 views/website/libraries/objective-c.pug delete mode 100644 views/website/libraries/perl5.pug delete mode 100644 views/website/libraries/php.pug delete mode 100644 views/website/libraries/php3.pug delete mode 100644 views/website/libraries/php4.pug delete mode 100644 views/website/libraries/php5.pug delete mode 100644 views/website/libraries/php6.pug delete mode 100644 views/website/libraries/php7.pug delete mode 100644 views/website/libraries/php8.pug delete mode 100644 views/website/libraries/php9.pug delete mode 100644 views/website/libraries/postgresql.pug delete mode 100644 views/website/libraries/python.pug delete mode 100644 views/website/libraries/python2.pug delete mode 100644 views/website/libraries/python3.pug delete mode 100644 views/website/libraries/q.pug delete mode 100644 views/website/libraries/ruby.pug delete mode 100644 views/website/libraries/ruby2.pug delete mode 100644 views/website/libraries/ruby3.pug delete mode 100644 views/website/libraries/ruby4.pug delete mode 100644 views/website/libraries/rust.pug delete mode 100644 views/website/libraries/rust2.pug delete mode 100644 views/website/libraries/rust3.pug delete mode 100644 views/website/libraries/scala.pug delete mode 100644 views/website/libraries/scala2.pug delete mode 100644 views/website/libraries/scala3.pug delete mode 100644 views/website/libraries/scala4.pug create mode 100644 views/website/libraries/support/getLibsData.js delete mode 100644 views/website/libraries/swift.pug delete mode 100644 views/website/libraries/swift2.pug delete mode 100644 views/website/libraries/swift3.pug create mode 100644 views/website/libraries/template.pug diff --git a/Gruntfile.js b/Gruntfile.js index d8c505a0..21e8347a 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -108,6 +108,12 @@ module.exports = grunt => { pug: { website: { + options: { + //pretty: true, + data: { + languages: require('./views/website/libraries/data.json') + } + }, files: { 'dist/website/index.html': 'views/website/index.pug', 'dist/website/introduction/index.html': diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 234fbaa9..37094a1b 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -713,90 +713,6 @@ body &:nth-child(3n+1) clear both - &.jwt-net - .panel-heading h3 - background-color #2AA8E5 - &.jwt-python - .panel-heading h3 - background-color #377EF0 - &.jwt-clojure - .panel-heading h3 - background-color #5881d8 - &.jwt-node - .panel-heading h3 - background-color #8AC244 - &.jwt-java - .panel-heading h3 - background-color #E76F00 - &.jwt-js - .panel-heading h3 - background-color #EFC825 - &.jwt-php - .panel-heading h3 - background-color #777BB4 - &.jwt-postgresql - .panel-heading h3 - background-color #336791 - &.jwt-ruby - .panel-heading h3 - background-color #AA1100 - &.jwt-elixir - .panel-heading h3 - background-color #4E2A8E - &.jwt-erlang - .panel-heading h3 - background-color #A90533 - &.jwt-go - .panel-heading h3 - background-color #47B6C4 - &.jwt-groovy - .panel-heading h3 - background-color #6398aa - &.jwt-haskell - .panel-heading h3 - background-color #666 - &.jwt-haxe - .panel-heading h3 - background-color #EA8220 - &.jwt-rust - .panel-heading h3 - background-color #814626 - &.jwt-lua - .panel-heading h3 - background-color #000080 - &.jwt-scala - .panel-heading h3 - background-color #EA2D2E - &.jwt-d - .panel-heading h3 - background-color #B44137 - &.jwt-q - .panel-heading h3 - background-color #666 - &.jwt-c - .panel-heading h3 - background-color #5180D2 - &.jwt-cpp - .panel-heading h3 - background-color #00599c - &.jwt-objective-c - .panel-heading h3 - background linear-gradient(top, #AAAAAA, #767676) - - &.jwt-delphi - .panel-heading h3 - background-color #E31C23 - &.jwt-perl - .panel-heading h3 - background-color #3B477A - &.jwt-crystal - .panel-heading h3 - background-color #B0B0B0 - &.jwt-1c - .panel-heading h3 - background-color #fbc53d - - .panel-heading padding 0 border-bottom 0 diff --git a/views/website/libraries.pug b/views/website/libraries.pug index b24d5ac0..76ef6002 100644 --- a/views/website/libraries.pug +++ b/views/website/libraries.pug @@ -7,36 +7,10 @@ section#libraries-io.libraries-jwt span Filter by .jwt-select select#libraries-select - // Languages must be in alphabetic order option(value='*', selected='') All - option(value='._1c') 1c - option(value='.c') C - option(value='.cpp') C++ - option(value='.clojure') Clojure - option(value='.crystal') Crystal - option(value='.d') D - option(value='.delphi') Delphi - option(value='.elixir') Elixir - option(value='.erlang') Erlang - option(value='.go') Go - option(value='.groovy') Groovy - option(value='.haskell') Haskell - option(value='.haxe') Haxe - option(value='.java') Java - option(value='.js') JavaScript - option(value='.lua') Lua - option(value='.net') .NET - option(value='.node') Node.js - option(value='.objective-c') Objective-c - option(value='.perl') Perl - option(value='.php') PHP - option(value='.postgresql') PostgreSQL - option(value='.python') Python - option(value='.q') Q - option(value='.ruby') Ruby - option(value='.rust') Rust - option(value='.scala') Scala - option(value='.swift') Swift + // Languages must be in alphabetic order + each lang in Object.keys(languages).sort() + option(value=`.${languages[lang].uniqueClass}`) #{lang} .warning b Warning: @@ -49,75 +23,6 @@ section#libraries-io.libraries-jwt path(d='M16 10v28l22-14z') .libraries-sv(data-accordion-group) - include libraries/net.pug - include libraries/net2.pug - include libraries/netrt.pug - include libraries/python.pug - include libraries/python2.pug - include libraries/python3.pug - include libraries/node.pug - include libraries/java.pug - include libraries/java2.pug - include libraries/java3.pug - include libraries/java4.pug - include libraries/java5.pug - include libraries/java6.pug - include libraries/js.pug - include libraries/js2.pug - include libraries/perl5.pug - include libraries/ruby.pug - include libraries/ruby2.pug - include libraries/ruby3.pug - include libraries/ruby4.pug - include libraries/elixir.pug - include libraries/elixir2.pug - include libraries/elixir3.pug - include libraries/erlang.pug - include libraries/go.pug - include libraries/go2.pug - include libraries/go3.pug - include libraries/go4.pug - include libraries/go5.pug - include libraries/go6.pug - include libraries/go7.pug - include libraries/go8.pug - include libraries/go9.pug - include libraries/groovy.pug - include libraries/haskell.pug - include libraries/haskell2.pug - include libraries/haxe.pug - include libraries/rust.pug - include libraries/rust2.pug - include libraries/rust3.pug - include libraries/lua.pug - include libraries/scala.pug - include libraries/scala2.pug - include libraries/scala3.pug - include libraries/scala4.pug - include libraries/d.pug - include libraries/d2.pug - include libraries/clojure.pug - include libraries/objective-c.pug - include libraries/swift.pug - include libraries/swift2.pug - include libraries/swift3.pug - include libraries/c.pug - include libraries/c2.pug - include libraries/cpp.pug - include libraries/cpp2.pug - include libraries/cpp3.pug - include libraries/q.pug - include libraries/delphi.pug - include libraries/delphi2.pug - include libraries/php.pug - include libraries/php3.pug - include libraries/php4.pug - include libraries/php5.pug - include libraries/php6.pug - include libraries/php7.pug - include libraries/php8.pug - include libraries/php9.pug - include libraries/crystal.pug - include libraries/1c.pug - include libraries/postgresql.pug - + each lang, langName in languages + each lib in lang.libs + include libraries/template.pug diff --git a/views/website/libraries/1c.pug b/views/website/libraries/1c.pug deleted file mode 100644 index b4c1de48..00000000 --- a/views/website/libraries/1c.pug +++ /dev/null @@ -1,84 +0,0 @@ -// 1C pintov/1c-jwt -article.jwt-1c._1c.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/22.svg') - h3 1C - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-501 - | HS384 - p - i.icon-budicon-501 - | HS512 - p - i.icon-budicon-501 - | RS256 - p - i.icon-budicon-501 - | RS384 - p - i.icon-budicon-501 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/pintov') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Vasily Pintov - span.stars(data-repo='pintov/1c-jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/pintov/1c-jwt') View Repo - - .panel-footer - code git clone https://github.com/pintov/1c-jwt diff --git a/views/website/libraries/c.pug b/views/website/libraries/c.pug deleted file mode 100644 index 8417abe4..00000000 --- a/views/website/libraries/c.pug +++ /dev/null @@ -1,84 +0,0 @@ -// C benmcollins/libjwt -article.jwt-c.c.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/16.svg') - h3 C - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/benmcollins') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | benmcollins - span.stars(data-repo='benmcollins/libjwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/benmcollins/libjwt') View Repo - - .panel-footer - code add-apt-repository ppa:ben-collins/libjwt diff --git a/views/website/libraries/c2.pug b/views/website/libraries/c2.pug deleted file mode 100644 index 7577385e..00000000 --- a/views/website/libraries/c2.pug +++ /dev/null @@ -1,84 +0,0 @@ -// C cisco/cjose -article.jwt-c.c.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/16.svg') - h3 C - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/cisco/cjose') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | linuxwolf - span.stars(data-repo='cisco/cjose', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/cisco/cjose') View Repo - - .panel-footer - code go get github.com/cisco/cjose diff --git a/views/website/libraries/clojure.pug b/views/website/libraries/clojure.pug deleted file mode 100644 index 1872f9f4..00000000 --- a/views/website/libraries/clojure.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Clojure funcool/buddy -article.jwt-clojure.clojure.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/13.svg') - h3 Clojure - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/niwinz') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Andrey Antukh - span.stars(data-repo='funcool/buddy', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/funcool/buddy/') View Repo - - .panel-footer - code lein: [funcool/buddy "0.6.0"] diff --git a/views/website/libraries/cpp.pug b/views/website/libraries/cpp.pug deleted file mode 100644 index 4350605a..00000000 --- a/views/website/libraries/cpp.pug +++ /dev/null @@ -1,84 +0,0 @@ -// C++ troian/jwtpp -article.jwt-cpp.cpp.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/26.svg') - h3 C++ - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/troian') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Artur Troian - span.stars(data-repo='troian/josepp', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/troian/josepp') View Repo - - .panel-footer - code git clone https://github.com/troian/josepp diff --git a/views/website/libraries/cpp2.pug b/views/website/libraries/cpp2.pug deleted file mode 100644 index 9485429d..00000000 --- a/views/website/libraries/cpp2.pug +++ /dev/null @@ -1,84 +0,0 @@ -// C++ Thalhammer/jwt-cpp -article.jwt-cpp.cpp.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/26.svg') - h3 C++ - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/Thalhammer') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Dominik Thalhammer - span.stars(data-repo='Thalhammer/jwt-cpp', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/Thalhammer/jwt-cpp') View Repo - - .panel-footer - code git clone https://github.com/Thalhammer/jwt-cpp diff --git a/views/website/libraries/cpp3.pug b/views/website/libraries/cpp3.pug deleted file mode 100644 index 4331bd59..00000000 --- a/views/website/libraries/cpp3.pug +++ /dev/null @@ -1,84 +0,0 @@ -// C++ arun11299/cpp-jwt -article.jwt-cpp.cpp.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/26.svg') - h3 C++ - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/arun11299') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Arun Muralidharan - span.stars(data-repo='arun11299/cpp-jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/arun11299/cpp-jwt') View Repo - - .panel-footer - code git clone https://github.com/arun11299/cpp-jwt diff --git a/views/website/libraries/crystal.pug b/views/website/libraries/crystal.pug deleted file mode 100644 index e4789fba..00000000 --- a/views/website/libraries/crystal.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Crystal greyblake/crystal-jwt -article.jwt-crystal.crystal.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/21.svg') - h3 Crystal - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-501 - | RS256 - p - i.icon-budicon-501 - | RS384 - p - i.icon-budicon-501 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/greyblake') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Sergey Potapov - span.stars(data-repo='crystal-community/jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/crystal-community/jwt') View Repo - - .panel-footer - code git clone https://github.com/crystal-community/jwt.git diff --git a/views/website/libraries/d.pug b/views/website/libraries/d.pug deleted file mode 100644 index 178e9bd1..00000000 --- a/views/website/libraries/d.pug +++ /dev/null @@ -1,84 +0,0 @@ -// D olehlong/jwtd -article.jwt-d.d.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/14.svg') - h3 D - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/olehlong') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | olehlong - span.stars(data-repo='olehlong/jwtd', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/olehlong/jwtd') View Repo - - .panel-footer - code dub fetch jwtd diff --git a/views/website/libraries/d2.pug b/views/website/libraries/d2.pug deleted file mode 100644 index bac887a7..00000000 --- a/views/website/libraries/d2.pug +++ /dev/null @@ -1,84 +0,0 @@ -// D zolamk/jwt -article.jwt-d.d.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/14.svg') - h3 D - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-501 - | RS256 - p - i.icon-budicon-501 - | RS384 - p - i.icon-budicon-501 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/zolamk') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | zolamk - span.stars(data-repo='zolamk/jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/zolamk/jwt') View Repo - - .panel-footer - code dub fetch jwt diff --git a/views/website/libraries/data.json b/views/website/libraries/data.json new file mode 100644 index 00000000..38ad1fe5 --- /dev/null +++ b/views/website/libraries/data.json @@ -0,0 +1,2186 @@ +{ + ".NET": { + "uniqueClass": "net", + "image": "/img/1.svg", + "bgColor": "rgb(42, 168, 229)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": null, + "authorName": "Microsoft", + "gitHubRepoPath": "AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet", + "repoUrl": "https://github.com/MSOpenTech/azure-activedirectory-identitymodel-extensions-for-dotnet", + "installCommandHtml": "Install-Package
System.IdentityModel.Tokens.Jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/dvsekhvalnov/jose-jwt", + "authorName": "DV", + "gitHubRepoPath": "dvsekhvalnov/jose-jwt", + "repoUrl": "https://github.com/dvsekhvalnov/jose-jwt", + "installCommandHtml": "Install-Package
jose-jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/dvsekhvalnov/jose-rt", + "authorName": "DV", + "gitHubRepoPath": "dvsekhvalnov/jose-rt", + "repoUrl": "https://github.com/dvsekhvalnov/jose-rt", + "installCommandHtml": "Install-Package
jose-rt" + } + ] + }, + "Python": { + "uniqueClass": "python", + "image": "/img/4.svg", + "bgColor": "rgb(55, 126, 240)", + "libs": [ + { + "minimumVersion": "1.0.1", + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": false, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/jpadilla", + "authorName": "José Padilla", + "gitHubRepoPath": "jpadilla/pyjwt", + "repoUrl": "https://github.com/jpadilla/pyjwt/", + "installCommandHtml": "pip install pyjwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/mpdavis", + "authorName": "Michael Davis", + "gitHubRepoPath": "mpdavis/python-jose", + "repoUrl": "https://github.com/mpdavis/python-jose/", + "installCommandHtml": "pip install python-jose" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/simo5", + "authorName": "Simo Sorce", + "gitHubRepoPath": "latchset/jwcrypto", + "repoUrl": "https://github.com/latchset/jwcrypto/", + "installCommandHtml": "pip install jwcrypto" + } + ] + }, + "Node.js": { + "uniqueClass": "node", + "image": "/img/2.svg", + "bgColor": "rgb(138, 194, 68)", + "libs": [ + { + "minimumVersion": "4.2.2", + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": true, + "exp": true, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/auth0", + "authorName": "Auth0", + "gitHubRepoPath": "auth0/node-jsonwebtoken", + "repoUrl": "https://github.com/auth0/node-jsonwebtoken", + "installCommandHtml": "npm install jsonwebtoken" + } + ] + }, + "Java": { + "uniqueClass": "java", + "image": "/img/3.svg", + "bgColor": "rgb(231, 111, 0)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/auth0", + "authorName": "Auth0", + "gitHubRepoPath": "auth0/java-jwt", + "repoUrl": "https://github.com/auth0/java-jwt", + "installCommandHtml": "maven: com.auth0 / java-jwt / 3.3.0" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://twitter.com/__b_c", + "authorName": "Brian Campbell", + "gitHubRepoPath": null, + "repoUrl": "https://bitbucket.org/b_c/jose4j", + "installCommandHtml": "maven: org.bitbucket.b_c / jose4j / 0.6.3" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": false, + "aud": true, + "exp": true, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/connect2id", + "authorName": "connect2id", + "gitHubRepoPath": null, + "repoUrl": "https://bitbucket.org/connect2id/nimbus-jose-jwt", + "installCommandHtml": "maven: com.nimbusds / nimbus-jose-jwt / 5.7" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://twitter.com/lhazlewood", + "authorName": "Les Hazlewood", + "gitHubRepoPath": "jwtk/jjwt", + "repoUrl": "https://github.com/jwtk/jjwt", + "installCommandHtml": "maven: io.jsonwebtoken / jjwt / 0.9.0" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/inversoft", + "authorName": "Inversoft", + "gitHubRepoPath": "inversoft/prime-jwt", + "repoUrl": "https://github.com/inversoft/prime-jwt", + "installCommandHtml": "maven: com.inversoft / prime-jwt / 1.3.0" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/vert-x3", + "authorName": "Vert.x", + "gitHubRepoPath": "vert-x3/vertx-auth", + "repoUrl": "https://github.com/vert-x3/vertx-auth", + "installCommandHtml": "maven: io.vertx / vertx-auth-jwt / 3.5.1" + } + ] + }, + "JavaScript": { + "uniqueClass": "js", + "image": "/img/6.svg", + "bgColor": "rgb(239, 200, 37)", + "libs": [ + { + "minimumVersion": "3.2.0", + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": false + }, + "authorUrl": "https://github.com/kjur", + "authorName": "Kenji Urushima", + "gitHubRepoPath": "kjur/jsrsasign", + "repoUrl": "https://github.com/kjur/jsrsasign", + "installCommandHtml": "npm install jsrsasign" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/square", + "authorName": "Square, Inc.", + "gitHubRepoPath": "square/js-jose", + "repoUrl": "https://github.com/square/js-jose", + "installCommandHtml": "npm install jose-jwe-jws" + } + ] + }, + "Perl": { + "uniqueClass": "perl", + "image": "/img/19.svg", + "bgColor": "rgb(59, 71, 122)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/DCIT", + "authorName": "Karel Miko", + "gitHubRepoPath": "DCIT/perl-Crypt-JWT", + "repoUrl": "https://github.com/DCIT/perl-Crypt-JWT", + "installCommandHtml": "cpanm Crypt::JWT" + } + ] + }, + "Ruby": { + "uniqueClass": "ruby", + "image": "/img/7.svg", + "bgColor": "rgb(170, 17, 0)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": null, + "authorName": "Lindsay & Rudat", + "gitHubRepoPath": "progrium/ruby-jwt", + "repoUrl": "https://github.com/progrium/ruby-jwt", + "installCommandHtml": "gem install jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": null, + "authorName": "Fleshman", + "gitHubRepoPath": "garyf/json_web_token", + "repoUrl": "https://github.com/garyf/json_web_token", + "installCommandHtml": "gem install json_web_token" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/nov", + "authorName": "Nov Matake", + "gitHubRepoPath": "nov/json-jwt", + "repoUrl": "https://github.com/nov/json-jwt", + "installCommandHtml": "gem install json-jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/potatosalad", + "authorName": "Andrew Bennett", + "gitHubRepoPath": "potatosalad/ruby-jose", + "repoUrl": "https://github.com/potatosalad/ruby-jose", + "installCommandHtml": "gem install jose" + } + ] + }, + "Elixir": { + "uniqueClass": "elixir", + "image": "/img/18.svg", + "bgColor": "rgb(78, 42, 142)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": null, + "authorName": "Fleshman", + "gitHubRepoPath": "garyf/json_web_token_ex", + "repoUrl": "https://github.com/garyf/json_web_token_ex", + "installCommandHtml": "defp deps, do: [{:json_web_token, \"~> 0.2.5\"}]" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": null, + "authorName": "bryanjos", + "gitHubRepoPath": "bryanjos/joken", + "repoUrl": "https://github.com/bryanjos/joken", + "installCommandHtml": "defp deps, do: [{:joken, \"~> 1.2\"}]" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": null, + "authorName": "hassox", + "gitHubRepoPath": "ueberauth/guardian", + "repoUrl": "https://github.com/ueberauth/guardian", + "installCommandHtml": "defp deps, do: [{:guardian, \"~> 0.11.1\"}]" + } + ] + }, + "Erlang": { + "uniqueClass": "erlang", + "image": "/img/27.svg", + "bgColor": "rgb(169, 5, 51)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/glejeune", + "authorName": "Gregoire Lejeune", + "gitHubRepoPath": "emedia-project/jwerl", + "repoUrl": "https://github.com/emedia-project/jwerl", + "installCommandHtml": "git clone https://github.com/emedia-project/jwerl.git" + } + ] + }, + "Go": { + "uniqueClass": "go", + "image": "/img/8.svg", + "bgColor": "rgb(71, 182, 196)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/dgrijalva", + "authorName": "dgrijalva", + "gitHubRepoPath": "dgrijalva/jwt-go", + "repoUrl": "https://github.com/dgrijalva/jwt-go", + "installCommandHtml": "go get github.com/dgrijalva/jwt-go" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/dvsekhvalnov/jose2go", + "authorName": "DV", + "gitHubRepoPath": "dvsekhvalnov/jose2go", + "repoUrl": "https://github.com/dvsekhvalnov/jose2go", + "installCommandHtml": "go get github.com/dvsekhvalnov/jose2go" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/SermoDigital/jose", + "authorName": "SermoDigital", + "gitHubRepoPath": "SermoDigital/jose", + "repoUrl": "https://github.com/SermoDigital/jose", + "installCommandHtml": "go get github.com/SermoDigital/jose" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": false, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/robbert229", + "authorName": "robbert229", + "gitHubRepoPath": "robbert229/jwt", + "repoUrl": "https://github.com/robbert229/jwt", + "installCommandHtml": "go get github.com/robbert229/jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/square", + "authorName": "DV", + "gitHubRepoPath": "square/go-jose", + "repoUrl": "https://github.com/square/go-jose", + "installCommandHtml": "go get github.com/square/go-jose" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/lestrrat", + "authorName": "lestrrat", + "gitHubRepoPath": "lestrrat/go-jwx", + "repoUrl": "https://github.com/lestrrat/go-jwx", + "installCommandHtml": "go get github.com/lestrrat/go-jwx" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": false, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/adam-hanna", + "authorName": "adam-hanna", + "gitHubRepoPath": "adam-hanna/jwt-auth", + "repoUrl": "https://github.com/adam-hanna/jwt-auth", + "installCommandHtml": "go get github.com/adam-hanna/jwt-auth" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": true, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": false, + "hs512": false, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/nickvellios", + "authorName": "nickvellios", + "gitHubRepoPath": "nickvellios/gojwt", + "repoUrl": "https://github.com/nickvellios/gojwt", + "installCommandHtml": "go get github.com/nickvellios/gojwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/gbrlsnchs", + "authorName": "gbrlsnchs", + "gitHubRepoPath": "gbrlsnchs/jwt", + "repoUrl": "https://github.com/gbrlsnchs/jwt", + "installCommandHtml": "go get github.com/gbrlsnchs/jwt" + } + ] + }, + "Groovy": { + "uniqueClass": "groovy", + "image": "/img/24.svg", + "bgColor": "rgb(99, 152, 170)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": false, + "hs512": false, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/kaleidos", + "authorName": "Kaleidos", + "gitHubRepoPath": "kaleidos/grails-security-stateless", + "repoUrl": "https://github.com/kaleidos/grails-security-stateless", + "installCommandHtml": "compile \"org.grails.plugins:security-stateless:0.0.9\"" + } + ] + }, + "Haskell": { + "uniqueClass": "haskell", + "image": "/img/9.svg", + "bgColor": "rgb(102, 102, 102)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": false, + "hs512": false, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://bitbucket.org/ssaasen", + "authorName": "Stefan Saasen", + "gitHubRepoPath": null, + "repoUrl": "https://bitbucket.org/ssaasen/haskell-jwt", + "installCommandHtml": "cabal install jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": false, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/frasertweedale", + "authorName": "Fraser Tweedale", + "gitHubRepoPath": "frasertweedale/hs-jose", + "repoUrl": "https://github.com/frasertweedale/hs-jose", + "installCommandHtml": "cabal install jose" + } + ] + }, + "Haxe": { + "uniqueClass": "haxe", + "image": "/img/23.svg", + "bgColor": "rgb(234, 130, 32)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": false, + "aud": true, + "exp": true, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": false, + "hs512": false, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/kevinresol", + "authorName": "Kevin Leung", + "gitHubRepoPath": "kevinresol/jsonwebtoken", + "repoUrl": "https://github.com/kevinresol/jsonwebtoken", + "installCommandHtml": "haxelib install jsonwebtoken" + } + ] + }, + "Rust": { + "uniqueClass": "rust", + "image": "/img/10.svg", + "bgColor": "rgb(129, 70, 38)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/GildedHonour", + "authorName": "GildedHonour", + "gitHubRepoPath": "GildedHonour/rust-jwt", + "repoUrl": "https://github.com/GildedHonour/rust-jwt", + "installCommandHtml": "cargo: name = \"frank_jwt\" version = \"*\"" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/Keats", + "authorName": "Keats", + "gitHubRepoPath": "Keats/jsonwebtoken", + "repoUrl": "https://github.com/Keats/jsonwebtoken", + "installCommandHtml": "cargo: name = \"jsonwebtoken\" version = \"*\"" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/lawliet89", + "authorName": "Yong Wen Chua", + "gitHubRepoPath": "lawliet89/biscuit", + "repoUrl": "https://github.com/lawliet89/biscuit", + "installCommandHtml": "Cargo.toml: biscuit = \"*\"" + } + ] + }, + "Lua": { + "uniqueClass": "lua", + "image": "/img/11.svg", + "bgColor": "rgb(0, 0, 128)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": false, + "jti": false, + "hs256": true, + "hs384": false, + "hs512": true, + "rs256": true, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/SkyLothar", + "authorName": "SkyLothar", + "gitHubRepoPath": "SkyLothar/lua-resty-jwt", + "repoUrl": "https://github.com/SkyLothar/lua-resty-jwt", + "installCommandHtml": "git clone https://github.com/SkyLothar/lua-resty-jwt.git" + } + ] + }, + "Scala": { + "uniqueClass": "scala", + "image": "/img/12.svg", + "bgColor": "rgb(234, 45, 46)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/jasongoodwin", + "authorName": "jasongoodwin", + "gitHubRepoPath": "jasongoodwin/authentikat-jwt", + "repoUrl": "https://github.com/jasongoodwin/authentikat-jwt", + "installCommandHtml": "sbt: \"com.jason-goodwin\" %% \"authentikat-jwt\" % \"0.4.5\"" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/pauldijou", + "authorName": "pauldijou", + "gitHubRepoPath": "pauldijou/jwt-scala", + "repoUrl": "https://github.com/pauldijou/jwt-scala", + "installCommandHtml": "sbt: \"pdi\" %% \"jwt-core\" % \"0.14.1\"" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/iain-logan", + "authorName": "iain-logan", + "gitHubRepoPath": "iain-logan/jwt", + "repoUrl": "https://github.com/iain-logan/jwt", + "installCommandHtml": "libraryDependencies += \"io.igl\" %% \"jwt\" % \"1.2.2\"" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": false, + "exp": false, + "nbf": false, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/janjaali", + "authorName": "janjaali", + "gitHubRepoPath": "janjaali/spray-jwt", + "repoUrl": "https://github.com/janjaali/spray-jwt", + "installCommandHtml": "libraryDependencies += \"com.github.janjaali\" %% \"spray-jwt\" % \"1.0.0\"" + } + ] + }, + "D": { + "uniqueClass": "d", + "image": "/img/14.svg", + "bgColor": "rgb(180, 65, 55)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/olehlong", + "authorName": "olehlong", + "gitHubRepoPath": "olehlong/jwtd", + "repoUrl": "https://github.com/olehlong/jwtd", + "installCommandHtml": "dub fetch jwtd" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/zolamk", + "authorName": "zolamk", + "gitHubRepoPath": "zolamk/jwt", + "repoUrl": "https://github.com/zolamk/jwt", + "installCommandHtml": "dub fetch jwt" + } + ] + }, + "Clojure": { + "uniqueClass": "clojure", + "image": "/img/13.svg", + "bgColor": "rgb(88, 129, 216)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": false, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/niwinz", + "authorName": "Andrey Antukh", + "gitHubRepoPath": "funcool/buddy", + "repoUrl": "https://github.com/funcool/buddy/", + "installCommandHtml": "lein: [funcool/buddy \"0.6.0\"]" + } + ] + }, + "Objective-C": { + "uniqueClass": "objective-c", + "image": "/img/20.svg", + "bgColor": "rgba(0, 0, 0, 0)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": null, + "authorName": "yourkarma & lolgear", + "gitHubRepoPath": "yourkarma/JWT", + "repoUrl": "https://github.com/yourkarma/JWT", + "installCommandHtml": "pod 'JWT'" + } + ] + }, + "Swift": { + "uniqueClass": "swift", + "image": "/img/15.svg", + "bgColor": "rgb(234, 45, 46)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": false, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/kylef", + "authorName": "Kyle Fuller", + "gitHubRepoPath": "kylef/JSONWebToken.swift", + "repoUrl": "https://github.com/kylef/JSONWebToken.swift", + "installCommandHtml": "pod 'JSONWebToken'" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/siemensikkema", + "authorName": "Siemen Sikkema", + "gitHubRepoPath": "vapor/jwt", + "repoUrl": "https://github.com/vapor/jwt", + "installCommandHtml": ".Package(url:\"https://github.com/vapor/jwt.git/", majorVersion: 1)" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/Wstunes", + "authorName": "Wstunes", + "gitHubRepoPath": "Wstunes/SwiftyJWT", + "repoUrl": "https://github.com/Wstunes/SwiftyJWT", + "installCommandHtml": "pod 'SwiftyJWT'" + } + ] + }, + "C": { + "uniqueClass": "c", + "image": "/img/16.svg", + "bgColor": "rgb(81, 128, 210)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/benmcollins", + "authorName": "benmcollins", + "gitHubRepoPath": "benmcollins/libjwt", + "repoUrl": "https://github.com/benmcollins/libjwt", + "installCommandHtml": "add-apt-repository ppa:ben-collins/libjwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/cisco/cjose", + "authorName": "linuxwolf", + "gitHubRepoPath": "cisco/cjose", + "repoUrl": "https://github.com/cisco/cjose", + "installCommandHtml": "go get github.com/cisco/cjose" + } + ] + }, + "C++": { + "uniqueClass": "cpp", + "image": "/img/26.svg", + "bgColor": "rgb(0, 89, 156)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/troian", + "authorName": "Artur Troian", + "gitHubRepoPath": "troian/josepp", + "repoUrl": "https://github.com/troian/josepp", + "installCommandHtml": "git clone https://github.com/troian/josepp" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/Thalhammer", + "authorName": "Dominik Thalhammer", + "gitHubRepoPath": "Thalhammer/jwt-cpp", + "repoUrl": "https://github.com/Thalhammer/jwt-cpp", + "installCommandHtml": "git clone https://github.com/Thalhammer/jwt-cpp" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/arun11299", + "authorName": "Arun Muralidharan", + "gitHubRepoPath": "arun11299/cpp-jwt", + "repoUrl": "https://github.com/arun11299/cpp-jwt", + "installCommandHtml": "git clone https://github.com/arun11299/cpp-jwt" + } + ] + }, + "kdb+/Q": { + "uniqueClass": "q", + "image": "/img/q.svg", + "bgColor": "rgb(102, 102, 102)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/tjcelaya", + "authorName": "tjcelaya", + "gitHubRepoPath": "tjcelaya/jwt.q", + "repoUrl": "https://github.com/tjcelaya/jwt.q", + "installCommandHtml": "git clone https://github.com/tjcelaya/jwt.q" + } + ] + }, + "Delphi": { + "uniqueClass": "delphi", + "image": "/img/17.svg", + "bgColor": "rgb(227, 28, 35)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/paolo-rossi", + "authorName": "Paolo Rossi", + "gitHubRepoPath": "paolo-rossi/delphi-jose-jwt", + "repoUrl": "https://github.com/paolo-rossi/delphi-jose-jwt", + "installCommandHtml": "git clone https://github.com/paolo-rossi/delphi-jose-jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": false, + "hs512": false, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": true, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/synopse", + "authorName": "Synopse", + "gitHubRepoPath": "synopse/mORMot", + "repoUrl": "https://github.com/synopse/mORMot", + "installCommandHtml": "git clone https://github.com/synopse/mORMot" + } + ] + }, + "PHP": { + "uniqueClass": "php", + "image": "/img/5.svg", + "bgColor": "rgb(119, 123, 180)", + "libs": [ + { + "minimumVersion": "2.0.0", + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/firebase", + "authorName": "Firebase", + "gitHubRepoPath": "firebase/php-jwt", + "repoUrl": "https://github.com/firebase/php-jwt", + "installCommandHtml": "composer require firebase/php-jwt" + }, + { + "minimumVersion": "3.0.0", + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/lcobucci", + "authorName": "Luís Cobucci", + "gitHubRepoPath": "lcobucci/jwt", + "repoUrl": "https://github.com/lcobucci/jwt", + "installCommandHtml": "composer require lcobucci/jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/emarref", + "authorName": "Emarref", + "gitHubRepoPath": "emarref/jwt", + "repoUrl": "https://github.com/emarref/jwt", + "installCommandHtml": "composer require emarref/jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/Spomky-Labs/jose", + "authorName": "Spomky", + "gitHubRepoPath": "Spomky-Labs/jose", + "repoUrl": "https://github.com/Spomky-Labs/jose", + "installCommandHtml": "composer require spomky-labs/jose" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/nov", + "authorName": "Nov Matake", + "gitHubRepoPath": "nov/jose-php", + "repoUrl": "https://github.com/nov/jose-php", + "installCommandHtml": "composer require gree/jose" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/Spomky", + "authorName": "Spomky", + "gitHubRepoPath": "web-token/jwt-framework", + "repoUrl": "https://github.com/web-token/jwt-framework", + "installCommandHtml": "composer require web-token/jwt-framework" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": false, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/vaibhavpandeyvpz", + "authorName": "Vaibhav Pandey", + "gitHubRepoPath": "vaibhavpandeyvpz/jweety", + "repoUrl": "https://github.com/vaibhavpandeyvpz/jweety", + "installCommandHtml": "composer require vaibhavpandeyvpz/jweety" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/lindelius", + "authorName": "Tom Lindelius", + "gitHubRepoPath": "lindelius/php-jwt", + "repoUrl": "https://github.com/lindelius/php-jwt", + "installCommandHtml": "composer require lindelius/php-jwt" + } + ] + }, + "Crystal": { + "uniqueClass": "crystal", + "image": "/img/21.svg", + "bgColor": "rgb(176, 176, 176)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/greyblake", + "authorName": "Sergey Potapov", + "gitHubRepoPath": "crystal-community/jwt", + "repoUrl": "https://github.com/crystal-community/jwt", + "installCommandHtml": "git clone https://github.com/crystal-community/jwt.git" + } + ] + }, + "1C": { + "uniqueClass": "_1c", + "image": "/img/22.svg", + "bgColor": "rgb(251, 197, 61)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": false, + "hs512": false, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/pintov", + "authorName": "Vasily Pintov", + "gitHubRepoPath": "pintov/1c-jwt", + "repoUrl": "https://github.com/pintov/1c-jwt", + "installCommandHtml": "git clone https://github.com/pintov/1c-jwt" + } + ] + }, + "PostgreSQL": { + "uniqueClass": "postgresql", + "image": "/img/25.svg", + "bgColor": "rgb(51, 103, 145)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/michelp", + "authorName": "Michel Pelletier", + "gitHubRepoPath": "michelp/pgjwt", + "repoUrl": "https://github.com/michelp/pgjwt", + "installCommandHtml": "CREATE EXTENSION pgjwt;" + } + ] + } +} \ No newline at end of file diff --git a/views/website/libraries/delphi.pug b/views/website/libraries/delphi.pug deleted file mode 100644 index 8c2100c2..00000000 --- a/views/website/libraries/delphi.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Delphi paolo-rossi/delphi-jose-jwt -article.jwt-delphi.delphi.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/17.svg') - h3 Delphi - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/paolo-rossi') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Paolo Rossi - span.stars(data-repo='paolo-rossi/delphi-jose-jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/paolo-rossi/delphi-jose-jwt') View Repo - - .panel-footer - code git clone https://github.com/paolo-rossi/delphi-jose-jwt diff --git a/views/website/libraries/delphi2.pug b/views/website/libraries/delphi2.pug deleted file mode 100644 index 8bbfd5fb..00000000 --- a/views/website/libraries/delphi2.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Delphi https://github.com/synopse/mORMot -article.jwt-delphi.delphi.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/17.svg') - h3 Delphi - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-501 - | HS384 - p - i.icon-budicon-501 - | HS512 - p - i.icon-budicon-501 - | RS256 - p - i.icon-budicon-501 - | RS384 - p - i.icon-budicon-501 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/synopse') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Synopse - span.stars(data-repo='synopse/mORMot', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/synopse/mORMot') View Repo - - .panel-footer - code git clone https://github.com/synopse/mORMot diff --git a/views/website/libraries/elixir.pug b/views/website/libraries/elixir.pug deleted file mode 100644 index 13c7f0b6..00000000 --- a/views/website/libraries/elixir.pug +++ /dev/null @@ -1,83 +0,0 @@ -// Elixir garyf/json_web_token_ex -article.jwt-elixir.elixir.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/18.svg') - h3 Elixir - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Fleshman - span.stars(data-repo='garyf/json_web_token_ex', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/garyf/json_web_token_ex') View Repo - - .panel-footer - code defp deps, do: [{:json_web_token, "~> 0.2.5"}] diff --git a/views/website/libraries/elixir2.pug b/views/website/libraries/elixir2.pug deleted file mode 100644 index 2d00985c..00000000 --- a/views/website/libraries/elixir2.pug +++ /dev/null @@ -1,83 +0,0 @@ -// Elixir bryanjos/joken -article.jwt-elixir.elixir.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/18.svg') - h3 Elixir - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | bryanjos - span.stars(data-repo='bryanjos/joken', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/bryanjos/joken') View Repo - - .panel-footer - code defp deps, do: [{:joken, "~> 1.2"}] diff --git a/views/website/libraries/elixir3.pug b/views/website/libraries/elixir3.pug deleted file mode 100644 index 7d44fa9b..00000000 --- a/views/website/libraries/elixir3.pug +++ /dev/null @@ -1,83 +0,0 @@ -// Elixir hassox/guardian -article.jwt-elixir.elixir.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/18.svg') - h3 Elixir - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | hassox - span.stars(data-repo='ueberauth/guardian', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/ueberauth/guardian') View Repo - - .panel-footer - code defp deps, do: [{:guardian, "~> 0.11.1"}] diff --git a/views/website/libraries/erlang.pug b/views/website/libraries/erlang.pug deleted file mode 100644 index 751969b3..00000000 --- a/views/website/libraries/erlang.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Erlang emedia-project/jwerl -article.jwt-erlang.erlang.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/27.svg') - h3 Erlang - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/glejeune') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Gregoire Lejeune - span.stars(data-repo='emedia-project/jwerl', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/emedia-project/jwerl') View Repo - - .panel-footer - code git clone https://github.com/emedia-project/jwerl.git diff --git a/views/website/libraries/go.pug b/views/website/libraries/go.pug deleted file mode 100644 index 7d3c5007..00000000 --- a/views/website/libraries/go.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Go dgrijalva/jwt-go -article.jwt-go.go.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/8.svg') - h3 Go - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/dgrijalva') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | dgrijalva - span.stars(data-repo='dgrijalva/jwt-go', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/dgrijalva/jwt-go') View Repo - - .panel-footer - code go get github.com/dgrijalva/jwt-go diff --git a/views/website/libraries/go2.pug b/views/website/libraries/go2.pug deleted file mode 100644 index 070148c7..00000000 --- a/views/website/libraries/go2.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Go dvsekhvalnov/jose2go -article.jwt-go.go.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/8.svg') - h3 Go - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/dvsekhvalnov/jose2go') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | DV - span.stars(data-repo='dvsekhvalnov/jose2go', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/dvsekhvalnov/jose2go') View Repo - - .panel-footer - code go get github.com/dvsekhvalnov/jose2go diff --git a/views/website/libraries/go3.pug b/views/website/libraries/go3.pug deleted file mode 100644 index 8ba4f0d8..00000000 --- a/views/website/libraries/go3.pug +++ /dev/null @@ -1,86 +0,0 @@ -// Go SermoDigital/jose -article.jwt-go.go.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/8.svg') - h3 Go - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/SermoDigital/jose') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | SermoDigital - span.stars(data-repo='SermoDigital/jose', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/SermoDigital/jose') View Repo - - .panel-footer - code - | go get - a(href='https://github.com/SermoDigital/jose') github.com/SermoDigital/jose diff --git a/views/website/libraries/go4.pug b/views/website/libraries/go4.pug deleted file mode 100644 index 4b04b3e1..00000000 --- a/views/website/libraries/go4.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Go robbert229/jwt -article.jwt-go.go.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/8.svg') - h3 Go - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-501 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-501 - | RS256 - p - i.icon-budicon-501 - | RS384 - p - i.icon-budicon-501 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/robbert229') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | robbert229 - span.stars(data-repo='robbert229/jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/robbert229/jwt') View Repo - - .panel-footer - code go get github.com/robbert229/jwt diff --git a/views/website/libraries/go5.pug b/views/website/libraries/go5.pug deleted file mode 100644 index f9aec680..00000000 --- a/views/website/libraries/go5.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Go square/go-jose -article.jwt-go.go.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/8.svg') - h3 Go - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/square') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | DV - span.stars(data-repo='square/go-jose', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/square/go-jose') View Repo - - .panel-footer - code go get github.com/square/go-jose diff --git a/views/website/libraries/go6.pug b/views/website/libraries/go6.pug deleted file mode 100644 index d248a9b3..00000000 --- a/views/website/libraries/go6.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Go lestrrat/go-jwx -article.jwt-go.go.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/8.svg') - h3 Go - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/lestrrat') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | lestrrat - span.stars(data-repo='lestrrat/go-jwx', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/lestrrat/go-jwx') View Repo - - .panel-footer - code go get github.com/lestrrat/go-jwx diff --git a/views/website/libraries/go7.pug b/views/website/libraries/go7.pug deleted file mode 100644 index 37b40657..00000000 --- a/views/website/libraries/go7.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Go adam-hanna/jwt-auth -article.jwt-go.go.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/8.svg') - h3 Go - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/adam-hanna') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | adam-hanna - span.stars(data-repo='adam-hanna/jwt-auth', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/adam-hanna/jwt-auth') View Repo - - .panel-footer - code go get github.com/adam-hanna/jwt-auth diff --git a/views/website/libraries/go8.pug b/views/website/libraries/go8.pug deleted file mode 100644 index 13f7806d..00000000 --- a/views/website/libraries/go8.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Go nickvellios/gojwt -article.jwt-go.go.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/8.svg') - h3 Go - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-501 - | HS384 - p - i.icon-budicon-501 - | HS512 - p - i.icon-budicon-501 - | RS256 - p - i.icon-budicon-501 - | RS384 - p - i.icon-budicon-501 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/nickvellios') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | nickvellios - span.stars(data-repo='nickvellios/gojwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/nickvellios/gojwt') View Repo - - .panel-footer - code go get github.com/nickvellios/gojwt diff --git a/views/website/libraries/go9.pug b/views/website/libraries/go9.pug deleted file mode 100644 index 9b61401d..00000000 --- a/views/website/libraries/go9.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Go gbrlsnchs/jwt -article.jwt-go.go.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/8.svg') - h3 Go - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/gbrlsnchs') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | gbrlsnchs - span.stars(data-repo='gbrlsnchs/jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/gbrlsnchs/jwt') View Repo - - .panel-footer - code go get github.com/gbrlsnchs/jwt diff --git a/views/website/libraries/groovy.pug b/views/website/libraries/groovy.pug deleted file mode 100644 index cb641961..00000000 --- a/views/website/libraries/groovy.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Groovy kaleidos/grails-security-stateless -article.jwt-groovy.groovy.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/24.svg') - h3 Groovy - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-501 - | HS384 - p - i.icon-budicon-501 - | HS512 - p - i.icon-budicon-501 - | RS256 - p - i.icon-budicon-501 - | RS384 - p - i.icon-budicon-501 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/kaleidos') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Kaleidos - span.stars(data-repo='kaleidos/grails-security-stateless', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/kaleidos/grails-security-stateless') View Repo - - .panel-footer - code compile "org.grails.plugins:security-stateless:0.0.9" diff --git a/views/website/libraries/haskell.pug b/views/website/libraries/haskell.pug deleted file mode 100644 index 60cd5705..00000000 --- a/views/website/libraries/haskell.pug +++ /dev/null @@ -1,82 +0,0 @@ -// Haskell ssaasen/haskell-jwt -article.jwt-haskell.haskell.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/9.svg') - h3 Haskell - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-501 - | HS384 - p - i.icon-budicon-501 - | HS512 - p - i.icon-budicon-501 - | RS256 - p - i.icon-budicon-501 - | RS384 - p - i.icon-budicon-501 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://bitbucket.org/ssaasen') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Stefan Saasen - .repository - i.icon-1392070209-icon-social-github - a(href='https://bitbucket.org/ssaasen/haskell-jwt') View Repo - - .panel-footer - code cabal install jwt \ No newline at end of file diff --git a/views/website/libraries/haskell2.pug b/views/website/libraries/haskell2.pug deleted file mode 100644 index df9ea762..00000000 --- a/views/website/libraries/haskell2.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Haskell frasertweedale/hs-jose -article.jwt-haskell.haskell.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/9.svg') - h3 Haskell - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/frasertweedale') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Fraser Tweedale - span.stars(data-repo='frasertweedale/hs-jose', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/frasertweedale/hs-jose') View Repo - - .panel-footer - code cabal install jose diff --git a/views/website/libraries/haxe.pug b/views/website/libraries/haxe.pug deleted file mode 100644 index 7d1fcf7d..00000000 --- a/views/website/libraries/haxe.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Haxe kevinresol/jsonwebtoken -article.jwt-haxe.haxe.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/23.svg') - h3 Haxe - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-501 - | HS384 - p - i.icon-budicon-501 - | HS512 - p - i.icon-budicon-501 - | RS256 - p - i.icon-budicon-501 - | RS384 - p - i.icon-budicon-501 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/kevinresol') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Kevin Leung - span.stars(data-repo='kevinresol/jsonwebtoken', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/kevinresol/jsonwebtoken') View Repo - - .panel-footer - code haxelib install jsonwebtoken diff --git a/views/website/libraries/java.pug b/views/website/libraries/java.pug deleted file mode 100644 index 602330ce..00000000 --- a/views/website/libraries/java.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Java Auth0 -article.jwt-java.java.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/3.svg') - h3 Java - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/auth0') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Auth0 - span.stars(data-repo='auth0/java-jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/auth0/java-jwt') View Repo - - .panel-footer - code maven: com.auth0 / java-jwt / 3.3.0 diff --git a/views/website/libraries/java2.pug b/views/website/libraries/java2.pug deleted file mode 100644 index 24ef1309..00000000 --- a/views/website/libraries/java2.pug +++ /dev/null @@ -1,82 +0,0 @@ -// Java jose4j -article.jwt-java.java.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/3.svg') - h3 Java - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://twitter.com/__b_c') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Brian Campbell - .repository - i.icon-1392070209-icon-social-github - a(href='https://bitbucket.org/b_c/jose4j') View Repo - - .panel-footer - code maven: org.bitbucket.b_c / jose4j / 0.6.3 diff --git a/views/website/libraries/java3.pug b/views/website/libraries/java3.pug deleted file mode 100644 index a54458a2..00000000 --- a/views/website/libraries/java3.pug +++ /dev/null @@ -1,82 +0,0 @@ -// Java connect2id -article.jwt-java.java.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/3.svg') - h3 Java - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/connect2id') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | connect2id - .repository - i.icon-1392070209-icon-social-github - a(href='https://bitbucket.org/connect2id/nimbus-jose-jwt') View Repo - - .panel-footer - code maven: com.nimbusds / nimbus-jose-jwt / 5.7 diff --git a/views/website/libraries/java4.pug b/views/website/libraries/java4.pug deleted file mode 100644 index 7bb45d99..00000000 --- a/views/website/libraries/java4.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Java JJWT -article.jwt-java.java.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/3.svg') - h3 Java - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://twitter.com/lhazlewood') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Les Hazlewood - span.stars(data-repo='jwtk/jjwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/jwtk/jjwt') View Repo - - .panel-footer - code maven: io.jsonwebtoken / jjwt / 0.9.0 diff --git a/views/website/libraries/java5.pug b/views/website/libraries/java5.pug deleted file mode 100644 index 16f69f79..00000000 --- a/views/website/libraries/java5.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Java connect2id -article.jwt-java.java.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/3.svg') - h3 Java - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/inversoft') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Inversoft - span.stars(data-repo='inversoft/prime-jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/inversoft/prime-jwt') View Repo - - .panel-footer - code maven: com.inversoft / prime-jwt / 1.3.0 diff --git a/views/website/libraries/java6.pug b/views/website/libraries/java6.pug deleted file mode 100644 index e2d943f8..00000000 --- a/views/website/libraries/java6.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Java Vert.x -article.jwt-java.java.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/3.svg') - h3 Java - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/vert-x3') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Vert.x - span.stars(data-repo='vert-x3/vertx-auth', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/vert-x3/vertx-auth') View Repo - - .panel-footer - code maven: io.vertx / vertx-auth-jwt / 3.5.1 diff --git a/views/website/libraries/js.pug b/views/website/libraries/js.pug deleted file mode 100644 index 7f94a30b..00000000 --- a/views/website/libraries/js.pug +++ /dev/null @@ -1,88 +0,0 @@ -// Javascript kjur/jsjws -article.jwt-js.js.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/6.svg') - h3 JavaScript - .panel-wrap(data-content) - .version - p Minimum Version 3.2.0 - a(href='https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/', target='_blank') - img(src='http://github.com/img/ico_question.svg') - .panel-body.mversion - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/kjur') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Kenji Urushima - span.stars(data-repo='kjur/jsrsasign', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/kjur/jsrsasign') View Repo - - .panel-footer - code npm install jsrsasign diff --git a/views/website/libraries/js2.pug b/views/website/libraries/js2.pug deleted file mode 100644 index cb15aeeb..00000000 --- a/views/website/libraries/js2.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Javascript square/js-jose -article.jwt-js.js.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/6.svg') - h3 JavaScript - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/square') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Square, Inc. - span.stars(data-repo='square/js-jose', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/square/js-jose') View Repo - - .panel-footer - code npm install jose-jwe-jws diff --git a/views/website/libraries/lua.pug b/views/website/libraries/lua.pug deleted file mode 100644 index 97d66a9d..00000000 --- a/views/website/libraries/lua.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Lua (openresty) SkyLothar/lua-resty-jwt -article.jwt-lua.lua.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/11.svg') - h3 Lua - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-501 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-501 - | RS384 - p - i.icon-budicon-501 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/SkyLothar') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | SkyLothar - span.stars(data-repo='SkyLothar/lua-resty-jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/SkyLothar/lua-resty-jwt') View Repo - - .panel-footer - code git clone https://github.com/SkyLothar/lua-resty-jwt.git diff --git a/views/website/libraries/net.pug b/views/website/libraries/net.pug deleted file mode 100644 index 34e4d7e5..00000000 --- a/views/website/libraries/net.pug +++ /dev/null @@ -1,86 +0,0 @@ -// .NET System.IdentityModel.Tokens.Jwt -article.jwt-net.net.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/1.svg') - h3 .NET - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Microsoft - span.stars(data-repo='AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/MSOpenTech/azure-activedirectory-identitymodel-extensions-for-dotnet') View Repo - - .panel-footer - code - | Install-Package - br - a(href='https://www.nuget.org/packages/System.IdentityModel.Tokens.Jwt/') System.IdentityModel.Tokens.Jwt diff --git a/views/website/libraries/net2.pug b/views/website/libraries/net2.pug deleted file mode 100644 index 3839d098..00000000 --- a/views/website/libraries/net2.pug +++ /dev/null @@ -1,87 +0,0 @@ -// .NET json-jwt -article.jwt-net.net.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/1.svg') - h3 .NET - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/dvsekhvalnov/jose-jwt') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | DV - span.stars(data-repo='dvsekhvalnov/jose-jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/dvsekhvalnov/jose-jwt') View Repo - - .panel-footer - code - | Install-Package - br - a(href='http://www.nuget.org/packages/jose-jwt/') jose-jwt \ No newline at end of file diff --git a/views/website/libraries/netrt.pug b/views/website/libraries/netrt.pug deleted file mode 100644 index 961bd587..00000000 --- a/views/website/libraries/netrt.pug +++ /dev/null @@ -1,87 +0,0 @@ -// .NET json-jwt -article.jwt-net.net.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/1.svg') - h3 .NET (RT) - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/dvsekhvalnov/jose-rt') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | DV - span.stars(data-repo='dvsekhvalnov/jose-rt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/dvsekhvalnov/jose-rt') View Repo - - .panel-footer - code - | Install-Package - br - a(href='http://www.nuget.org/packages/jose-rt/') jose-rt \ No newline at end of file diff --git a/views/website/libraries/node.pug b/views/website/libraries/node.pug deleted file mode 100644 index ecc7872e..00000000 --- a/views/website/libraries/node.pug +++ /dev/null @@ -1,88 +0,0 @@ -// Node.js jsonwebtoken -article.jwt-node.node.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/2.svg') - h3 Node.js - .panel-wrap(data-content) - .version - p Minimum Version 4.2.2 - a(href='https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/', target='_blank') - img(src='http://github.com/img/ico_question.svg') - .panel-body.mversion - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/auth0') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Auth0 - span.stars(data-repo='auth0/node-jsonwebtoken', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/auth0/node-jsonwebtoken') View Repo - - .panel-footer - code npm install jsonwebtoken diff --git a/views/website/libraries/objective-c.pug b/views/website/libraries/objective-c.pug deleted file mode 100644 index 2f32b404..00000000 --- a/views/website/libraries/objective-c.pug +++ /dev/null @@ -1,83 +0,0 @@ -// Objective-C yourkarma/jwt -article.jwt-objective-c.objective-c.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/20.svg') - h3 Objective-C - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | yourkarma & lolgear - span.stars(data-repo='yourkarma/JWT', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/yourkarma/JWT') View Repo - - .panel-footer - code pod 'JWT' diff --git a/views/website/libraries/perl5.pug b/views/website/libraries/perl5.pug deleted file mode 100644 index 070fb5a4..00000000 --- a/views/website/libraries/perl5.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Perl DCIT/perl-Crypt-JWT -article.jwt-perl.perl.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/19.svg') - h3 Perl - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/DCIT') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Karel Miko - span.stars(data-repo='DCIT/perl-Crypt-JWT', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/DCIT/perl-Crypt-JWT') View Repo - - .panel-footer - code cpanm Crypt::JWT diff --git a/views/website/libraries/php.pug b/views/website/libraries/php.pug deleted file mode 100644 index 249788cd..00000000 --- a/views/website/libraries/php.pug +++ /dev/null @@ -1,88 +0,0 @@ -// PHP firebase/php-jwt -article.jwt-php.php.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/5.svg') - h3 PHP - .panel-wrap(data-content) - .version - p Minimum Version 2.0.0 - a(href='https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/', target='_blank') - img(src='http://github.com/img/ico_question.svg') - .panel-body.mversion - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-501 - | RS384 - p - i.icon-budicon-501 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/firebase') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Firebase - span.stars(data-repo='firebase/php-jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/firebase/php-jwt') View Repo - - .panel-footer - code composer require firebase/php-jwt diff --git a/views/website/libraries/php3.pug b/views/website/libraries/php3.pug deleted file mode 100644 index 7d8a2848..00000000 --- a/views/website/libraries/php3.pug +++ /dev/null @@ -1,88 +0,0 @@ -// PHP lcobucci/jwt -article.jwt-php.php.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/5.svg') - h3 PHP - .panel-wrap(data-content) - .version - p Minimum Version 3.0.0 - a(href='https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/', target='_blank') - img(src='http://github.com/img/ico_question.svg') - .panel-body.mversion - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/lcobucci') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Luís Cobucci - span.stars(data-repo='lcobucci/jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/lcobucci/jwt') View Repo - - .panel-footer - code composer require lcobucci/jwt diff --git a/views/website/libraries/php4.pug b/views/website/libraries/php4.pug deleted file mode 100644 index 4741eebd..00000000 --- a/views/website/libraries/php4.pug +++ /dev/null @@ -1,84 +0,0 @@ -// PHP emarref/jwt -article.jwt-php.php.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/5.svg') - h3 PHP - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/emarref') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Emarref - span.stars(data-repo='emarref/jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/emarref/jwt') View Repo - - .panel-footer - code composer require emarref/jwt diff --git a/views/website/libraries/php5.pug b/views/website/libraries/php5.pug deleted file mode 100644 index ec91005c..00000000 --- a/views/website/libraries/php5.pug +++ /dev/null @@ -1,84 +0,0 @@ -// PHP spomky-labs/jose -article.jwt-php.php.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/5.svg') - h3 PHP - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/Spomky-Labs/jose') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Spomky - span.stars(data-repo='Spomky-Labs/jose', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/Spomky-Labs/jose') View Repo - - .panel-footer - code composer require spomky-labs/jose diff --git a/views/website/libraries/php6.pug b/views/website/libraries/php6.pug deleted file mode 100644 index 05c77960..00000000 --- a/views/website/libraries/php6.pug +++ /dev/null @@ -1,84 +0,0 @@ -// PHP gree/jose -article.jwt-php.php.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/5.svg') - h3 PHP - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/nov') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Nov Matake - span.stars(data-repo='nov/jose-php', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/nov/jose-php') View Repo - - .panel-footer - code composer require gree/jose diff --git a/views/website/libraries/php7.pug b/views/website/libraries/php7.pug deleted file mode 100644 index da11c6c8..00000000 --- a/views/website/libraries/php7.pug +++ /dev/null @@ -1,84 +0,0 @@ -// PHP web-token/jwt-framework -article.jwt-php.php.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/5.svg') - h3 PHP - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/Spomky') - i.icon-budicon-333(data-toggle='tooltip', title='Spomky', data-original-title='Maintainer') - | Spomky - span.stars(data-repo='web-token/jwt-framework', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/web-token/jwt-framework') View Repo - - .panel-footer - code composer require web-token/jwt-framework diff --git a/views/website/libraries/php8.pug b/views/website/libraries/php8.pug deleted file mode 100644 index d0e0842e..00000000 --- a/views/website/libraries/php8.pug +++ /dev/null @@ -1,84 +0,0 @@ -// PHP vaibhavpandeyvpz/jweety -article.jwt-php.php.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/5.svg') - h3 PHP - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-501 - | RS256 - p - i.icon-budicon-501 - | RS384 - p - i.icon-budicon-501 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/vaibhavpandeyvpz') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Vaibhav Pandey - span.stars(data-repo='vaibhavpandeyvpz/jweety', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/vaibhavpandeyvpz/jweety') View Repo - - .panel-footer - code composer require vaibhavpandeyvpz/jweety diff --git a/views/website/libraries/php9.pug b/views/website/libraries/php9.pug deleted file mode 100644 index 9e77bf9a..00000000 --- a/views/website/libraries/php9.pug +++ /dev/null @@ -1,84 +0,0 @@ -// PHP lindelius/php-jwt -article.jwt-php.php.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/5.svg') - h3 PHP - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/lindelius') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Tom Lindelius - span.stars(data-repo='lindelius/php-jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/lindelius/php-jwt') View Repo - - .panel-footer - code composer require lindelius/php-jwt diff --git a/views/website/libraries/postgresql.pug b/views/website/libraries/postgresql.pug deleted file mode 100644 index a570d162..00000000 --- a/views/website/libraries/postgresql.pug +++ /dev/null @@ -1,84 +0,0 @@ -// PostgreSQL michelp/pgjwt -article.jwt-postgresql.postgresql.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/25.svg') - h3 PostgreSQL - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-501 - | RS256 - p - i.icon-budicon-501 - | RS384 - p - i.icon-budicon-501 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/michelp') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Michel Pelletier - span.stars(data-repo='michelp/pgjwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/michelp/pgjwt') View Repo - - .panel-footer - code CREATE EXTENSION pgjwt; diff --git a/views/website/libraries/python.pug b/views/website/libraries/python.pug deleted file mode 100644 index a9469c28..00000000 --- a/views/website/libraries/python.pug +++ /dev/null @@ -1,88 +0,0 @@ -// Python jpadilla/pyjwt -article.jwt-python.python.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/4.svg') - h3 Python - .panel-wrap(data-content) - .version - p Minimum Version 1.0.1 - a(href='https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/', target='_blank') - img(src='http://github.com/img/ico_question.svg') - .panel-body.mversion - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/jpadilla') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | José Padilla - span.stars(data-repo='jpadilla/pyjwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/jpadilla/pyjwt/') View Repo - - .panel-footer - code pip install pyjwt diff --git a/views/website/libraries/python2.pug b/views/website/libraries/python2.pug deleted file mode 100644 index d7dbba54..00000000 --- a/views/website/libraries/python2.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Python mpdavis/python-jose -article.jwt-python.python.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/4.svg') - h3 Python - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/mpdavis') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Michael Davis - span.stars(data-repo='mpdavis/python-jose', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/mpdavis/python-jose/') View Repo - - .panel-footer - code pip install python-jose diff --git a/views/website/libraries/python3.pug b/views/website/libraries/python3.pug deleted file mode 100644 index 25fb15c3..00000000 --- a/views/website/libraries/python3.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Python latchset/jwcrypto -article.jwt-python.python.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/4.svg') - h3 Python - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/simo5') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Simo Sorce - span.stars(data-repo='latchset/jwcrypto', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/latchset/jwcrypto/') View Repo - - .panel-footer - code pip install jwcrypto diff --git a/views/website/libraries/q.pug b/views/website/libraries/q.pug deleted file mode 100644 index 758639f5..00000000 --- a/views/website/libraries/q.pug +++ /dev/null @@ -1,85 +0,0 @@ -// kdb+/Q -article.jwt-q.q.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/q.svg') - h3 kdb+/Q - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-501 - | RS256 - p - i.icon-budicon-501 - | RS384 - p - i.icon-budicon-501 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/tjcelaya') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | tjcelaya - span.stars(data-repo='tjcelaya/jwt.q', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/tjcelaya/jwt.q') View Repo - - - .panel-footer - code git clone https://github.com/tjcelaya/jwt.q diff --git a/views/website/libraries/ruby.pug b/views/website/libraries/ruby.pug deleted file mode 100644 index 930b0eba..00000000 --- a/views/website/libraries/ruby.pug +++ /dev/null @@ -1,83 +0,0 @@ -// Ruby progrium/ruby-jwt -article.jwt-ruby.ruby.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/7.svg') - h3 Ruby - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Lindsay & Rudat - span.stars(data-repo='progrium/ruby-jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/progrium/ruby-jwt') View Repo - - .panel-footer - code gem install jwt diff --git a/views/website/libraries/ruby2.pug b/views/website/libraries/ruby2.pug deleted file mode 100644 index e201e4df..00000000 --- a/views/website/libraries/ruby2.pug +++ /dev/null @@ -1,83 +0,0 @@ -// Ruby garyf/json_web_token -article.jwt-ruby.ruby.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/7.svg') - h3 Ruby - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Fleshman - span.stars(data-repo='garyf/json_web_token', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/garyf/json_web_token') View Repo - - .panel-footer - code gem install json_web_token diff --git a/views/website/libraries/ruby3.pug b/views/website/libraries/ruby3.pug deleted file mode 100644 index b21c61c9..00000000 --- a/views/website/libraries/ruby3.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Ruby nov/json-jwt -article.jwt-ruby.ruby.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/7.svg') - h3 Ruby - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/nov') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Nov Matake - span.stars(data-repo='nov/json-jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/nov/json-jwt') View Repo - - .panel-footer - code gem install json-jwt diff --git a/views/website/libraries/ruby4.pug b/views/website/libraries/ruby4.pug deleted file mode 100644 index 9e878861..00000000 --- a/views/website/libraries/ruby4.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Ruby nov/json-jwt -article.jwt-ruby.ruby.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/7.svg') - h3 Ruby - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/potatosalad') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Andrew Bennett - span.stars(data-repo='potatosalad/ruby-jose', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/potatosalad/ruby-jose') View Repo - - .panel-footer - code gem install jose diff --git a/views/website/libraries/rust.pug b/views/website/libraries/rust.pug deleted file mode 100644 index 647c7671..00000000 --- a/views/website/libraries/rust.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Rust GildedHonour/rust-jwt -article.jwt-rust.rust.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/10.svg') - h3 Rust - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/GildedHonour') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | GildedHonour - span.stars(data-repo='GildedHonour/rust-jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/GildedHonour/rust-jwt') View Repo - - .panel-footer - code cargo: name = "frank_jwt" version = "*" diff --git a/views/website/libraries/rust2.pug b/views/website/libraries/rust2.pug deleted file mode 100644 index 2f379767..00000000 --- a/views/website/libraries/rust2.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Rust Keats/rust-jwt -article.jwt-rust.rust.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/10.svg') - h3 Rust - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-501 - | RS256 - p - i.icon-budicon-501 - | RS384 - p - i.icon-budicon-501 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/Keats') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Keats - span.stars(data-repo='Keats/jsonwebtoken', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/Keats/jsonwebtoken') View Repo - - .panel-footer - code cargo: name = "jsonwebtoken" version = "*" diff --git a/views/website/libraries/rust3.pug b/views/website/libraries/rust3.pug deleted file mode 100644 index de26a5b1..00000000 --- a/views/website/libraries/rust3.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Rust lawliet89/biscuit -article.jwt-rust.rust.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/10.svg') - h3 Rust - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/lawliet89') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Yong Wen Chua - span.stars(data-repo='lawliet89/biscuit', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/lawliet89/biscuit') View Repo - - .panel-footer - code Cargo.toml: biscuit = "*" diff --git a/views/website/libraries/scala.pug b/views/website/libraries/scala.pug deleted file mode 100644 index 1299fe5e..00000000 --- a/views/website/libraries/scala.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Scala jasongoodwin/authentikat-jwt -article.jwt-scala.scala.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/12.svg') - h3 Scala - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-501 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-501 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-501 - | RS256 - p - i.icon-budicon-501 - | RS384 - p - i.icon-budicon-501 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/jasongoodwin') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | jasongoodwin - span.stars(data-repo='jasongoodwin/authentikat-jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/jasongoodwin/authentikat-jwt') View Repo - - .panel-footer - code sbt: "com.jason-goodwin" %% "authentikat-jwt" % "0.4.5" diff --git a/views/website/libraries/scala2.pug b/views/website/libraries/scala2.pug deleted file mode 100644 index a1c0ae47..00000000 --- a/views/website/libraries/scala2.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Scala pauldijou/jwt-scala -article.jwt-scala.scala.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/12.svg') - h3 Scala - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/pauldijou') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | pauldijou - span.stars(data-repo='pauldijou/jwt-scala', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/pauldijou/jwt-scala') View Repo - - .panel-footer - code sbt: "pdi" %% "jwt-core" % "0.14.1" diff --git a/views/website/libraries/scala3.pug b/views/website/libraries/scala3.pug deleted file mode 100644 index 740b964c..00000000 --- a/views/website/libraries/scala3.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Scala iain-logan/jwt -article.jwt-scala.scala.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/12.svg') - h3 Scala - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-501 - | RS384 - p - i.icon-budicon-501 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/iain-logan') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | iain-logan - span.stars(data-repo='iain-logan/jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/iain-logan/jwt') View Repo - - .panel-footer - code libraryDependencies += "io.igl" %% "jwt" % "1.2.2" diff --git a/views/website/libraries/scala4.pug b/views/website/libraries/scala4.pug deleted file mode 100644 index 6a5be1f3..00000000 --- a/views/website/libraries/scala4.pug +++ /dev/null @@ -1,85 +0,0 @@ - -// Scala com.github.janjaali/spray-jwt -article.jwt-scala.scala.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/12.svg') - h3 Scala - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-501 - code aud - | check - p - i.icon-budicon-501 - code exp - | check - p - i.icon-budicon-501 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/janjaali') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | janjaali - span.stars(data-repo='janjaali/spray-jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/janjaali/spray-jwt') View Repo - - .panel-footer - code libraryDependencies += "com.github.janjaali" %% "spray-jwt" % "1.0.0" diff --git a/views/website/libraries/support/getLibsData.js b/views/website/libraries/support/getLibsData.js new file mode 100644 index 00000000..ad848ed9 --- /dev/null +++ b/views/website/libraries/support/getLibsData.js @@ -0,0 +1,88 @@ +function getLibs() { + + const libraries = document.querySelectorAll('.libraries-sv article'); + + const result = {}; + Array.prototype.forEach.call(libraries, lib => { + try { + const uniqueClass = lib.classList.item(1); + + let image = lib.querySelector('img').src; + image = image.substr(image.indexOf('/img')); + + const bgColor = window.getComputedStyle(lib.querySelector('h3')) + .getPropertyValue('background-color'); + const langName = lib.querySelector('h3').firstChild.textContent; + + if(!result[langName]) { + result[langName] = { + uniqueClass: uniqueClass, + image: image, + bgColor: bgColor, + libs: [] + }; + } + + const r = {}; + + const minimumVersionElement = lib.querySelector('.version p'); + r.minimumVersion = minimumVersionElement ? + minimumVersionElement.firstChild.textContent : null; + if(r.minimumVersion) { + r.minimumVersion = r.minimumVersion.substr('Minimum Version '.length); + } + + r.support = {}; + const panelBodyChildren = lib.querySelector('.panel-body').children; + + let orderedKeys = ['sign', 'verify', 'iss', + 'sub', 'aud', 'exp', + 'nbf', 'iat', 'jti']; + + for(let i = 0; i < orderedKeys.length; ++i) { + r.support[orderedKeys[i]] = + panelBodyChildren[0].children[i] + .firstChild + .classList + .contains('icon-budicon-500'); + } + + orderedKeys = ['hs256', 'hs384', 'hs512', + 'rs256', 'rs384', 'rs512', + 'es256', 'es384', 'es512']; + + for(let i = 0; i < orderedKeys.length; ++i) { + r.support[orderedKeys[i]] = + panelBodyChildren[1].children[i] + .firstChild + .classList + .contains('icon-budicon-500'); + } + + const maintainerA = lib.querySelector('.maintainer a'); + if(maintainerA) { + r.authorUrl = lib.querySelector('.maintainer a').href; + r.authorName = lib.querySelector('.maintainer a').textContent; + } else { + r.authorUrl = null; + r.authorName = lib.querySelector('.maintainer').childNodes[1].textContent; + } + + const spanStarsElement = lib.querySelector('.maintainer span'); + r.gitHubRepoPath = spanStarsElement ? + lib.querySelector('.maintainer span').getAttribute('data-repo') : + null; + + r.repoUrl = lib.querySelector('.repository a').href; + r.installCommandHtml = lib.querySelector('.panel-footer code').innerHTML; + + result[langName].libs.push(r); + } catch(e) { + console.log(e); + console.log(lib); + } + }); + + return result; + +} diff --git a/views/website/libraries/swift.pug b/views/website/libraries/swift.pug deleted file mode 100644 index 69ffa484..00000000 --- a/views/website/libraries/swift.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Swift kylef/JSONWebToken.swift -article.jwt-scala.swift.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/15.svg') - h3 Swift - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-501 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-501 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-501 - | RS256 - p - i.icon-budicon-501 - | RS384 - p - i.icon-budicon-501 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/kylef') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Kyle Fuller - span.stars(data-repo='kylef/JSONWebToken.swift', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/kylef/JSONWebToken.swift') View Repo - - .panel-footer - code pod 'JSONWebToken' diff --git a/views/website/libraries/swift2.pug b/views/website/libraries/swift2.pug deleted file mode 100644 index 6035e155..00000000 --- a/views/website/libraries/swift2.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Swift vapor/jwt -article.jwt-scala.swift.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/15.svg') - h3 Swift - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-500 - | ES256 - p - i.icon-budicon-500 - | ES384 - p - i.icon-budicon-500 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/siemensikkema') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Siemen Sikkema - span.stars(data-repo='vapor/jwt', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/vapor/jwt') View Repo - - .panel-footer - code .Package(url:"https://github.com/vapor/jwt.git", majorVersion: 1) diff --git a/views/website/libraries/swift3.pug b/views/website/libraries/swift3.pug deleted file mode 100644 index 738c5d99..00000000 --- a/views/website/libraries/swift3.pug +++ /dev/null @@ -1,84 +0,0 @@ -// Swift Wstunes/SwiftyJWT -article.jwt-scala.swift.accordion(data-accordion) - .panel-heading(data-control) - img(src='http://github.com/img/15.svg') - h3 Swift - .panel-wrap(data-content) - .panel-body - .column - p - i.icon-budicon-500 - | Sign - p - i.icon-budicon-500 - | Verify - p - i.icon-budicon-500 - code iss - | check - p - i.icon-budicon-500 - code sub - | check - p - i.icon-budicon-500 - code aud - | check - p - i.icon-budicon-500 - code exp - | check - p - i.icon-budicon-500 - code nbf - | check - p - i.icon-budicon-500 - code iat - | check - p - i.icon-budicon-500 - code jti - | check - .column - p - i.icon-budicon-500 - | HS256 - p - i.icon-budicon-500 - | HS384 - p - i.icon-budicon-500 - | HS512 - p - i.icon-budicon-500 - | RS256 - p - i.icon-budicon-500 - | RS384 - p - i.icon-budicon-500 - | RS512 - p - i.icon-budicon-501 - | ES256 - p - i.icon-budicon-501 - | ES384 - p - i.icon-budicon-501 - | ES512 - - .author-info - .maintainer - a(href='https://github.com/Wstunes') - i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') - | Wstunes - span.stars(data-repo='Wstunes/SwiftyJWT', style='display: inline;') - i.icon-budicon-466 - .repository - i.icon-1392070209-icon-social-github - a(href='https://github.com/Wstunes/SwiftyJWT') View Repo - - .panel-footer - code pod 'SwiftyJWT' diff --git a/views/website/libraries/template.pug b/views/website/libraries/template.pug new file mode 100644 index 00000000..cdfaef71 --- /dev/null +++ b/views/website/libraries/template.pug @@ -0,0 +1,93 @@ +article(data-accordion, class=`accordion ${lang.uniqueClass}`) + .panel-heading(data-control) + img(src=lang.image) + h3(style=`background-color: ${lang.bgColor}`) #{langName} + .panel-wrap(data-content) + if lib.minimumVersion + .version + p Minimum Version #{lib.minimumVersion} + a(href='https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/', target='_blank') + img(src='http://github.com/img/ico_question.svg') + div(class={ 'panel-body': true, mversion: !!lib.minimumVersion }) + .column + p + i(class=lib.support.sign ? 'icon-budicon-500' : 'icon-budicon-501') + | Sign + p + i(class=lib.support.verify ? 'icon-budicon-500' : 'icon-budicon-501') + | Verify + p + i(class=lib.support.iss ? 'icon-budicon-500' : 'icon-budicon-501') + code iss + | check + p + i(class=lib.support.sub ? 'icon-budicon-500' : 'icon-budicon-501') + code sub + | check + p + i(class=lib.support.aud ? 'icon-budicon-500' : 'icon-budicon-501') + code aud + | check + p + i(class=lib.support.exp ? 'icon-budicon-500' : 'icon-budicon-501') + code exp + | check + p + i(class=lib.support.nbf ? 'icon-budicon-500' : 'icon-budicon-501') + code nbf + | check + p + i(class=lib.support.iat ? 'icon-budicon-500' : 'icon-budicon-501') + code iat + | check + p + i(class=lib.support.jti ? 'icon-budicon-500' : 'icon-budicon-501') + code jti + | check + .column + p + i(class=lib.support.hs256 ? 'icon-budicon-500' : 'icon-budicon-501') + | HS256 + p + i(class=lib.support.hs384 ? 'icon-budicon-500' : 'icon-budicon-501') + | HS384 + p + i(class=lib.support.hs512 ? 'icon-budicon-500' : 'icon-budicon-501') + | HS512 + p + i(class=lib.support.rs256 ? 'icon-budicon-500' : 'icon-budicon-501') + | RS256 + p + i(class=lib.support.rs384 ? 'icon-budicon-500' : 'icon-budicon-501') + | RS384 + p + i(class=lib.support.rs512 ? 'icon-budicon-500' : 'icon-budicon-501') + | RS512 + p + i(class=lib.support.es256 ? 'icon-budicon-500' : 'icon-budicon-501') + | ES256 + p + i(class=lib.support.es384 ? 'icon-budicon-500' : 'icon-budicon-501') + | ES384 + p + i(class=lib.support.es512 ? 'icon-budicon-500' : 'icon-budicon-501') + | ES512 + + .author-info + .maintainer + if lib.authorUrl + a(href=lib.authorUrl) + i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') + | #{lib.authorName} + else + i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') + | #{lib.authorName} + if lib.gitHubRepoPath + span.stars(data-repo=lib.gitHubRepoPath, style='display: inline;') + i.icon-budicon-466 + .repository + i.icon-1392070209-icon-social-github + a(href=lib.repoUrl) View Repo + + .panel-footer + code !{lib.installCommandHtml} From 251f363c3049b8a12e834893f44661ebe809d5ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 28 Mar 2018 00:40:07 -0300 Subject: [PATCH 005/456] Added missing author URL for library. --- views/website/libraries/data.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/data.json b/views/website/libraries/data.json index 38ad1fe5..4e4d09af 100644 --- a/views/website/libraries/data.json +++ b/views/website/libraries/data.json @@ -26,7 +26,7 @@ "es384": true, "es512": true }, - "authorUrl": null, + "authorUrl": "https://www.microsoft.com/", "authorName": "Microsoft", "gitHubRepoPath": "AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet", "repoUrl": "https://github.com/MSOpenTech/azure-activedirectory-identitymodel-extensions-for-dotnet", From 5d57800a3890b53edcf1cda3c0f67bd5f0a3750d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 28 Mar 2018 00:40:25 -0300 Subject: [PATCH 006/456] Update README with instructions for adding or editing libraries. --- README.md | 81 ++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 78 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index f1051ca1..5154dd57 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,81 @@ [![Build Status](https://travis-ci.org/jsonwebtoken/jsonwebtoken.github.io.png?branch=master)](https://travis-ci.org/jsonwebtoken/jsonwebtoken.github.io) +### How to add a library +To add a library, simply edit the `data.json` file located at `views/website/libraries`. + +If you add a new language, you will need to provide a proper icon for it and place it in the `img` folder. + +Here's a commented example of a language + library definition. All fields must have valid values unless noted: + +```javascript +// Language name (unique) +".NET": { + + // Unique identifier that will be used as a CSS class + // for this language (only valid CSS class names). + "uniqueClass": "net", + + // The language icon, SVG format preferred, should be placed + // in /img directory. + "image": "/img/1.svg", + + // The color of header that displays the name of the language + // and the icon. This is a valid CSS color definition. + "bgColor": "rgb(42, 168, 229)", + + // An array of libraries for this language. + "libs": [ + { + // In case the library suffered from a vulnerability, the + // minimum version in which the vuln was fixed must be + // listed here. Optional (can be null). + "minimumVersion": "1.0.1", // or null + + // Supported features, true for supported, + // false for not supported. + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + + // Author URL, can be GitHub profile, personal page + // company page, etc. Can be null. + "authorUrl": "https://www.microsoft.com/", // or null + + // Author name. + "authorName": "Microsoft", + + // For the star count, this is the GitHub repository path, + // (usually user/repo). Can be null (no star count shown). + "gitHubRepoPath": "AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet", // or null + + // URL for source code. + "repoUrl": "https://github.com/MSOpenTech/azure-activedirectory-identitymodel-extensions-for-dotnet", + + // Install command, can be HTML or plain text. + "installCommandHtml": "Install-Package
System.IdentityModel.Tokens.Jwt" + } + ] +} +``` + ### How to build First, install the required dependencies: @@ -18,7 +93,9 @@ In order to build (and run) the project execute: grunt ``` -You will find the generated files in the `dist` directory. For the website, you can run a server at its root. For example: `http-server dist/website`. +You will find the generated files in the `dist` directory. For the website, you can run a server at its root. For example: `http-server dist/website`. The default `grunt` task runs a server +at [https://127.0.0.1:8000](https://127.0.0.1:8000) and watches +for changes. To run tests, execute: @@ -29,5 +106,3 @@ grunt test Look at the end of the `Gruntfile` for other common tasks. ### Happy hacking! - - From b31f002a3a6e100c3d589000ffc30e24262a48a9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 28 Mar 2018 00:44:34 -0300 Subject: [PATCH 007/456] README: use relative grunt. --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 5154dd57..3dd71294 100644 --- a/README.md +++ b/README.md @@ -90,7 +90,7 @@ npm install In order to build (and run) the project execute: ```sh -grunt +./node_modules/.bin/grunt ``` You will find the generated files in the `dist` directory. For the website, you can run a server at its root. For example: `http-server dist/website`. The default `grunt` task runs a server @@ -100,7 +100,7 @@ for changes. To run tests, execute: ``` -grunt test +./node_modules/.bin/grunt test ``` Look at the end of the `Gruntfile` for other common tasks. From d061bc4fb644569061aa448f7f33fafab83559c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 28 Mar 2018 20:30:54 -0300 Subject: [PATCH 008/456] Separate languages into their own data files. --- Gruntfile.js | 4 +- README.md | 11 +- views/website/libraries.pug | 2 +- views/website/libraries/0-.NET.json | 92 + views/website/libraries/1-Python.json | 92 + views/website/libraries/10-Groovy.json | 36 + views/website/libraries/11-Haskell.json | 64 + views/website/libraries/12-Haxe.json | 36 + views/website/libraries/13-Rust.json | 92 + views/website/libraries/14-Lua.json | 36 + views/website/libraries/15-Scala.json | 120 + views/website/libraries/16-D.json | 64 + views/website/libraries/17-Clojure.json | 36 + views/website/libraries/18-Objective-C.json | 36 + views/website/libraries/19-Swift.json | 92 + views/website/libraries/2-Node.js.json | 36 + views/website/libraries/20-C.json | 64 + views/website/libraries/21-C++.json | 92 + views/website/libraries/22-kdb+_Q.json | 36 + views/website/libraries/23-Delphi.json | 64 + views/website/libraries/24-PHP.json | 232 ++ views/website/libraries/25-Crystal.json | 36 + views/website/libraries/26-1C.json | 36 + views/website/libraries/27-PostgreSQL.json | 36 + views/website/libraries/3-Java.json | 176 ++ views/website/libraries/4-JavaScript.json | 64 + views/website/libraries/5-Perl.json | 36 + views/website/libraries/6-Ruby.json | 120 + views/website/libraries/7-Elixir.json | 92 + views/website/libraries/8-Erlang.json | 36 + views/website/libraries/9-Go.json | 260 ++ views/website/libraries/data.json | 2186 ----------------- .../libraries/support/get-languages.js | 26 + .../{getLibsData.js => get-libs-data.js} | 0 views/website/libraries/support/split-libs.js | 10 + views/website/libraries/template.pug | 2 +- 36 files changed, 2259 insertions(+), 2194 deletions(-) create mode 100644 views/website/libraries/0-.NET.json create mode 100644 views/website/libraries/1-Python.json create mode 100644 views/website/libraries/10-Groovy.json create mode 100644 views/website/libraries/11-Haskell.json create mode 100644 views/website/libraries/12-Haxe.json create mode 100644 views/website/libraries/13-Rust.json create mode 100644 views/website/libraries/14-Lua.json create mode 100644 views/website/libraries/15-Scala.json create mode 100644 views/website/libraries/16-D.json create mode 100644 views/website/libraries/17-Clojure.json create mode 100644 views/website/libraries/18-Objective-C.json create mode 100644 views/website/libraries/19-Swift.json create mode 100644 views/website/libraries/2-Node.js.json create mode 100644 views/website/libraries/20-C.json create mode 100644 views/website/libraries/21-C++.json create mode 100644 views/website/libraries/22-kdb+_Q.json create mode 100644 views/website/libraries/23-Delphi.json create mode 100644 views/website/libraries/24-PHP.json create mode 100644 views/website/libraries/25-Crystal.json create mode 100644 views/website/libraries/26-1C.json create mode 100644 views/website/libraries/27-PostgreSQL.json create mode 100644 views/website/libraries/3-Java.json create mode 100644 views/website/libraries/4-JavaScript.json create mode 100644 views/website/libraries/5-Perl.json create mode 100644 views/website/libraries/6-Ruby.json create mode 100644 views/website/libraries/7-Elixir.json create mode 100644 views/website/libraries/8-Erlang.json create mode 100644 views/website/libraries/9-Go.json delete mode 100644 views/website/libraries/data.json create mode 100644 views/website/libraries/support/get-languages.js rename views/website/libraries/support/{getLibsData.js => get-libs-data.js} (100%) create mode 100644 views/website/libraries/support/split-libs.js diff --git a/Gruntfile.js b/Gruntfile.js index 21e8347a..401478fe 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -1,4 +1,6 @@ const extensionManifest = require('./manifest.json'); +const getLanguages = + require('./views/website/libraries/support/get-languages.js'); module.exports = grunt => { grunt.loadNpmTasks('grunt-contrib-copy'); @@ -111,7 +113,7 @@ module.exports = grunt => { options: { //pretty: true, data: { - languages: require('./views/website/libraries/data.json') + languages: getLanguages() } }, files: { diff --git a/README.md b/README.md index 3dd71294..0bdc9806 100644 --- a/README.md +++ b/README.md @@ -5,15 +5,16 @@ [![Build Status](https://travis-ci.org/jsonwebtoken/jsonwebtoken.github.io.png?branch=master)](https://travis-ci.org/jsonwebtoken/jsonwebtoken.github.io) ### How to add a library -To add a library, simply edit the `data.json` file located at `views/website/libraries`. +To add a library, simply edit the right JSON file located at `views/website/libraries`. Each language gets its own file. Multiple libraries share the same language file. -If you add a new language, you will need to provide a proper icon for it and place it in the `img` folder. +To add a new language, simply add a JSON file in the same folder as the others. It will get automatically recognized. If you add a new language, you will need to provide a proper icon for it and place it in the `img` folder. -Here's a commented example of a language + library definition. All fields must have valid values unless noted: +Here's a commented example of the .NET language file (`0-.NET.json`). All fields must have valid values unless noted: ```javascript -// Language name (unique) -".NET": { +{ + // Language name (unique) + "name": ".NET", // Unique identifier that will be used as a CSS class // for this language (only valid CSS class names). diff --git a/views/website/libraries.pug b/views/website/libraries.pug index 76ef6002..86dc6d0a 100644 --- a/views/website/libraries.pug +++ b/views/website/libraries.pug @@ -23,6 +23,6 @@ section#libraries-io.libraries-jwt path(d='M16 10v28l22-14z') .libraries-sv(data-accordion-group) - each lang, langName in languages + each lang in languages each lib in lang.libs include libraries/template.pug diff --git a/views/website/libraries/0-.NET.json b/views/website/libraries/0-.NET.json new file mode 100644 index 00000000..2427e487 --- /dev/null +++ b/views/website/libraries/0-.NET.json @@ -0,0 +1,92 @@ +{ + "name": ".NET", + "uniqueClass": "net", + "image": "/img/1.svg", + "bgColor": "rgb(42, 168, 229)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://www.microsoft.com/", + "authorName": "Microsoft", + "gitHubRepoPath": "AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet", + "repoUrl": "https://github.com/MSOpenTech/azure-activedirectory-identitymodel-extensions-for-dotnet", + "installCommandHtml": "Install-Package
System.IdentityModel.Tokens.Jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/dvsekhvalnov/jose-jwt", + "authorName": "DV", + "gitHubRepoPath": "dvsekhvalnov/jose-jwt", + "repoUrl": "https://github.com/dvsekhvalnov/jose-jwt", + "installCommandHtml": "Install-Package
jose-jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/dvsekhvalnov/jose-rt", + "authorName": "DV", + "gitHubRepoPath": "dvsekhvalnov/jose-rt", + "repoUrl": "https://github.com/dvsekhvalnov/jose-rt", + "installCommandHtml": "Install-Package
jose-rt" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/1-Python.json b/views/website/libraries/1-Python.json new file mode 100644 index 00000000..1d352e1e --- /dev/null +++ b/views/website/libraries/1-Python.json @@ -0,0 +1,92 @@ +{ + "name": "Python", + "uniqueClass": "python", + "image": "/img/4.svg", + "bgColor": "rgb(55, 126, 240)", + "libs": [ + { + "minimumVersion": "1.0.1", + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": false, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/jpadilla", + "authorName": "José Padilla", + "gitHubRepoPath": "jpadilla/pyjwt", + "repoUrl": "https://github.com/jpadilla/pyjwt/", + "installCommandHtml": "pip install pyjwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/mpdavis", + "authorName": "Michael Davis", + "gitHubRepoPath": "mpdavis/python-jose", + "repoUrl": "https://github.com/mpdavis/python-jose/", + "installCommandHtml": "pip install python-jose" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/simo5", + "authorName": "Simo Sorce", + "gitHubRepoPath": "latchset/jwcrypto", + "repoUrl": "https://github.com/latchset/jwcrypto/", + "installCommandHtml": "pip install jwcrypto" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/10-Groovy.json b/views/website/libraries/10-Groovy.json new file mode 100644 index 00000000..9d72d88c --- /dev/null +++ b/views/website/libraries/10-Groovy.json @@ -0,0 +1,36 @@ +{ + "name": "Groovy", + "uniqueClass": "groovy", + "image": "/img/24.svg", + "bgColor": "rgb(99, 152, 170)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": false, + "hs512": false, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/kaleidos", + "authorName": "Kaleidos", + "gitHubRepoPath": "kaleidos/grails-security-stateless", + "repoUrl": "https://github.com/kaleidos/grails-security-stateless", + "installCommandHtml": "compile \"org.grails.plugins:security-stateless:0.0.9\"" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/11-Haskell.json b/views/website/libraries/11-Haskell.json new file mode 100644 index 00000000..bf1aa1c1 --- /dev/null +++ b/views/website/libraries/11-Haskell.json @@ -0,0 +1,64 @@ +{ + "name": "Haskell", + "uniqueClass": "haskell", + "image": "/img/9.svg", + "bgColor": "rgb(102, 102, 102)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": false, + "hs512": false, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://bitbucket.org/ssaasen", + "authorName": "Stefan Saasen", + "gitHubRepoPath": null, + "repoUrl": "https://bitbucket.org/ssaasen/haskell-jwt", + "installCommandHtml": "cabal install jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": false, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/frasertweedale", + "authorName": "Fraser Tweedale", + "gitHubRepoPath": "frasertweedale/hs-jose", + "repoUrl": "https://github.com/frasertweedale/hs-jose", + "installCommandHtml": "cabal install jose" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/12-Haxe.json b/views/website/libraries/12-Haxe.json new file mode 100644 index 00000000..11816a1e --- /dev/null +++ b/views/website/libraries/12-Haxe.json @@ -0,0 +1,36 @@ +{ + "name": "Haxe", + "uniqueClass": "haxe", + "image": "/img/23.svg", + "bgColor": "rgb(234, 130, 32)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": false, + "aud": true, + "exp": true, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": false, + "hs512": false, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/kevinresol", + "authorName": "Kevin Leung", + "gitHubRepoPath": "kevinresol/jsonwebtoken", + "repoUrl": "https://github.com/kevinresol/jsonwebtoken", + "installCommandHtml": "haxelib install jsonwebtoken" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/13-Rust.json b/views/website/libraries/13-Rust.json new file mode 100644 index 00000000..029af015 --- /dev/null +++ b/views/website/libraries/13-Rust.json @@ -0,0 +1,92 @@ +{ + "name": "Rust", + "uniqueClass": "rust", + "image": "/img/10.svg", + "bgColor": "rgb(129, 70, 38)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/GildedHonour", + "authorName": "GildedHonour", + "gitHubRepoPath": "GildedHonour/rust-jwt", + "repoUrl": "https://github.com/GildedHonour/rust-jwt", + "installCommandHtml": "cargo: name = \"frank_jwt\" version = \"*\"" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/Keats", + "authorName": "Keats", + "gitHubRepoPath": "Keats/jsonwebtoken", + "repoUrl": "https://github.com/Keats/jsonwebtoken", + "installCommandHtml": "cargo: name = \"jsonwebtoken\" version = \"*\"" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/lawliet89", + "authorName": "Yong Wen Chua", + "gitHubRepoPath": "lawliet89/biscuit", + "repoUrl": "https://github.com/lawliet89/biscuit", + "installCommandHtml": "Cargo.toml: biscuit = \"*\"" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/14-Lua.json b/views/website/libraries/14-Lua.json new file mode 100644 index 00000000..bd8bd3e8 --- /dev/null +++ b/views/website/libraries/14-Lua.json @@ -0,0 +1,36 @@ +{ + "name": "Lua", + "uniqueClass": "lua", + "image": "/img/11.svg", + "bgColor": "rgb(0, 0, 128)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": false, + "jti": false, + "hs256": true, + "hs384": false, + "hs512": true, + "rs256": true, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/SkyLothar", + "authorName": "SkyLothar", + "gitHubRepoPath": "SkyLothar/lua-resty-jwt", + "repoUrl": "https://github.com/SkyLothar/lua-resty-jwt", + "installCommandHtml": "git clone https://github.com/SkyLothar/lua-resty-jwt.git" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/15-Scala.json b/views/website/libraries/15-Scala.json new file mode 100644 index 00000000..f5e157fe --- /dev/null +++ b/views/website/libraries/15-Scala.json @@ -0,0 +1,120 @@ +{ + "name": "Scala", + "uniqueClass": "scala", + "image": "/img/12.svg", + "bgColor": "rgb(234, 45, 46)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/jasongoodwin", + "authorName": "jasongoodwin", + "gitHubRepoPath": "jasongoodwin/authentikat-jwt", + "repoUrl": "https://github.com/jasongoodwin/authentikat-jwt", + "installCommandHtml": "sbt: \"com.jason-goodwin\" %% \"authentikat-jwt\" % \"0.4.5\"" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/pauldijou", + "authorName": "pauldijou", + "gitHubRepoPath": "pauldijou/jwt-scala", + "repoUrl": "https://github.com/pauldijou/jwt-scala", + "installCommandHtml": "sbt: \"pdi\" %% \"jwt-core\" % \"0.14.1\"" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/iain-logan", + "authorName": "iain-logan", + "gitHubRepoPath": "iain-logan/jwt", + "repoUrl": "https://github.com/iain-logan/jwt", + "installCommandHtml": "libraryDependencies += \"io.igl\" %% \"jwt\" % \"1.2.2\"" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": false, + "exp": false, + "nbf": false, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/janjaali", + "authorName": "janjaali", + "gitHubRepoPath": "janjaali/spray-jwt", + "repoUrl": "https://github.com/janjaali/spray-jwt", + "installCommandHtml": "libraryDependencies += \"com.github.janjaali\" %% \"spray-jwt\" % \"1.0.0\"" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/16-D.json b/views/website/libraries/16-D.json new file mode 100644 index 00000000..e94f208d --- /dev/null +++ b/views/website/libraries/16-D.json @@ -0,0 +1,64 @@ +{ + "name": "D", + "uniqueClass": "d", + "image": "/img/14.svg", + "bgColor": "rgb(180, 65, 55)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/olehlong", + "authorName": "olehlong", + "gitHubRepoPath": "olehlong/jwtd", + "repoUrl": "https://github.com/olehlong/jwtd", + "installCommandHtml": "dub fetch jwtd" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/zolamk", + "authorName": "zolamk", + "gitHubRepoPath": "zolamk/jwt", + "repoUrl": "https://github.com/zolamk/jwt", + "installCommandHtml": "dub fetch jwt" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/17-Clojure.json b/views/website/libraries/17-Clojure.json new file mode 100644 index 00000000..c330e309 --- /dev/null +++ b/views/website/libraries/17-Clojure.json @@ -0,0 +1,36 @@ +{ + "name": "Clojure", + "uniqueClass": "clojure", + "image": "/img/13.svg", + "bgColor": "rgb(88, 129, 216)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": false, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/niwinz", + "authorName": "Andrey Antukh", + "gitHubRepoPath": "funcool/buddy", + "repoUrl": "https://github.com/funcool/buddy/", + "installCommandHtml": "lein: [funcool/buddy \"0.6.0\"]" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/18-Objective-C.json b/views/website/libraries/18-Objective-C.json new file mode 100644 index 00000000..6cd415b8 --- /dev/null +++ b/views/website/libraries/18-Objective-C.json @@ -0,0 +1,36 @@ +{ + "name": "Objective-C", + "uniqueClass": "objective-c", + "image": "/img/20.svg", + "bgColor": "#aaaaaa", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": null, + "authorName": "yourkarma & lolgear", + "gitHubRepoPath": "yourkarma/JWT", + "repoUrl": "https://github.com/yourkarma/JWT", + "installCommandHtml": "pod 'JWT'" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/19-Swift.json b/views/website/libraries/19-Swift.json new file mode 100644 index 00000000..30ac153d --- /dev/null +++ b/views/website/libraries/19-Swift.json @@ -0,0 +1,92 @@ +{ + "name": "Swift", + "uniqueClass": "swift", + "image": "/img/15.svg", + "bgColor": "rgb(234, 45, 46)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": false, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/kylef", + "authorName": "Kyle Fuller", + "gitHubRepoPath": "kylef/JSONWebToken.swift", + "repoUrl": "https://github.com/kylef/JSONWebToken.swift", + "installCommandHtml": "pod 'JSONWebToken'" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/siemensikkema", + "authorName": "Siemen Sikkema", + "gitHubRepoPath": "vapor/jwt", + "repoUrl": "https://github.com/vapor/jwt", + "installCommandHtml": ".Package(url:\"https://github.com/vapor/jwt.git/", majorVersion: 1)" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/Wstunes", + "authorName": "Wstunes", + "gitHubRepoPath": "Wstunes/SwiftyJWT", + "repoUrl": "https://github.com/Wstunes/SwiftyJWT", + "installCommandHtml": "pod 'SwiftyJWT'" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/2-Node.js.json b/views/website/libraries/2-Node.js.json new file mode 100644 index 00000000..3777880d --- /dev/null +++ b/views/website/libraries/2-Node.js.json @@ -0,0 +1,36 @@ +{ + "name": "Node.js", + "uniqueClass": "node", + "image": "/img/2.svg", + "bgColor": "rgb(138, 194, 68)", + "libs": [ + { + "minimumVersion": "4.2.2", + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": true, + "exp": true, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/auth0", + "authorName": "Auth0", + "gitHubRepoPath": "auth0/node-jsonwebtoken", + "repoUrl": "https://github.com/auth0/node-jsonwebtoken", + "installCommandHtml": "npm install jsonwebtoken" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/20-C.json b/views/website/libraries/20-C.json new file mode 100644 index 00000000..f71c0d3a --- /dev/null +++ b/views/website/libraries/20-C.json @@ -0,0 +1,64 @@ +{ + "name": "C", + "uniqueClass": "c", + "image": "/img/16.svg", + "bgColor": "rgb(81, 128, 210)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/benmcollins", + "authorName": "benmcollins", + "gitHubRepoPath": "benmcollins/libjwt", + "repoUrl": "https://github.com/benmcollins/libjwt", + "installCommandHtml": "add-apt-repository ppa:ben-collins/libjwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/cisco/cjose", + "authorName": "linuxwolf", + "gitHubRepoPath": "cisco/cjose", + "repoUrl": "https://github.com/cisco/cjose", + "installCommandHtml": "go get github.com/cisco/cjose" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/21-C++.json b/views/website/libraries/21-C++.json new file mode 100644 index 00000000..e59adc28 --- /dev/null +++ b/views/website/libraries/21-C++.json @@ -0,0 +1,92 @@ +{ + "name": "C++", + "uniqueClass": "cpp", + "image": "/img/26.svg", + "bgColor": "rgb(0, 89, 156)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/troian", + "authorName": "Artur Troian", + "gitHubRepoPath": "troian/josepp", + "repoUrl": "https://github.com/troian/josepp", + "installCommandHtml": "git clone https://github.com/troian/josepp" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/Thalhammer", + "authorName": "Dominik Thalhammer", + "gitHubRepoPath": "Thalhammer/jwt-cpp", + "repoUrl": "https://github.com/Thalhammer/jwt-cpp", + "installCommandHtml": "git clone https://github.com/Thalhammer/jwt-cpp" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/arun11299", + "authorName": "Arun Muralidharan", + "gitHubRepoPath": "arun11299/cpp-jwt", + "repoUrl": "https://github.com/arun11299/cpp-jwt", + "installCommandHtml": "git clone https://github.com/arun11299/cpp-jwt" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/22-kdb+_Q.json b/views/website/libraries/22-kdb+_Q.json new file mode 100644 index 00000000..880ecf52 --- /dev/null +++ b/views/website/libraries/22-kdb+_Q.json @@ -0,0 +1,36 @@ +{ + "name": "kdb+/Q", + "uniqueClass": "q", + "image": "/img/q.svg", + "bgColor": "rgb(102, 102, 102)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/tjcelaya", + "authorName": "tjcelaya", + "gitHubRepoPath": "tjcelaya/jwt.q", + "repoUrl": "https://github.com/tjcelaya/jwt.q", + "installCommandHtml": "git clone https://github.com/tjcelaya/jwt.q" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/23-Delphi.json b/views/website/libraries/23-Delphi.json new file mode 100644 index 00000000..c185e2e9 --- /dev/null +++ b/views/website/libraries/23-Delphi.json @@ -0,0 +1,64 @@ +{ + "name": "Delphi", + "uniqueClass": "delphi", + "image": "/img/17.svg", + "bgColor": "rgb(227, 28, 35)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/paolo-rossi", + "authorName": "Paolo Rossi", + "gitHubRepoPath": "paolo-rossi/delphi-jose-jwt", + "repoUrl": "https://github.com/paolo-rossi/delphi-jose-jwt", + "installCommandHtml": "git clone https://github.com/paolo-rossi/delphi-jose-jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": false, + "hs512": false, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": true, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/synopse", + "authorName": "Synopse", + "gitHubRepoPath": "synopse/mORMot", + "repoUrl": "https://github.com/synopse/mORMot", + "installCommandHtml": "git clone https://github.com/synopse/mORMot" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/24-PHP.json b/views/website/libraries/24-PHP.json new file mode 100644 index 00000000..6f1baa2a --- /dev/null +++ b/views/website/libraries/24-PHP.json @@ -0,0 +1,232 @@ +{ + "name": "PHP", + "uniqueClass": "php", + "image": "/img/5.svg", + "bgColor": "rgb(119, 123, 180)", + "libs": [ + { + "minimumVersion": "2.0.0", + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/firebase", + "authorName": "Firebase", + "gitHubRepoPath": "firebase/php-jwt", + "repoUrl": "https://github.com/firebase/php-jwt", + "installCommandHtml": "composer require firebase/php-jwt" + }, + { + "minimumVersion": "3.0.0", + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/lcobucci", + "authorName": "Luís Cobucci", + "gitHubRepoPath": "lcobucci/jwt", + "repoUrl": "https://github.com/lcobucci/jwt", + "installCommandHtml": "composer require lcobucci/jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/emarref", + "authorName": "Emarref", + "gitHubRepoPath": "emarref/jwt", + "repoUrl": "https://github.com/emarref/jwt", + "installCommandHtml": "composer require emarref/jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/Spomky-Labs/jose", + "authorName": "Spomky", + "gitHubRepoPath": "Spomky-Labs/jose", + "repoUrl": "https://github.com/Spomky-Labs/jose", + "installCommandHtml": "composer require spomky-labs/jose" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/nov", + "authorName": "Nov Matake", + "gitHubRepoPath": "nov/jose-php", + "repoUrl": "https://github.com/nov/jose-php", + "installCommandHtml": "composer require gree/jose" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/Spomky", + "authorName": "Spomky", + "gitHubRepoPath": "web-token/jwt-framework", + "repoUrl": "https://github.com/web-token/jwt-framework", + "installCommandHtml": "composer require web-token/jwt-framework" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": false, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/vaibhavpandeyvpz", + "authorName": "Vaibhav Pandey", + "gitHubRepoPath": "vaibhavpandeyvpz/jweety", + "repoUrl": "https://github.com/vaibhavpandeyvpz/jweety", + "installCommandHtml": "composer require vaibhavpandeyvpz/jweety" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/lindelius", + "authorName": "Tom Lindelius", + "gitHubRepoPath": "lindelius/php-jwt", + "repoUrl": "https://github.com/lindelius/php-jwt", + "installCommandHtml": "composer require lindelius/php-jwt" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/25-Crystal.json b/views/website/libraries/25-Crystal.json new file mode 100644 index 00000000..c8551f38 --- /dev/null +++ b/views/website/libraries/25-Crystal.json @@ -0,0 +1,36 @@ +{ + "name": "Crystal", + "uniqueClass": "crystal", + "image": "/img/21.svg", + "bgColor": "rgb(176, 176, 176)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/greyblake", + "authorName": "Sergey Potapov", + "gitHubRepoPath": "crystal-community/jwt", + "repoUrl": "https://github.com/crystal-community/jwt", + "installCommandHtml": "git clone https://github.com/crystal-community/jwt.git" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/26-1C.json b/views/website/libraries/26-1C.json new file mode 100644 index 00000000..a84938c2 --- /dev/null +++ b/views/website/libraries/26-1C.json @@ -0,0 +1,36 @@ +{ + "name": "1C", + "uniqueClass": "_1c", + "image": "/img/22.svg", + "bgColor": "rgb(251, 197, 61)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": false, + "hs512": false, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/pintov", + "authorName": "Vasily Pintov", + "gitHubRepoPath": "pintov/1c-jwt", + "repoUrl": "https://github.com/pintov/1c-jwt", + "installCommandHtml": "git clone https://github.com/pintov/1c-jwt" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/27-PostgreSQL.json b/views/website/libraries/27-PostgreSQL.json new file mode 100644 index 00000000..487589d5 --- /dev/null +++ b/views/website/libraries/27-PostgreSQL.json @@ -0,0 +1,36 @@ +{ + "name": "PostgreSQL", + "uniqueClass": "postgresql", + "image": "/img/25.svg", + "bgColor": "rgb(51, 103, 145)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/michelp", + "authorName": "Michel Pelletier", + "gitHubRepoPath": "michelp/pgjwt", + "repoUrl": "https://github.com/michelp/pgjwt", + "installCommandHtml": "CREATE EXTENSION pgjwt;" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/3-Java.json b/views/website/libraries/3-Java.json new file mode 100644 index 00000000..d2d0d88d --- /dev/null +++ b/views/website/libraries/3-Java.json @@ -0,0 +1,176 @@ +{ + "name": "Java", + "uniqueClass": "java", + "image": "/img/3.svg", + "bgColor": "rgb(231, 111, 0)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/auth0", + "authorName": "Auth0", + "gitHubRepoPath": "auth0/java-jwt", + "repoUrl": "https://github.com/auth0/java-jwt", + "installCommandHtml": "maven: com.auth0 / java-jwt / 3.3.0" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://twitter.com/__b_c", + "authorName": "Brian Campbell", + "gitHubRepoPath": null, + "repoUrl": "https://bitbucket.org/b_c/jose4j", + "installCommandHtml": "maven: org.bitbucket.b_c / jose4j / 0.6.3" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": false, + "aud": true, + "exp": true, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/connect2id", + "authorName": "connect2id", + "gitHubRepoPath": null, + "repoUrl": "https://bitbucket.org/connect2id/nimbus-jose-jwt", + "installCommandHtml": "maven: com.nimbusds / nimbus-jose-jwt / 5.7" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://twitter.com/lhazlewood", + "authorName": "Les Hazlewood", + "gitHubRepoPath": "jwtk/jjwt", + "repoUrl": "https://github.com/jwtk/jjwt", + "installCommandHtml": "maven: io.jsonwebtoken / jjwt / 0.9.0" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/inversoft", + "authorName": "Inversoft", + "gitHubRepoPath": "inversoft/prime-jwt", + "repoUrl": "https://github.com/inversoft/prime-jwt", + "installCommandHtml": "maven: com.inversoft / prime-jwt / 1.3.0" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/vert-x3", + "authorName": "Vert.x", + "gitHubRepoPath": "vert-x3/vertx-auth", + "repoUrl": "https://github.com/vert-x3/vertx-auth", + "installCommandHtml": "maven: io.vertx / vertx-auth-jwt / 3.5.1" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/4-JavaScript.json b/views/website/libraries/4-JavaScript.json new file mode 100644 index 00000000..612d1875 --- /dev/null +++ b/views/website/libraries/4-JavaScript.json @@ -0,0 +1,64 @@ +{ + "name": "JavaScript", + "uniqueClass": "js", + "image": "/img/6.svg", + "bgColor": "rgb(239, 200, 37)", + "libs": [ + { + "minimumVersion": "3.2.0", + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": false + }, + "authorUrl": "https://github.com/kjur", + "authorName": "Kenji Urushima", + "gitHubRepoPath": "kjur/jsrsasign", + "repoUrl": "https://github.com/kjur/jsrsasign", + "installCommandHtml": "npm install jsrsasign" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/square", + "authorName": "Square, Inc.", + "gitHubRepoPath": "square/js-jose", + "repoUrl": "https://github.com/square/js-jose", + "installCommandHtml": "npm install jose-jwe-jws" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/5-Perl.json b/views/website/libraries/5-Perl.json new file mode 100644 index 00000000..1902baa6 --- /dev/null +++ b/views/website/libraries/5-Perl.json @@ -0,0 +1,36 @@ +{ + "name": "Perl", + "uniqueClass": "perl", + "image": "/img/19.svg", + "bgColor": "rgb(59, 71, 122)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/DCIT", + "authorName": "Karel Miko", + "gitHubRepoPath": "DCIT/perl-Crypt-JWT", + "repoUrl": "https://github.com/DCIT/perl-Crypt-JWT", + "installCommandHtml": "cpanm Crypt::JWT" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/6-Ruby.json b/views/website/libraries/6-Ruby.json new file mode 100644 index 00000000..6b1fe8f2 --- /dev/null +++ b/views/website/libraries/6-Ruby.json @@ -0,0 +1,120 @@ +{ + "name": "Ruby", + "uniqueClass": "ruby", + "image": "/img/7.svg", + "bgColor": "rgb(170, 17, 0)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": null, + "authorName": "Lindsay & Rudat", + "gitHubRepoPath": "progrium/ruby-jwt", + "repoUrl": "https://github.com/progrium/ruby-jwt", + "installCommandHtml": "gem install jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": null, + "authorName": "Fleshman", + "gitHubRepoPath": "garyf/json_web_token", + "repoUrl": "https://github.com/garyf/json_web_token", + "installCommandHtml": "gem install json_web_token" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/nov", + "authorName": "Nov Matake", + "gitHubRepoPath": "nov/json-jwt", + "repoUrl": "https://github.com/nov/json-jwt", + "installCommandHtml": "gem install json-jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/potatosalad", + "authorName": "Andrew Bennett", + "gitHubRepoPath": "potatosalad/ruby-jose", + "repoUrl": "https://github.com/potatosalad/ruby-jose", + "installCommandHtml": "gem install jose" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/7-Elixir.json b/views/website/libraries/7-Elixir.json new file mode 100644 index 00000000..3fe0667d --- /dev/null +++ b/views/website/libraries/7-Elixir.json @@ -0,0 +1,92 @@ +{ + "name": "Elixir", + "uniqueClass": "elixir", + "image": "/img/18.svg", + "bgColor": "rgb(78, 42, 142)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": null, + "authorName": "Fleshman", + "gitHubRepoPath": "garyf/json_web_token_ex", + "repoUrl": "https://github.com/garyf/json_web_token_ex", + "installCommandHtml": "defp deps, do: [{:json_web_token, \"~> 0.2.5\"}]" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": null, + "authorName": "bryanjos", + "gitHubRepoPath": "bryanjos/joken", + "repoUrl": "https://github.com/bryanjos/joken", + "installCommandHtml": "defp deps, do: [{:joken, \"~> 1.2\"}]" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": null, + "authorName": "hassox", + "gitHubRepoPath": "ueberauth/guardian", + "repoUrl": "https://github.com/ueberauth/guardian", + "installCommandHtml": "defp deps, do: [{:guardian, \"~> 0.11.1\"}]" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/8-Erlang.json b/views/website/libraries/8-Erlang.json new file mode 100644 index 00000000..68839fa9 --- /dev/null +++ b/views/website/libraries/8-Erlang.json @@ -0,0 +1,36 @@ +{ + "name": "Erlang", + "uniqueClass": "erlang", + "image": "/img/27.svg", + "bgColor": "rgb(169, 5, 51)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/glejeune", + "authorName": "Gregoire Lejeune", + "gitHubRepoPath": "emedia-project/jwerl", + "repoUrl": "https://github.com/emedia-project/jwerl", + "installCommandHtml": "git clone https://github.com/emedia-project/jwerl.git" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json new file mode 100644 index 00000000..dfe0a814 --- /dev/null +++ b/views/website/libraries/9-Go.json @@ -0,0 +1,260 @@ +{ + "name": "Go", + "uniqueClass": "go", + "image": "/img/8.svg", + "bgColor": "rgb(71, 182, 196)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/dgrijalva", + "authorName": "dgrijalva", + "gitHubRepoPath": "dgrijalva/jwt-go", + "repoUrl": "https://github.com/dgrijalva/jwt-go", + "installCommandHtml": "go get github.com/dgrijalva/jwt-go" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/dvsekhvalnov/jose2go", + "authorName": "DV", + "gitHubRepoPath": "dvsekhvalnov/jose2go", + "repoUrl": "https://github.com/dvsekhvalnov/jose2go", + "installCommandHtml": "go get github.com/dvsekhvalnov/jose2go" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/SermoDigital/jose", + "authorName": "SermoDigital", + "gitHubRepoPath": "SermoDigital/jose", + "repoUrl": "https://github.com/SermoDigital/jose", + "installCommandHtml": "go get github.com/SermoDigital/jose" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": false, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/robbert229", + "authorName": "robbert229", + "gitHubRepoPath": "robbert229/jwt", + "repoUrl": "https://github.com/robbert229/jwt", + "installCommandHtml": "go get github.com/robbert229/jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/square", + "authorName": "DV", + "gitHubRepoPath": "square/go-jose", + "repoUrl": "https://github.com/square/go-jose", + "installCommandHtml": "go get github.com/square/go-jose" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/lestrrat", + "authorName": "lestrrat", + "gitHubRepoPath": "lestrrat/go-jwx", + "repoUrl": "https://github.com/lestrrat/go-jwx", + "installCommandHtml": "go get github.com/lestrrat/go-jwx" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": false, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/adam-hanna", + "authorName": "adam-hanna", + "gitHubRepoPath": "adam-hanna/jwt-auth", + "repoUrl": "https://github.com/adam-hanna/jwt-auth", + "installCommandHtml": "go get github.com/adam-hanna/jwt-auth" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": true, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": false, + "hs512": false, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/nickvellios", + "authorName": "nickvellios", + "gitHubRepoPath": "nickvellios/gojwt", + "repoUrl": "https://github.com/nickvellios/gojwt", + "installCommandHtml": "go get github.com/nickvellios/gojwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/gbrlsnchs", + "authorName": "gbrlsnchs", + "gitHubRepoPath": "gbrlsnchs/jwt", + "repoUrl": "https://github.com/gbrlsnchs/jwt", + "installCommandHtml": "go get github.com/gbrlsnchs/jwt" + } + ] +} \ No newline at end of file diff --git a/views/website/libraries/data.json b/views/website/libraries/data.json deleted file mode 100644 index 4e4d09af..00000000 --- a/views/website/libraries/data.json +++ /dev/null @@ -1,2186 +0,0 @@ -{ - ".NET": { - "uniqueClass": "net", - "image": "/img/1.svg", - "bgColor": "rgb(42, 168, 229)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://www.microsoft.com/", - "authorName": "Microsoft", - "gitHubRepoPath": "AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet", - "repoUrl": "https://github.com/MSOpenTech/azure-activedirectory-identitymodel-extensions-for-dotnet", - "installCommandHtml": "Install-Package
System.IdentityModel.Tokens.Jwt" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/dvsekhvalnov/jose-jwt", - "authorName": "DV", - "gitHubRepoPath": "dvsekhvalnov/jose-jwt", - "repoUrl": "https://github.com/dvsekhvalnov/jose-jwt", - "installCommandHtml": "Install-Package
jose-jwt" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/dvsekhvalnov/jose-rt", - "authorName": "DV", - "gitHubRepoPath": "dvsekhvalnov/jose-rt", - "repoUrl": "https://github.com/dvsekhvalnov/jose-rt", - "installCommandHtml": "Install-Package
jose-rt" - } - ] - }, - "Python": { - "uniqueClass": "python", - "image": "/img/4.svg", - "bgColor": "rgb(55, 126, 240)", - "libs": [ - { - "minimumVersion": "1.0.1", - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": false, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/jpadilla", - "authorName": "José Padilla", - "gitHubRepoPath": "jpadilla/pyjwt", - "repoUrl": "https://github.com/jpadilla/pyjwt/", - "installCommandHtml": "pip install pyjwt" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/mpdavis", - "authorName": "Michael Davis", - "gitHubRepoPath": "mpdavis/python-jose", - "repoUrl": "https://github.com/mpdavis/python-jose/", - "installCommandHtml": "pip install python-jose" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/simo5", - "authorName": "Simo Sorce", - "gitHubRepoPath": "latchset/jwcrypto", - "repoUrl": "https://github.com/latchset/jwcrypto/", - "installCommandHtml": "pip install jwcrypto" - } - ] - }, - "Node.js": { - "uniqueClass": "node", - "image": "/img/2.svg", - "bgColor": "rgb(138, 194, 68)", - "libs": [ - { - "minimumVersion": "4.2.2", - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": true, - "exp": true, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/auth0", - "authorName": "Auth0", - "gitHubRepoPath": "auth0/node-jsonwebtoken", - "repoUrl": "https://github.com/auth0/node-jsonwebtoken", - "installCommandHtml": "npm install jsonwebtoken" - } - ] - }, - "Java": { - "uniqueClass": "java", - "image": "/img/3.svg", - "bgColor": "rgb(231, 111, 0)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/auth0", - "authorName": "Auth0", - "gitHubRepoPath": "auth0/java-jwt", - "repoUrl": "https://github.com/auth0/java-jwt", - "installCommandHtml": "maven: com.auth0 / java-jwt / 3.3.0" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://twitter.com/__b_c", - "authorName": "Brian Campbell", - "gitHubRepoPath": null, - "repoUrl": "https://bitbucket.org/b_c/jose4j", - "installCommandHtml": "maven: org.bitbucket.b_c / jose4j / 0.6.3" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": false, - "aud": true, - "exp": true, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/connect2id", - "authorName": "connect2id", - "gitHubRepoPath": null, - "repoUrl": "https://bitbucket.org/connect2id/nimbus-jose-jwt", - "installCommandHtml": "maven: com.nimbusds / nimbus-jose-jwt / 5.7" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://twitter.com/lhazlewood", - "authorName": "Les Hazlewood", - "gitHubRepoPath": "jwtk/jjwt", - "repoUrl": "https://github.com/jwtk/jjwt", - "installCommandHtml": "maven: io.jsonwebtoken / jjwt / 0.9.0" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/inversoft", - "authorName": "Inversoft", - "gitHubRepoPath": "inversoft/prime-jwt", - "repoUrl": "https://github.com/inversoft/prime-jwt", - "installCommandHtml": "maven: com.inversoft / prime-jwt / 1.3.0" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/vert-x3", - "authorName": "Vert.x", - "gitHubRepoPath": "vert-x3/vertx-auth", - "repoUrl": "https://github.com/vert-x3/vertx-auth", - "installCommandHtml": "maven: io.vertx / vertx-auth-jwt / 3.5.1" - } - ] - }, - "JavaScript": { - "uniqueClass": "js", - "image": "/img/6.svg", - "bgColor": "rgb(239, 200, 37)", - "libs": [ - { - "minimumVersion": "3.2.0", - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": false - }, - "authorUrl": "https://github.com/kjur", - "authorName": "Kenji Urushima", - "gitHubRepoPath": "kjur/jsrsasign", - "repoUrl": "https://github.com/kjur/jsrsasign", - "installCommandHtml": "npm install jsrsasign" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/square", - "authorName": "Square, Inc.", - "gitHubRepoPath": "square/js-jose", - "repoUrl": "https://github.com/square/js-jose", - "installCommandHtml": "npm install jose-jwe-jws" - } - ] - }, - "Perl": { - "uniqueClass": "perl", - "image": "/img/19.svg", - "bgColor": "rgb(59, 71, 122)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/DCIT", - "authorName": "Karel Miko", - "gitHubRepoPath": "DCIT/perl-Crypt-JWT", - "repoUrl": "https://github.com/DCIT/perl-Crypt-JWT", - "installCommandHtml": "cpanm Crypt::JWT" - } - ] - }, - "Ruby": { - "uniqueClass": "ruby", - "image": "/img/7.svg", - "bgColor": "rgb(170, 17, 0)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": null, - "authorName": "Lindsay & Rudat", - "gitHubRepoPath": "progrium/ruby-jwt", - "repoUrl": "https://github.com/progrium/ruby-jwt", - "installCommandHtml": "gem install jwt" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": null, - "authorName": "Fleshman", - "gitHubRepoPath": "garyf/json_web_token", - "repoUrl": "https://github.com/garyf/json_web_token", - "installCommandHtml": "gem install json_web_token" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/nov", - "authorName": "Nov Matake", - "gitHubRepoPath": "nov/json-jwt", - "repoUrl": "https://github.com/nov/json-jwt", - "installCommandHtml": "gem install json-jwt" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/potatosalad", - "authorName": "Andrew Bennett", - "gitHubRepoPath": "potatosalad/ruby-jose", - "repoUrl": "https://github.com/potatosalad/ruby-jose", - "installCommandHtml": "gem install jose" - } - ] - }, - "Elixir": { - "uniqueClass": "elixir", - "image": "/img/18.svg", - "bgColor": "rgb(78, 42, 142)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": null, - "authorName": "Fleshman", - "gitHubRepoPath": "garyf/json_web_token_ex", - "repoUrl": "https://github.com/garyf/json_web_token_ex", - "installCommandHtml": "defp deps, do: [{:json_web_token, \"~> 0.2.5\"}]" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": null, - "authorName": "bryanjos", - "gitHubRepoPath": "bryanjos/joken", - "repoUrl": "https://github.com/bryanjos/joken", - "installCommandHtml": "defp deps, do: [{:joken, \"~> 1.2\"}]" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": null, - "authorName": "hassox", - "gitHubRepoPath": "ueberauth/guardian", - "repoUrl": "https://github.com/ueberauth/guardian", - "installCommandHtml": "defp deps, do: [{:guardian, \"~> 0.11.1\"}]" - } - ] - }, - "Erlang": { - "uniqueClass": "erlang", - "image": "/img/27.svg", - "bgColor": "rgb(169, 5, 51)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": true, - "nbf": true, - "iat": true, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/glejeune", - "authorName": "Gregoire Lejeune", - "gitHubRepoPath": "emedia-project/jwerl", - "repoUrl": "https://github.com/emedia-project/jwerl", - "installCommandHtml": "git clone https://github.com/emedia-project/jwerl.git" - } - ] - }, - "Go": { - "uniqueClass": "go", - "image": "/img/8.svg", - "bgColor": "rgb(71, 182, 196)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": true, - "nbf": true, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/dgrijalva", - "authorName": "dgrijalva", - "gitHubRepoPath": "dgrijalva/jwt-go", - "repoUrl": "https://github.com/dgrijalva/jwt-go", - "installCommandHtml": "go get github.com/dgrijalva/jwt-go" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/dvsekhvalnov/jose2go", - "authorName": "DV", - "gitHubRepoPath": "dvsekhvalnov/jose2go", - "repoUrl": "https://github.com/dvsekhvalnov/jose2go", - "installCommandHtml": "go get github.com/dvsekhvalnov/jose2go" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/SermoDigital/jose", - "authorName": "SermoDigital", - "gitHubRepoPath": "SermoDigital/jose", - "repoUrl": "https://github.com/SermoDigital/jose", - "installCommandHtml": "go get github.com/SermoDigital/jose" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": true, - "nbf": true, - "iat": true, - "jti": false, - "hs256": true, - "hs384": false, - "hs512": true, - "rs256": false, - "rs384": false, - "rs512": false, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/robbert229", - "authorName": "robbert229", - "gitHubRepoPath": "robbert229/jwt", - "repoUrl": "https://github.com/robbert229/jwt", - "installCommandHtml": "go get github.com/robbert229/jwt" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/square", - "authorName": "DV", - "gitHubRepoPath": "square/go-jose", - "repoUrl": "https://github.com/square/go-jose", - "installCommandHtml": "go get github.com/square/go-jose" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/lestrrat", - "authorName": "lestrrat", - "gitHubRepoPath": "lestrrat/go-jwx", - "repoUrl": "https://github.com/lestrrat/go-jwx", - "installCommandHtml": "go get github.com/lestrrat/go-jwx" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": true, - "nbf": true, - "iat": false, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/adam-hanna", - "authorName": "adam-hanna", - "gitHubRepoPath": "adam-hanna/jwt-auth", - "repoUrl": "https://github.com/adam-hanna/jwt-auth", - "installCommandHtml": "go get github.com/adam-hanna/jwt-auth" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": true, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": false, - "hs512": false, - "rs256": false, - "rs384": false, - "rs512": false, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/nickvellios", - "authorName": "nickvellios", - "gitHubRepoPath": "nickvellios/gojwt", - "repoUrl": "https://github.com/nickvellios/gojwt", - "installCommandHtml": "go get github.com/nickvellios/gojwt" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/gbrlsnchs", - "authorName": "gbrlsnchs", - "gitHubRepoPath": "gbrlsnchs/jwt", - "repoUrl": "https://github.com/gbrlsnchs/jwt", - "installCommandHtml": "go get github.com/gbrlsnchs/jwt" - } - ] - }, - "Groovy": { - "uniqueClass": "groovy", - "image": "/img/24.svg", - "bgColor": "rgb(99, 152, 170)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": false, - "hs512": false, - "rs256": false, - "rs384": false, - "rs512": false, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/kaleidos", - "authorName": "Kaleidos", - "gitHubRepoPath": "kaleidos/grails-security-stateless", - "repoUrl": "https://github.com/kaleidos/grails-security-stateless", - "installCommandHtml": "compile \"org.grails.plugins:security-stateless:0.0.9\"" - } - ] - }, - "Haskell": { - "uniqueClass": "haskell", - "image": "/img/9.svg", - "bgColor": "rgb(102, 102, 102)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": false, - "hs512": false, - "rs256": false, - "rs384": false, - "rs512": false, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://bitbucket.org/ssaasen", - "authorName": "Stefan Saasen", - "gitHubRepoPath": null, - "repoUrl": "https://bitbucket.org/ssaasen/haskell-jwt", - "installCommandHtml": "cabal install jwt" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": false, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/frasertweedale", - "authorName": "Fraser Tweedale", - "gitHubRepoPath": "frasertweedale/hs-jose", - "repoUrl": "https://github.com/frasertweedale/hs-jose", - "installCommandHtml": "cabal install jose" - } - ] - }, - "Haxe": { - "uniqueClass": "haxe", - "image": "/img/23.svg", - "bgColor": "rgb(234, 130, 32)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": false, - "aud": true, - "exp": true, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": false, - "hs512": false, - "rs256": false, - "rs384": false, - "rs512": false, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/kevinresol", - "authorName": "Kevin Leung", - "gitHubRepoPath": "kevinresol/jsonwebtoken", - "repoUrl": "https://github.com/kevinresol/jsonwebtoken", - "installCommandHtml": "haxelib install jsonwebtoken" - } - ] - }, - "Rust": { - "uniqueClass": "rust", - "image": "/img/10.svg", - "bgColor": "rgb(129, 70, 38)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/GildedHonour", - "authorName": "GildedHonour", - "gitHubRepoPath": "GildedHonour/rust-jwt", - "repoUrl": "https://github.com/GildedHonour/rust-jwt", - "installCommandHtml": "cargo: name = \"frank_jwt\" version = \"*\"" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": false, - "rs384": false, - "rs512": false, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/Keats", - "authorName": "Keats", - "gitHubRepoPath": "Keats/jsonwebtoken", - "repoUrl": "https://github.com/Keats/jsonwebtoken", - "installCommandHtml": "cargo: name = \"jsonwebtoken\" version = \"*\"" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": true, - "nbf": true, - "iat": true, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/lawliet89", - "authorName": "Yong Wen Chua", - "gitHubRepoPath": "lawliet89/biscuit", - "repoUrl": "https://github.com/lawliet89/biscuit", - "installCommandHtml": "Cargo.toml: biscuit = \"*\"" - } - ] - }, - "Lua": { - "uniqueClass": "lua", - "image": "/img/11.svg", - "bgColor": "rgb(0, 0, 128)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": true, - "nbf": true, - "iat": false, - "jti": false, - "hs256": true, - "hs384": false, - "hs512": true, - "rs256": true, - "rs384": false, - "rs512": false, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/SkyLothar", - "authorName": "SkyLothar", - "gitHubRepoPath": "SkyLothar/lua-resty-jwt", - "repoUrl": "https://github.com/SkyLothar/lua-resty-jwt", - "installCommandHtml": "git clone https://github.com/SkyLothar/lua-resty-jwt.git" - } - ] - }, - "Scala": { - "uniqueClass": "scala", - "image": "/img/12.svg", - "bgColor": "rgb(234, 45, 46)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": false, - "rs384": false, - "rs512": false, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/jasongoodwin", - "authorName": "jasongoodwin", - "gitHubRepoPath": "jasongoodwin/authentikat-jwt", - "repoUrl": "https://github.com/jasongoodwin/authentikat-jwt", - "installCommandHtml": "sbt: \"com.jason-goodwin\" %% \"authentikat-jwt\" % \"0.4.5\"" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/pauldijou", - "authorName": "pauldijou", - "gitHubRepoPath": "pauldijou/jwt-scala", - "repoUrl": "https://github.com/pauldijou/jwt-scala", - "installCommandHtml": "sbt: \"pdi\" %% \"jwt-core\" % \"0.14.1\"" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": false, - "rs512": false, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/iain-logan", - "authorName": "iain-logan", - "gitHubRepoPath": "iain-logan/jwt", - "repoUrl": "https://github.com/iain-logan/jwt", - "installCommandHtml": "libraryDependencies += \"io.igl\" %% \"jwt\" % \"1.2.2\"" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": false, - "exp": false, - "nbf": false, - "iat": true, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/janjaali", - "authorName": "janjaali", - "gitHubRepoPath": "janjaali/spray-jwt", - "repoUrl": "https://github.com/janjaali/spray-jwt", - "installCommandHtml": "libraryDependencies += \"com.github.janjaali\" %% \"spray-jwt\" % \"1.0.0\"" - } - ] - }, - "D": { - "uniqueClass": "d", - "image": "/img/14.svg", - "bgColor": "rgb(180, 65, 55)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/olehlong", - "authorName": "olehlong", - "gitHubRepoPath": "olehlong/jwtd", - "repoUrl": "https://github.com/olehlong/jwtd", - "installCommandHtml": "dub fetch jwtd" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": true, - "nbf": true, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": false, - "rs384": false, - "rs512": false, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/zolamk", - "authorName": "zolamk", - "gitHubRepoPath": "zolamk/jwt", - "repoUrl": "https://github.com/zolamk/jwt", - "installCommandHtml": "dub fetch jwt" - } - ] - }, - "Clojure": { - "uniqueClass": "clojure", - "image": "/img/13.svg", - "bgColor": "rgb(88, 129, 216)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": false, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/niwinz", - "authorName": "Andrey Antukh", - "gitHubRepoPath": "funcool/buddy", - "repoUrl": "https://github.com/funcool/buddy/", - "installCommandHtml": "lein: [funcool/buddy \"0.6.0\"]" - } - ] - }, - "Objective-C": { - "uniqueClass": "objective-c", - "image": "/img/20.svg", - "bgColor": "rgba(0, 0, 0, 0)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": null, - "authorName": "yourkarma & lolgear", - "gitHubRepoPath": "yourkarma/JWT", - "repoUrl": "https://github.com/yourkarma/JWT", - "installCommandHtml": "pod 'JWT'" - } - ] - }, - "Swift": { - "uniqueClass": "swift", - "image": "/img/15.svg", - "bgColor": "rgb(234, 45, 46)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": false, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": false, - "rs384": false, - "rs512": false, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/kylef", - "authorName": "Kyle Fuller", - "gitHubRepoPath": "kylef/JSONWebToken.swift", - "repoUrl": "https://github.com/kylef/JSONWebToken.swift", - "installCommandHtml": "pod 'JSONWebToken'" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/siemensikkema", - "authorName": "Siemen Sikkema", - "gitHubRepoPath": "vapor/jwt", - "repoUrl": "https://github.com/vapor/jwt", - "installCommandHtml": ".Package(url:\"https://github.com/vapor/jwt.git/", majorVersion: 1)" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/Wstunes", - "authorName": "Wstunes", - "gitHubRepoPath": "Wstunes/SwiftyJWT", - "repoUrl": "https://github.com/Wstunes/SwiftyJWT", - "installCommandHtml": "pod 'SwiftyJWT'" - } - ] - }, - "C": { - "uniqueClass": "c", - "image": "/img/16.svg", - "bgColor": "rgb(81, 128, 210)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/benmcollins", - "authorName": "benmcollins", - "gitHubRepoPath": "benmcollins/libjwt", - "repoUrl": "https://github.com/benmcollins/libjwt", - "installCommandHtml": "add-apt-repository ppa:ben-collins/libjwt" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/cisco/cjose", - "authorName": "linuxwolf", - "gitHubRepoPath": "cisco/cjose", - "repoUrl": "https://github.com/cisco/cjose", - "installCommandHtml": "go get github.com/cisco/cjose" - } - ] - }, - "C++": { - "uniqueClass": "cpp", - "image": "/img/26.svg", - "bgColor": "rgb(0, 89, 156)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/troian", - "authorName": "Artur Troian", - "gitHubRepoPath": "troian/josepp", - "repoUrl": "https://github.com/troian/josepp", - "installCommandHtml": "git clone https://github.com/troian/josepp" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/Thalhammer", - "authorName": "Dominik Thalhammer", - "gitHubRepoPath": "Thalhammer/jwt-cpp", - "repoUrl": "https://github.com/Thalhammer/jwt-cpp", - "installCommandHtml": "git clone https://github.com/Thalhammer/jwt-cpp" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/arun11299", - "authorName": "Arun Muralidharan", - "gitHubRepoPath": "arun11299/cpp-jwt", - "repoUrl": "https://github.com/arun11299/cpp-jwt", - "installCommandHtml": "git clone https://github.com/arun11299/cpp-jwt" - } - ] - }, - "kdb+/Q": { - "uniqueClass": "q", - "image": "/img/q.svg", - "bgColor": "rgb(102, 102, 102)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": false, - "rs384": false, - "rs512": false, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/tjcelaya", - "authorName": "tjcelaya", - "gitHubRepoPath": "tjcelaya/jwt.q", - "repoUrl": "https://github.com/tjcelaya/jwt.q", - "installCommandHtml": "git clone https://github.com/tjcelaya/jwt.q" - } - ] - }, - "Delphi": { - "uniqueClass": "delphi", - "image": "/img/17.svg", - "bgColor": "rgb(227, 28, 35)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/paolo-rossi", - "authorName": "Paolo Rossi", - "gitHubRepoPath": "paolo-rossi/delphi-jose-jwt", - "repoUrl": "https://github.com/paolo-rossi/delphi-jose-jwt", - "installCommandHtml": "git clone https://github.com/paolo-rossi/delphi-jose-jwt" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": false, - "hs512": false, - "rs256": false, - "rs384": false, - "rs512": false, - "es256": true, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/synopse", - "authorName": "Synopse", - "gitHubRepoPath": "synopse/mORMot", - "repoUrl": "https://github.com/synopse/mORMot", - "installCommandHtml": "git clone https://github.com/synopse/mORMot" - } - ] - }, - "PHP": { - "uniqueClass": "php", - "image": "/img/5.svg", - "bgColor": "rgb(119, 123, 180)", - "libs": [ - { - "minimumVersion": "2.0.0", - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": false, - "aud": false, - "exp": true, - "nbf": true, - "iat": true, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": false, - "rs512": false, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/firebase", - "authorName": "Firebase", - "gitHubRepoPath": "firebase/php-jwt", - "repoUrl": "https://github.com/firebase/php-jwt", - "installCommandHtml": "composer require firebase/php-jwt" - }, - { - "minimumVersion": "3.0.0", - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/lcobucci", - "authorName": "Luís Cobucci", - "gitHubRepoPath": "lcobucci/jwt", - "repoUrl": "https://github.com/lcobucci/jwt", - "installCommandHtml": "composer require lcobucci/jwt" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/emarref", - "authorName": "Emarref", - "gitHubRepoPath": "emarref/jwt", - "repoUrl": "https://github.com/emarref/jwt", - "installCommandHtml": "composer require emarref/jwt" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/Spomky-Labs/jose", - "authorName": "Spomky", - "gitHubRepoPath": "Spomky-Labs/jose", - "repoUrl": "https://github.com/Spomky-Labs/jose", - "installCommandHtml": "composer require spomky-labs/jose" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/nov", - "authorName": "Nov Matake", - "gitHubRepoPath": "nov/jose-php", - "repoUrl": "https://github.com/nov/jose-php", - "installCommandHtml": "composer require gree/jose" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true - }, - "authorUrl": "https://github.com/Spomky", - "authorName": "Spomky", - "gitHubRepoPath": "web-token/jwt-framework", - "repoUrl": "https://github.com/web-token/jwt-framework", - "installCommandHtml": "composer require web-token/jwt-framework" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": false, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": false, - "rs384": false, - "rs512": false, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/vaibhavpandeyvpz", - "authorName": "Vaibhav Pandey", - "gitHubRepoPath": "vaibhavpandeyvpz/jweety", - "repoUrl": "https://github.com/vaibhavpandeyvpz/jweety", - "installCommandHtml": "composer require vaibhavpandeyvpz/jweety" - }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": true, - "nbf": true, - "iat": true, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/lindelius", - "authorName": "Tom Lindelius", - "gitHubRepoPath": "lindelius/php-jwt", - "repoUrl": "https://github.com/lindelius/php-jwt", - "installCommandHtml": "composer require lindelius/php-jwt" - } - ] - }, - "Crystal": { - "uniqueClass": "crystal", - "image": "/img/21.svg", - "bgColor": "rgb(176, 176, 176)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": false, - "rs384": false, - "rs512": false, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/greyblake", - "authorName": "Sergey Potapov", - "gitHubRepoPath": "crystal-community/jwt", - "repoUrl": "https://github.com/crystal-community/jwt", - "installCommandHtml": "git clone https://github.com/crystal-community/jwt.git" - } - ] - }, - "1C": { - "uniqueClass": "_1c", - "image": "/img/22.svg", - "bgColor": "rgb(251, 197, 61)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": false, - "hs512": false, - "rs256": false, - "rs384": false, - "rs512": false, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/pintov", - "authorName": "Vasily Pintov", - "gitHubRepoPath": "pintov/1c-jwt", - "repoUrl": "https://github.com/pintov/1c-jwt", - "installCommandHtml": "git clone https://github.com/pintov/1c-jwt" - } - ] - }, - "PostgreSQL": { - "uniqueClass": "postgresql", - "image": "/img/25.svg", - "bgColor": "rgb(51, 103, 145)", - "libs": [ - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": false, - "rs384": false, - "rs512": false, - "es256": false, - "es384": false, - "es512": false - }, - "authorUrl": "https://github.com/michelp", - "authorName": "Michel Pelletier", - "gitHubRepoPath": "michelp/pgjwt", - "repoUrl": "https://github.com/michelp/pgjwt", - "installCommandHtml": "CREATE EXTENSION pgjwt;" - } - ] - } -} \ No newline at end of file diff --git a/views/website/libraries/support/get-languages.js b/views/website/libraries/support/get-languages.js new file mode 100644 index 00000000..9463d8f5 --- /dev/null +++ b/views/website/libraries/support/get-languages.js @@ -0,0 +1,26 @@ +const fs = require('fs'); + +function numericCompare(a, b) { + const lhs = parseInt(a, 10); + const rhs = parseInt(b, 10); + + return lhs - rhs; +} + +module.exports = function getLanguages() { + let dirEntries = fs.readdirSync(`${__dirname}/../`); + dirEntries = dirEntries.filter(e => e.endsWith('.json')); + dirEntries.sort(numericCompare); + + console.log('Found languages:\n', dirEntries); + + const result = []; + dirEntries.forEach(entry => { + const data = JSON.parse( + fs.readFileSync(`${__dirname}/../${entry}`).toString()); + + result.push(data); + }); + + return result; +} diff --git a/views/website/libraries/support/getLibsData.js b/views/website/libraries/support/get-libs-data.js similarity index 100% rename from views/website/libraries/support/getLibsData.js rename to views/website/libraries/support/get-libs-data.js diff --git a/views/website/libraries/support/split-libs.js b/views/website/libraries/support/split-libs.js new file mode 100644 index 00000000..9ed48bf4 --- /dev/null +++ b/views/website/libraries/support/split-libs.js @@ -0,0 +1,10 @@ +const data = require('../data.json'); +const fs = require('fs'); + +Object.keys(data).forEach((lang, idx) => { + fs.writeFileSync(`../${idx}-${lang.replace('/', '_')}.json`, + JSON.stringify(Object.assign({ + name: lang + }, data[lang]), + null, ' ')); +}); diff --git a/views/website/libraries/template.pug b/views/website/libraries/template.pug index cdfaef71..03098959 100644 --- a/views/website/libraries/template.pug +++ b/views/website/libraries/template.pug @@ -1,7 +1,7 @@ article(data-accordion, class=`accordion ${lang.uniqueClass}`) .panel-heading(data-control) img(src=lang.image) - h3(style=`background-color: ${lang.bgColor}`) #{langName} + h3(style=`background-color: ${lang.bgColor}`) #{lang.name} .panel-wrap(data-content) if lib.minimumVersion .version From 179df92ab80b39ef99efb898dd95c86053ff729a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 28 Mar 2018 20:48:04 -0300 Subject: [PATCH 009/456] Implements PR #299, PHP library update. --- views/website/libraries/24-PHP.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/views/website/libraries/24-PHP.json b/views/website/libraries/24-PHP.json index 6f1baa2a..f5a520c1 100644 --- a/views/website/libraries/24-PHP.json +++ b/views/website/libraries/24-PHP.json @@ -20,8 +20,8 @@ "hs384": true, "hs512": true, "rs256": true, - "rs384": false, - "rs512": false, + "rs384": true, + "rs512": true, "es256": false, "es384": false, "es512": false From 7fcc6f7a26d986db731c0160f10a059e7b8acb04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 28 Mar 2018 21:47:37 -0300 Subject: [PATCH 010/456] Fix language filter dropbox. --- views/website/libraries.pug | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/views/website/libraries.pug b/views/website/libraries.pug index 86dc6d0a..a5521b0a 100644 --- a/views/website/libraries.pug +++ b/views/website/libraries.pug @@ -9,8 +9,11 @@ section#libraries-io.libraries-jwt select#libraries-select option(value='*', selected='') All // Languages must be in alphabetic order - each lang in Object.keys(languages).sort() - option(value=`.${languages[lang].uniqueClass}`) #{lang} + - + const sortedLangs = Array.from(languages); + sortedLangs.sort((a, b) => a.name.localeCompare(b.name)); + each lang in sortedLangs + option(value=`.${lang.uniqueClass}`) #{lang.name} .warning b Warning: From e2a9ae9510ad5a6a32c95686bc97afa4d65e6750 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Thu, 29 Mar 2018 01:58:46 -0300 Subject: [PATCH 011/456] Library schema validation plus other tests. --- package-lock.json | 44 +++++++++ package.json | 3 + test/unit/index.js | 1 + test/unit/libraries.js | 41 +++++++++ .../libraries/support/language-schema.js | 91 +++++++++++++++++++ webpack.website-unit-tests.js | 3 + 6 files changed, 183 insertions(+) create mode 100644 test/unit/libraries.js create mode 100644 views/website/libraries/support/language-schema.js diff --git a/package-lock.json b/package-lock.json index 85cac261..3d534ec8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2275,6 +2275,16 @@ "check-error": "1.0.2" } }, + "chai-json-schema": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/chai-json-schema/-/chai-json-schema-1.5.0.tgz", + "integrity": "sha1-aWBxnkD3H9Wzd8koLlyaRnmUdPY=", + "dev": true, + "requires": { + "jsonpointer.js": "0.4.0", + "tv4": "1.2.7" + } + }, "chalk": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz", @@ -3091,6 +3101,12 @@ "is-plain-object": "2.0.4" } }, + "deep-freeze": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/deep-freeze/-/deep-freeze-0.0.1.tgz", + "integrity": "sha1-OgsABd4YZygZ39OM0x+RF5yJPoQ=", + "dev": true + }, "deep-is": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", @@ -7388,6 +7404,12 @@ "integrity": "sha1-T9kss04OnbPInIYi7PUfm5eMbLk=", "dev": true }, + "jsonpointer.js": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/jsonpointer.js/-/jsonpointer.js-0.4.0.tgz", + "integrity": "sha1-ACyxI/dnqv3rAZYTLOXE+ZQcyro=", + "dev": true + }, "jsonwebtoken": { "version": "7.1.9", "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-7.1.9.tgz", @@ -11460,6 +11482,22 @@ "safe-buffer": "5.1.1" } }, + "tv4": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/tv4/-/tv4-1.2.7.tgz", + "integrity": "sha1-vSk4mvxzreSa5fSBQrXVRL9o0SA=", + "dev": true + }, + "tv4-formats": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/tv4-formats/-/tv4-formats-3.0.3.tgz", + "integrity": "sha1-a3l43S3IqjnQrCWU3dtvbAy/2SE=", + "dev": true, + "requires": { + "moment": "2.21.0", + "validator": "8.2.0" + } + }, "tweetnacl": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", @@ -11999,6 +12037,12 @@ "spdx-expression-parse": "3.0.0" } }, + "validator": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-8.2.0.tgz", + "integrity": "sha512-Yw5wW34fSv5spzTXNkokD6S6/Oq92d8q/t14TqsS3fAiA1RYnxSFSIZ+CY3n6PGGRCq5HhJTSepQvFUS2QUDxA==", + "dev": true + }, "vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", diff --git a/package.json b/package.json index 0bb6b20c..49656fbf 100644 --- a/package.json +++ b/package.json @@ -18,8 +18,10 @@ "chai": "^4.1.2", "chai-arrays": "^2.0.0", "chai-as-promised": "^7.1.1", + "chai-json-schema": "^1.5.0", "clipboard-polyfill": "^2.4.6", "codemirror": "^5.33.0", + "deep-freeze": "0.0.1", "flipclock": "^0.7.8", "grunt": "^1.0.1", "grunt-cli": "^1.2.0", @@ -50,6 +52,7 @@ "source-map-support": "^0.5.3", "stylus": "^0.54.5", "tippy.js": "^2.3.0", + "tv4-formats": "^3.0.3", "uglifyjs-webpack-plugin": "^1.1.6", "web-ext": "^2.4.0", "webpack": "^4.1.0", diff --git a/test/unit/index.js b/test/unit/index.js index f71ce0d7..8e1ba9a2 100644 --- a/test/unit/index.js +++ b/test/unit/index.js @@ -1,4 +1,5 @@ import 'source-map-support/register'; import './utils.js'; +import './libraries.js'; import './editor'; diff --git a/test/unit/libraries.js b/test/unit/libraries.js new file mode 100644 index 00000000..ba8e809c --- /dev/null +++ b/test/unit/libraries.js @@ -0,0 +1,41 @@ +import chai from 'chai'; +import chaiJsonSchema from 'chai-json-schema'; +import deepFreeze from 'deep-freeze'; +import formats from 'tv4-formats'; + +import getLanguages from + '../../views/website/libraries/support/get-languages.js'; +import languageSchema from + '../../views/website/libraries/support/language-schema.js'; + +chai.use(chaiJsonSchema); +chai.should(); +chai.tv4.addFormat(formats); + +describe('Libraries', function() { + const languages = deepFreeze(getLanguages()); + + it('Each language has a unique name', function() { + const names = new Set(); + + for(const lang of languages) { + names.has(lang.name).should.be.false; + names.add(lang.name); + } + }); + + it('uniqueClass is unique for each language', function() { + const classes = new Set(); + + for(const lang of languages) { + classes.has(lang.uniqueClass).should.be.false; + classes.add(lang.uniqueClass); + } + }); + + it('Have a correct schema', function() { + for(const lang of languages) { + lang.should.be.jsonSchema(languageSchema); + } + }); +}); diff --git a/views/website/libraries/support/language-schema.js b/views/website/libraries/support/language-schema.js new file mode 100644 index 00000000..889ae949 --- /dev/null +++ b/views/website/libraries/support/language-schema.js @@ -0,0 +1,91 @@ +module.exports = { + type: 'object', + required: ['name', 'uniqueClass', 'image', 'bgColor', 'libs'], + properties: { + name: { + type: 'string', + minLength: 1, + }, + uniqueClass: { + type: 'string', + minLength: 1, + // Not entirely correct, but good enough + pattern: /[a-zA-Z_][\w\-]*/ + }, + image: { + type: 'string', + minLength: 1, + pattern: /\/img\/.*/ + }, + bgColor: { + type: 'string', + minLength: 1 + }, + libs: { + type: 'array', + uniqueItems: true, + items: { + type: 'object', + required: ['minimumVersion', 'support', 'authorUrl', 'authorName', + 'gitHubRepoPath', 'repoUrl', 'installCommandHtml'], + properties: { + minimumVersion: { + type: ['null', 'string'], + minLength: 1 + }, + authorUrl: { + type: ['null', 'string'], + minLength: 1, + // Format validator fails on null values, sigh. + //format: 'url' + }, + authorName: { + type: 'string', + minLength: 1 + }, + gitHubRepoPath: { + type: ['null', 'string'], + minLength: 1, + // Not entirely correct, but good enough + pattern: /.*\/.*/ + }, + repoUrl: { + type: 'string', + minLength: 1, + format: 'url' + }, + installCommandHtml: { + type: 'string', + minLength: 1 + }, + support: { + type: 'object', + required: ['sign', 'verify', 'iss', 'sub', 'aud', 'exp', 'nbf', + 'iat', 'jti', 'hs256', 'hs384', 'hs512', 'rs256', + 'rs384', 'rs512', 'es256', 'es384', 'es512'], + properties: { + sign: { type: 'boolean' }, + verify: { type: 'boolean' }, + iss: { type: 'boolean' }, + sub: { type: 'boolean' }, + aud: { type: 'boolean' }, + exp: { type: 'boolean' }, + nbf: { type: 'boolean' }, + iat: { type: 'boolean' }, + jti: { type: 'boolean' }, + hs256: { type: 'boolean' }, + hs384: { type: 'boolean' }, + hs512: { type: 'boolean' }, + rs256: { type: 'boolean' }, + rs384: { type: 'boolean' }, + rs512: { type: 'boolean' }, + es256: { type: 'boolean' }, + es384: { type: 'boolean' }, + es512: { type: 'boolean' }, + } + } + } + } + } + } +}; diff --git a/webpack.website-unit-tests.js b/webpack.website-unit-tests.js index b3e85a39..8900ff4d 100644 --- a/webpack.website-unit-tests.js +++ b/webpack.website-unit-tests.js @@ -12,6 +12,9 @@ module.exports = merge(common, { path: __dirname + '/dist/test' }, target: 'node', + node: { + __dirname: true + }, module: { rules: [{ test: /\.js$/, From 7a265d18584f8b5304f04eca2aba8b47f55e372c Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Wed, 18 Apr 2018 15:52:39 +0200 Subject: [PATCH 012/456] fix fragment callback parsing, parse other possible tokens - fix parsing response_mode=fragment responses where the token is the first parameter - parse id_token and access_token in addition to value and token --- src/utils.js | 26 +++++++++++++++++++++++--- src/website/index.js | 13 ++++++------- 2 files changed, 29 insertions(+), 10 deletions(-) diff --git a/src/utils.js b/src/utils.js index 4a4d952b..e874ba09 100644 --- a/src/utils.js +++ b/src/utils.js @@ -1,6 +1,7 @@ import { KEYUTIL } from 'jsrsasign'; import log from 'loglevel'; import clipboard from 'clipboard-polyfill'; +import { isToken } from './editor/jwt.js'; export function httpGet(url, cache = true) { return new Promise((resolve, reject) => { @@ -117,6 +118,25 @@ export function copyTokenLink(token, publicKeyOptional) { return url; } +function regexp(body, flag) { + return new RegExp("[?&#]" + body + "(?:=([^&#]*)|&|#|$)", flag); +} + +const tokenRegexp = regexp('((?:id_|access_)?token)', 'g'); + +export function getTokensFromLocation() { + const { href } = window.location; + let name, value; + const val = {}; + + try { + while ([, name, value] = tokenRegexp.exec(href)) { + if(isToken(value)) val[name] = value; + } + } catch (err) {} + return val; +} + // https://stackoverflow.com/questions/901115/how-can-i-get-query-string-values-in-javascript export function getParameterByName(name, url) { if(!url) { @@ -125,16 +145,16 @@ export function getParameterByName(name, url) { name = name.replace(/[\[\]]/g, "\\$&"); - const regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"); + const regex = regexp(name); const results = regex.exec(url); if(!results) { return null; } - if(!results[2]) { + if(!results[1]) { return ''; } - return decodeURIComponent(results[2].replace(/\+/g, " ")); + return decodeURIComponent(results[1].replace(/\+/g, " ")); } export function isWideScreen() { diff --git a/src/website/index.js b/src/website/index.js index ec767c99..9160519e 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -5,7 +5,7 @@ import { setupTokenEditor, setTokenEditorValue } from '../editor'; import { setupJwtCounter } from './counter.js'; import { setupSmoothScrolling } from './smooth-scrolling.js'; import { setupHighlighting } from './highlighting.js'; -import { getParameterByName } from '../utils.js'; +import { getParameterByName, getTokensFromLocation } from '../utils.js'; import { isChrome, isFirefox } from './utils.js'; import { setupShareJwtButton } from '../share-button.js'; import { @@ -24,18 +24,17 @@ function parseLocationQuery() { const publicKey = getParameterByName('publicKey'); const value = getParameterByName('value'); const token = getParameterByName('token'); + const { id_token, access_token } = getTokensFromLocation(); let scroll = false; if(publicKey) { publicKeyTextArea.value = publicKey; scroll = true; } - if(value) { - setTokenEditorValue(value); - scroll = true; - } - if(token) { - setTokenEditorValue(token); + + const val = value || token || id_token || access_token; + if(val) { + setTokenEditorValue(val); scroll = true; } From 2ce0db101e0557b364083bd70cc585fd7416d54c Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Wed, 18 Apr 2018 17:11:47 +0200 Subject: [PATCH 013/456] add location parsing tests --- test/functional/editor.js | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/test/functional/editor.js b/test/functional/editor.js index c112a8da..7a10ca4c 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -31,6 +31,23 @@ describe('Editor', function() { await this.page.waitFor(3000); expect(await this.page.$eval('#debugger-io', isVisible)).to.be.true; }); + + const token = 'eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.'; + ['token', 'value', 'id_token', 'access_token'].forEach((key) => { + [ + `/?${key}=${token}`, + `/#${key}=${token}`, + `/?foo=bar&${key}=${token}`, + `/#foo=bar&${key}=${token}`, + ].forEach((structure, i) => { + it(`Should parse ${key} from window.location.href [${i}]`, async function () { + await this.page.goto(`http://localhost:8000${structure}${key}${i}`); + expect(await this.page.evaluate(() => { + return window.test.tokenEditor.getValue(); + })).to.equal(`${token}${key}${i}`); + }); + }) + }); it('HS256 should be selected by default', async function() { const selected = await this.page.$eval('#algorithm-select', select => { From 56bae1b9b67498c4d141d0b2026286806b45616d Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Wed, 18 Apr 2018 17:17:43 +0200 Subject: [PATCH 014/456] use getTokensFromLocation for all token params --- src/utils.js | 2 +- src/website/index.js | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/utils.js b/src/utils.js index e874ba09..335018ee 100644 --- a/src/utils.js +++ b/src/utils.js @@ -122,7 +122,7 @@ function regexp(body, flag) { return new RegExp("[?&#]" + body + "(?:=([^&#]*)|&|#|$)", flag); } -const tokenRegexp = regexp('((?:id_|access_)?token)', 'g'); +const tokenRegexp = regexp('((?:id_|access_)?token|value)', 'g'); export function getTokensFromLocation() { const { href } = window.location; diff --git a/src/website/index.js b/src/website/index.js index 9160519e..423d17ba 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -22,9 +22,7 @@ import { function parseLocationQuery() { const publicKey = getParameterByName('publicKey'); - const value = getParameterByName('value'); - const token = getParameterByName('token'); - const { id_token, access_token } = getTokensFromLocation(); + const { id_token, access_token, value, token } = getTokensFromLocation(); let scroll = false; if(publicKey) { From 91cfa3f44522baca10157fa84273c86f33bc5be5 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Wed, 18 Apr 2018 17:22:12 +0200 Subject: [PATCH 015/456] isolate parsing tests --- test/functional/editor.js | 36 +++++++++++++++++++----------------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/test/functional/editor.js b/test/functional/editor.js index 7a10ca4c..8a896f6b 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -31,23 +31,6 @@ describe('Editor', function() { await this.page.waitFor(3000); expect(await this.page.$eval('#debugger-io', isVisible)).to.be.true; }); - - const token = 'eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.'; - ['token', 'value', 'id_token', 'access_token'].forEach((key) => { - [ - `/?${key}=${token}`, - `/#${key}=${token}`, - `/?foo=bar&${key}=${token}`, - `/#foo=bar&${key}=${token}`, - ].forEach((structure, i) => { - it(`Should parse ${key} from window.location.href [${i}]`, async function () { - await this.page.goto(`http://localhost:8000${structure}${key}${i}`); - expect(await this.page.evaluate(() => { - return window.test.tokenEditor.getValue(); - })).to.equal(`${token}${key}${i}`); - }); - }) - }); it('HS256 should be selected by default', async function() { const selected = await this.page.$eval('#algorithm-select', select => { @@ -1168,4 +1151,23 @@ describe('Editor', function() { } ); }); + + describe('parsing tokens from window.location.href', () => { + const token = 'eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.'; + ['token', 'value', 'id_token', 'access_token'].forEach((key) => { + [ + `/?${key}=${token}`, + `/#${key}=${token}`, + `/?foo=bar&${key}=${token}`, + `/#foo=bar&${key}=${token}`, + ].forEach((structure, i) => { + it(`Should parse ${key} from window.location.href [${i}]`, async function () { + await this.page.goto(`http://localhost:8000${structure}${key}${i}`); + expect(await this.page.evaluate(() => { + return window.test.tokenEditor.getValue(); + })).to.equal(`${token}${key}${i}`); + }); + }) + }); + }); }); From 370fe1824964d842e2dda71724c717b7c430c78b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Fri, 20 Apr 2018 15:10:26 -0300 Subject: [PATCH 016/456] Removed stray code. --- src/editor/index.js | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/src/editor/index.js b/src/editor/index.js index e4ce07a8..f3a158df 100644 --- a/src/editor/index.js +++ b/src/editor/index.js @@ -341,17 +341,6 @@ function setupTabEvents() { }); } -function copyTokenHandler(event) { - event.preventDefault(); - - const token = getTrimmedValue(tokenEditor); - const publicKey = isPublicKeyAlgorithm(getSelectedAlgorithm()) ? - publicKeyTextArea.value : - null; - - copyTokenLink(token, publicKey); -} - function setupEvents() { // The event manager lets us enable/disable events as needed without // manually tracking them. Events that need to be disabled should be @@ -382,8 +371,6 @@ function setupEvents() { // Human readable timestamp tooltips payloadElement.addEventListener('mousemove', timeTooltipHandler); - // Temporary (share button not ready yet) - signatureStatusElement.addEventListener('click', copyTokenHandler); setupTabEvents(); } From a8c6480bbcf643bdbacf56a94052e9195d55824f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Fri, 20 Apr 2018 15:41:56 -0300 Subject: [PATCH 017/456] Do not put IDE files in .gitignore, handle them locally. --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 2be5df3e..9871fe48 100644 --- a/.gitignore +++ b/.gitignore @@ -3,4 +3,4 @@ dist .tmp .DS_Store npm-debug.log -.vscode + From 6845f51ca2cde237551654ce00924b4d4bee28e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Fri, 20 Apr 2018 17:46:59 -0300 Subject: [PATCH 018/456] Manual merge of PR #301: new Go library. --- views/website/libraries/9-Go.json | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index dfe0a814..34e13bbf 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -255,6 +255,34 @@ "gitHubRepoPath": "gbrlsnchs/jwt", "repoUrl": "https://github.com/gbrlsnchs/jwt", "installCommandHtml": "go get github.com/gbrlsnchs/jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/pascaldekloe", + "authorName": "Pascal de Kloe", + "gitHubRepoPath": "pascaldekloe/jwt", + "repoUrl": "https://github.com/pascaldekloe/jwt", + "installCommandHtml": "go get github.com/pascaldekloe/jwt" } ] } \ No newline at end of file From fbb63a56ad187f9ae88b47bbc385ea1d52a3f3ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Fri, 20 Apr 2018 19:11:06 -0300 Subject: [PATCH 019/456] Manual merge of PR #302: new Python library. --- views/website/libraries/1-Python.json | 28 +++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/views/website/libraries/1-Python.json b/views/website/libraries/1-Python.json index 1d352e1e..ddb6003c 100644 --- a/views/website/libraries/1-Python.json +++ b/views/website/libraries/1-Python.json @@ -87,6 +87,34 @@ "gitHubRepoPath": "latchset/jwcrypto", "repoUrl": "https://github.com/latchset/jwcrypto/", "installCommandHtml": "pip install jwcrypto" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/lepture", + "authorName": "Hsiaoming Yang", + "gitHubRepoPath": "lepture/authlib", + "repoUrl": "https://github.com/lepture/authlib", + "installCommandHtml": "pip install authlib" } ] } \ No newline at end of file From c920ad6768a2329abda5dcec21194ebfe6eb67a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Mon, 23 Apr 2018 19:53:15 -0300 Subject: [PATCH 020/456] Remove duplicate code, move functions of little use to better places. --- package-lock.json | 3 +- package.json | 3 +- src/editor/jwt.js | 32 ++++++++++++++++-- src/utils.js | 70 --------------------------------------- src/website/index.js | 31 ++++++++--------- test/functional/editor.js | 29 ++++++++++------ test/unit/editor/jwt.js | 37 +++++++++++++++++++-- test/unit/utils.js | 34 +------------------ 8 files changed, 102 insertions(+), 137 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3d534ec8..edd34dea 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9377,8 +9377,7 @@ "querystring": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", - "dev": true + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=" }, "querystring-es3": { "version": "0.2.1", diff --git a/package.json b/package.json index 49656fbf..c200e356 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,8 @@ }, "dependencies": { "express": "^4.16.2", - "express-sslify": "^1.2.0" + "express-sslify": "^1.2.0", + "querystring": "^0.2.0" }, "devDependencies": { "@babel/core": "^7.0.0-beta.36", diff --git a/src/editor/jwt.js b/src/editor/jwt.js index ebc78697..f51fe41b 100644 --- a/src/editor/jwt.js +++ b/src/editor/jwt.js @@ -1,5 +1,3 @@ -import { isValidBase64String } from '../utils.js'; - import { jws, KEYUTIL, @@ -127,6 +125,36 @@ export function decode(jwt) { return result; } +export function isValidBase64String(s, urlOnly) { + try { + const validChars = urlOnly ? + 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=' : + 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_+/='; + + let hasPadding = false; + for(let i = 0; i < s.length; ++i) { + hasPadding |= s.charAt(i) === '='; + if(validChars.indexOf(s.charAt(i)) === -1) { + return false; + } + } + + if(hasPadding) { + for(let i = s.indexOf('='); i < s.length; ++i) { + if(s.charAt(i) !== '=') { + return false; + } + } + + return s.length % 4 === 0; + } + + return true; + } catch (e) { + return false; + } +} + export function isToken(jwt, checkTypClaim = false) { const decoded = decode(jwt); diff --git a/src/utils.js b/src/utils.js index 335018ee..a32e7653 100644 --- a/src/utils.js +++ b/src/utils.js @@ -1,7 +1,6 @@ import { KEYUTIL } from 'jsrsasign'; import log from 'loglevel'; import clipboard from 'clipboard-polyfill'; -import { isToken } from './editor/jwt.js'; export function httpGet(url, cache = true) { return new Promise((resolve, reject) => { @@ -31,36 +30,6 @@ export function httpGet(url, cache = true) { }); } -export function isValidBase64String(s, urlOnly) { - try { - const validChars = urlOnly ? - 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=' : - 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_+/='; - - let hasPadding = false; - for(let i = 0; i < s.length; ++i) { - hasPadding |= s.charAt(i) === '='; - if(validChars.indexOf(s.charAt(i)) === -1) { - return false; - } - } - - if(hasPadding) { - for(let i = s.indexOf('='); i < s.length; ++i) { - if(s.charAt(i) !== '=') { - return false; - } - } - - return s.length % 4 === 0; - } - - return true; - } catch (e) { - return false; - } -}; - export function isValidKey(key) { // Four tries: no header, header for cert, header for pub key, // header for priv key @@ -118,45 +87,6 @@ export function copyTokenLink(token, publicKeyOptional) { return url; } -function regexp(body, flag) { - return new RegExp("[?&#]" + body + "(?:=([^&#]*)|&|#|$)", flag); -} - -const tokenRegexp = regexp('((?:id_|access_)?token|value)', 'g'); - -export function getTokensFromLocation() { - const { href } = window.location; - let name, value; - const val = {}; - - try { - while ([, name, value] = tokenRegexp.exec(href)) { - if(isToken(value)) val[name] = value; - } - } catch (err) {} - return val; -} - -// https://stackoverflow.com/questions/901115/how-can-i-get-query-string-values-in-javascript -export function getParameterByName(name, url) { - if(!url) { - url = window.location.href; - } - - name = name.replace(/[\[\]]/g, "\\$&"); - - const regex = regexp(name); - const results = regex.exec(url); - if(!results) { - return null; - } - if(!results[1]) { - return ''; - } - - return decodeURIComponent(results[1].replace(/\+/g, " ")); -} - export function isWideScreen() { return window.matchMedia('(min-width: 768px)').matches; } diff --git a/src/website/index.js b/src/website/index.js index 423d17ba..5ef8c40f 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -5,7 +5,6 @@ import { setupTokenEditor, setTokenEditorValue } from '../editor'; import { setupJwtCounter } from './counter.js'; import { setupSmoothScrolling } from './smooth-scrolling.js'; import { setupHighlighting } from './highlighting.js'; -import { getParameterByName, getTokensFromLocation } from '../utils.js'; import { isChrome, isFirefox } from './utils.js'; import { setupShareJwtButton } from '../share-button.js'; import { @@ -18,27 +17,29 @@ import { shareJwtTextElement } from './dom-elements.js'; +import queryString from 'querystring'; + /* For initialization, look at the end of this file */ function parseLocationQuery() { - const publicKey = getParameterByName('publicKey'); - const { id_token, access_token, value, token } = getTokensFromLocation(); + const locSearch = queryString.parse(document.location.search.substr(1)); + const locHash = queryString.parse(document.location.hash.substr(1)); - let scroll = false; - if(publicKey) { - publicKeyTextArea.value = publicKey; - scroll = true; - } + const token = locSearch.id_token || + locSearch.access_token || + locSearch.value || + locSearch.token; + if(token) { + setTokenEditorValue(token); - const val = value || token || id_token || access_token; - if(val) { - setTokenEditorValue(val); - scroll = true; - } + if(locSearch.publicKey) { + publicKeyTextArea.value = locSearch.publicKey; + } - if(scroll) { debuggerSection.scrollIntoView(true); - } + } else if(locHash.token) { // Legacy token passing method (as hash) + setTokenEditorValue(locHash.token); + } } function pickEbookOrExtensionBanner() { diff --git a/test/functional/editor.js b/test/functional/editor.js index 8a896f6b..87d8108b 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -726,7 +726,7 @@ describe('Editor', function() { }); it('Clears the token when the header is edited and there ' + - 'is no private key', async function() { + 'is no private key', async function() { await this.page.select('#algorithm-select', 'RS256'); const secretInput = await this.page.$('textarea[name="private-key"]'); @@ -1152,22 +1152,29 @@ describe('Editor', function() { ); }); - describe('parsing tokens from window.location.href', () => { - const token = 'eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.'; + describe('Parses tokens from window.location.href', () => { + const token = defaultTokens.hs384.token; + ['token', 'value', 'id_token', 'access_token'].forEach((key) => { + [ `/?${key}=${token}`, `/#${key}=${token}`, `/?foo=bar&${key}=${token}`, `/#foo=bar&${key}=${token}`, - ].forEach((structure, i) => { - it(`Should parse ${key} from window.location.href [${i}]`, async function () { - await this.page.goto(`http://localhost:8000${structure}${key}${i}`); - expect(await this.page.evaluate(() => { - return window.test.tokenEditor.getValue(); - })).to.equal(`${token}${key}${i}`); - }); - }) + ].forEach((searchStr, i) => { + this.timeout(20000); + + it(`Should parse ${key} from window.location.href [${i}]`, + async function () { + await this.page.goto(`http://localhost:8000${searchStr}`); + expect(await this.page.evaluate(() => { + return window.test.tokenEditor.getValue(); + })).to.equal(`${token}`); + }); + }); + }); + }); }); diff --git a/test/unit/editor/jwt.js b/test/unit/editor/jwt.js index 73f9afca..54e39f4c 100644 --- a/test/unit/editor/jwt.js +++ b/test/unit/editor/jwt.js @@ -1,11 +1,10 @@ import * as jwt from '../../../src/editor/jwt.js'; import tokens from '../../../src/editor/default-tokens.js'; -import { utf8tob64u, b64utob64 } from 'jsrsasign'; - +import { utf8tob64, utf8tob64u, b64utob64 } from 'jsrsasign'; import log from 'loglevel'; - import { should } from 'chai'; +import { randomFillSync } from 'crypto'; should(); @@ -200,4 +199,36 @@ describe('JWT', function() { jwt.verify(token, publicKeyPlainRSA).should.be.true; }); + + describe('isValidBase64String', function() { + // Generate random data of different sizes. + const data = []; + for(let i = 0; i < 1000; ++i) { + let bytes = new Uint8Array(i); + randomFillSync(bytes); + bytes = String.fromCharCode.apply(null, bytes); + + data.push({ + b64: utf8tob64(bytes), + b64u: utf8tob64u(bytes) + }); + } + + it('detects valid Base64 and Base64URL strings', function() { + data.forEach(d => { + jwt.isValidBase64String(d.b64, false).should.be.true; + jwt.isValidBase64String(d.b64u, false).should.be.true; + jwt.isValidBase64String(d.b64u).should.be.true; + jwt.isValidBase64String(d.b64u, true).should.be.true; + }); + }); + + it('fails on invalid Base64 and Base64 URL strings', function() { + data.forEach(d => { + if(d.b64.match(/[\+\/]/)) { + jwt.isValidBase64String(d.b64, true).should.be.false; + } + }); + }); + }); }); diff --git a/test/unit/utils.js b/test/unit/utils.js index 2430ad72..1d1af042 100644 --- a/test/unit/utils.js +++ b/test/unit/utils.js @@ -2,7 +2,7 @@ import chai from 'chai'; import chaiAsPromised from 'chai-as-promised'; import xhrMock from 'xhr-mock'; -import { httpGet, isValidBase64String } from '../../src/utils.js'; +import { httpGet } from '../../src/utils.js'; import { utf8tob64, utf8tob64u } from 'jsrsasign'; import { randomFillSync } from 'crypto'; @@ -11,38 +11,6 @@ chai.use(chaiAsPromised); chai.should(); describe('Generic utils', function() { - describe('isValidBase64String', function() { - // Generate random data of different sizes. - const data = []; - for(let i = 0; i < 1000; ++i) { - let bytes = new Uint8Array(i); - randomFillSync(bytes); - bytes = String.fromCharCode.apply(null, bytes); - - data.push({ - b64: utf8tob64(bytes), - b64u: utf8tob64u(bytes) - }); - } - - it('detects valid Base64 and Base64URL strings', function() { - data.forEach(d => { - isValidBase64String(d.b64, false).should.be.true; - isValidBase64String(d.b64u, false).should.be.true; - isValidBase64String(d.b64u).should.be.true; - isValidBase64String(d.b64u, true).should.be.true; - }); - }); - - it('fails on invalid Base64 and Base64 URL strings', function() { - data.forEach(d => { - if(d.b64.match(/[\+\/]/)) { - isValidBase64String(d.b64, true).should.be.false; - } - }); - }); - }); - describe('httpGet', function() { const url = '/'; const reply = 'test'; From 321f47b01d33fccc68f42f9c0af57c8eac13ab20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Mon, 23 Apr 2018 20:55:37 -0300 Subject: [PATCH 021/456] Better support for tokens passed in URL fragment/hash. --- src/website/index.js | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/src/website/index.js b/src/website/index.js index 5ef8c40f..e2b27d38 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -25,21 +25,22 @@ function parseLocationQuery() { const locSearch = queryString.parse(document.location.search.substr(1)); const locHash = queryString.parse(document.location.hash.substr(1)); - const token = locSearch.id_token || - locSearch.access_token || - locSearch.value || - locSearch.token; - if(token) { - setTokenEditorValue(token); - - if(locSearch.publicKey) { - publicKeyTextArea.value = locSearch.publicKey; - } + const keys = [ 'id_token', 'access_token', 'value', 'token']; + for(const key of keys) { + const token = locSearch[key] || locHash[key]; + + if(token) { + setTokenEditorValue(token); + + if(locSearch.publicKey) { + publicKeyTextArea.value = locSearch.publicKey; + } - debuggerSection.scrollIntoView(true); - } else if(locHash.token) { // Legacy token passing method (as hash) - setTokenEditorValue(locHash.token); - } + debuggerSection.scrollIntoView(true); + + break; + } + } } function pickEbookOrExtensionBanner() { From d235692dbca2497615a2ad52a3f5ce7eda361223 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Mon, 23 Apr 2018 23:34:59 -0300 Subject: [PATCH 022/456] Fixes #39: implements claim description tooltips. --- src/dom-elements.js | 3 ++ src/editor/claims-tooltip.js | 56 ++++++++++++++++++++++++++++++++++ src/editor/index.js | 3 ++ src/editor/time-tooltip.js | 4 +-- src/editor/utils.js | 4 ++- src/strings.js | 12 ++++++++ stylus/website/codemirror.styl | 4 +-- views/token-editor-common.pug | 1 + 8 files changed, 82 insertions(+), 5 deletions(-) create mode 100644 src/editor/claims-tooltip.js diff --git a/src/dom-elements.js b/src/dom-elements.js index 3cd8ed72..23d7ccfe 100644 --- a/src/dom-elements.js +++ b/src/dom-elements.js @@ -4,8 +4,11 @@ export const decodedTabLink = document.querySelector('.tab-link a[href="#decoded-jwt"]'); export const encodedTabElement = document.getElementById('encoded-jwt'); export const decodedTabElement = document.getElementById('decoded-jwt'); + export const editorElement = document.querySelector('#encoded-jwt .input'); export const decodedElement = document.querySelector('#decoded-jwt .output'); +export const claimsTooltipElement = + document.getElementById('js-claims-tooltip'); export const headerElement = document.querySelector('.js-header'); export const payloadElement = document.querySelector('.js-payload'); export const payloadTooltipElement = diff --git a/src/editor/claims-tooltip.js b/src/editor/claims-tooltip.js new file mode 100644 index 00000000..34b8fc8e --- /dev/null +++ b/src/editor/claims-tooltip.js @@ -0,0 +1,56 @@ +import { claimsTooltipElement } from '../dom-elements.js'; +import { timeClaims } from './time-tooltip.js'; +import { stringifyIndentSpaces } from './utils.js'; +import strings from '../strings.js'; + +function hideTooltip() { + claimsTooltipElement.style.display = 'none'; +} + +function showTooltip(x, y, text) { + claimsTooltipElement.firstChild.textContent = text; + claimsTooltipElement.style.left = x + 'px'; + claimsTooltipElement.style.top = y + 'px'; + claimsTooltipElement.style.display = 'block'; +} + +export function claimsTooltipHandler(event) { + const editor = event.currentTarget.querySelector('.CodeMirror').CodeMirror; + //const editor = event.currentTarget.firstChild.CodeMirror; + + if(!editor) { + return; + } + + const result = editor.coordsChar({ + left: event.pageX, + top: event.pageY + }, 'page'); + + const line = editor.getLine(result.line); + const matches = /"(.*)":\s*"?(.*)"?/.exec(line); + + if(!matches) { + hideTooltip(); + return; + } + + const claim = matches[1]; + + // If this is a time claim and the mouse cursor is on top of the time, + // let the time tooltip handle this, do nothing. + // TODO: merge both tooltip handlers? + const claimEnd = line.indexOf(':'); + if(result.ch >= claimEnd && timeClaims.includes(claim)) { + hideTooltip(); + return; + } + + const claimText = strings.common.claims[claim]; + if(!claimText) { + hideTooltip(); + return; + } + + showTooltip(event.pageX, event.pageY, claimText); +} diff --git a/src/editor/index.js b/src/editor/index.js index f3a158df..41861dea 100644 --- a/src/editor/index.js +++ b/src/editor/index.js @@ -5,6 +5,7 @@ import { } from '../utils.js'; import { downloadPublicKeyIfPossible } from './public-key-download.js'; import { timeTooltipHandler } from './time-tooltip.js'; +import { claimsTooltipHandler } from './claims-tooltip.js'; import { tokenEditor, headerEditor, payloadEditor } from './instances.js'; import { getTrimmedValue, @@ -371,6 +372,8 @@ function setupEvents() { // Human readable timestamp tooltips payloadElement.addEventListener('mousemove', timeTooltipHandler); + payloadElement.addEventListener('mousemove', claimsTooltipHandler); + headerElement.addEventListener('mousemove', claimsTooltipHandler); setupTabEvents(); } diff --git a/src/editor/time-tooltip.js b/src/editor/time-tooltip.js index 6211fd44..cac6d619 100644 --- a/src/editor/time-tooltip.js +++ b/src/editor/time-tooltip.js @@ -1,6 +1,8 @@ import { payloadEditor } from './instances.js'; import { payloadTooltipElement } from '../dom-elements.js'; +export const timeClaims = ['exp', 'nbf', 'iat', 'auth_time', 'updated_at']; + export function timeTooltipHandler(event) { const result = payloadEditor.coordsChar({ left: event.pageX, @@ -9,8 +11,6 @@ export function timeTooltipHandler(event) { const line = payloadEditor.getLine(result.line); - const timeClaims = ['exp', 'nbf', 'iat', 'auth_time', 'updated_at']; - const matches = /"(.*)":\s*"?(\d*)"?/.exec(line); if (matches && timeClaims.indexOf(matches[1]) !== -1) { const dateStr = (new Date(parseInt(matches[2], 10) * 1000)).toString(); diff --git a/src/editor/utils.js b/src/editor/utils.js index 403f1c1d..f8b0a4f2 100644 --- a/src/editor/utils.js +++ b/src/editor/utils.js @@ -22,8 +22,10 @@ export function fixEditorHeight() { } } +export const stringifyIndentSpaces = 2; + export function stringify(object) { - return JSON.stringify(object, null, 2); + return JSON.stringify(object, null, stringifyIndentSpaces); } export function getSelectedAlgorithm() { diff --git a/src/strings.js b/src/strings.js index 113a2457..261c1a4e 100644 --- a/src/strings.js +++ b/src/strings.js @@ -2,6 +2,18 @@ export default { common: { shareThisJwt: 'Share JWT', jwtIoUrlCopied: 'Copied', + claims: { + exp: 'Expiration time (seconds since Unix epoch)', + nbf: 'Not valid before (seconds since Unix epoch)', + iat: 'Issued at (seconds since Unix epoch)', + iss: 'Issuer: who created and signed this token', + sub: 'Subject: who the token refers to', + aud: 'Audience: who or what the token is intended for', + jti: 'JWT ID: unique identifier for this token', + typ: 'Type of token', + azp: 'Authorized party: the party to which this token was issued', + alg: 'Signature or encryption algorithm' + } }, extension: { alreadyInstalled: 'Already installed', diff --git a/stylus/website/codemirror.styl b/stylus/website/codemirror.styl index f3fef468..aed8f296 100644 --- a/stylus/website/codemirror.styl +++ b/stylus/website/codemirror.styl @@ -40,7 +40,7 @@ .text-line a, .CodeMirror * color #D63AFF -#js-payload-tooltip +#js-payload-tooltip, #js-claims-tooltip position absolute background-color #00b9f1 display none @@ -51,4 +51,4 @@ .jwt-playground .output .jwt-signature .text-line a, pre - color #00B9F1 \ No newline at end of file + color #00B9F1 diff --git a/views/token-editor-common.pug b/views/token-editor-common.pug index 4402ea2c..70a32537 100644 --- a/views/token-editor-common.pug +++ b/views/token-editor-common.pug @@ -12,6 +12,7 @@ .input.js-input #decoded-jwt.box-content .output + #js-claims-tooltip placeholder .jwt-explained.jwt-header p.text-line HEADER: span ALGORITHM & TOKEN TYPE From 8a474e38f2f25d6a1727d1456177c08515357fc3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Mon, 23 Apr 2018 23:48:32 -0300 Subject: [PATCH 023/456] Better strings. --- src/strings.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/strings.js b/src/strings.js index 261c1a4e..92de7bdf 100644 --- a/src/strings.js +++ b/src/strings.js @@ -6,12 +6,12 @@ export default { exp: 'Expiration time (seconds since Unix epoch)', nbf: 'Not valid before (seconds since Unix epoch)', iat: 'Issued at (seconds since Unix epoch)', - iss: 'Issuer: who created and signed this token', - sub: 'Subject: who the token refers to', - aud: 'Audience: who or what the token is intended for', - jti: 'JWT ID: unique identifier for this token', + iss: 'Issuer (who created and signed this token)', + sub: 'Subject (who the token refers to)', + aud: 'Audience (who or what the token is intended for)', + jti: 'JWT ID (unique identifier for this token)', typ: 'Type of token', - azp: 'Authorized party: the party to which this token was issued', + azp: 'Authorized party (the party to which this token was issued)', alg: 'Signature or encryption algorithm' } }, From 40ff55cb2aa8f81a9a9e7384f8a545cfe2fbc61b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Tue, 24 Apr 2018 18:15:18 -0300 Subject: [PATCH 024/456] Use tippy for claims tooltips. --- src/editor/claims-tooltip.js | 38 ++++++++++++++++++++++++++--------- src/editor/index.js | 5 ++--- views/token-editor-common.pug | 2 +- 3 files changed, 32 insertions(+), 13 deletions(-) diff --git a/src/editor/claims-tooltip.js b/src/editor/claims-tooltip.js index 34b8fc8e..124c886b 100644 --- a/src/editor/claims-tooltip.js +++ b/src/editor/claims-tooltip.js @@ -2,21 +2,25 @@ import { claimsTooltipElement } from '../dom-elements.js'; import { timeClaims } from './time-tooltip.js'; import { stringifyIndentSpaces } from './utils.js'; import strings from '../strings.js'; +import { + payloadElement, + headerElement, + decodedElement +} from '../dom-elements.js'; + +import tippy from 'tippy.js'; function hideTooltip() { - claimsTooltipElement.style.display = 'none'; + decodedElement._tippy.hide(); } -function showTooltip(x, y, text) { - claimsTooltipElement.firstChild.textContent = text; - claimsTooltipElement.style.left = x + 'px'; - claimsTooltipElement.style.top = y + 'px'; - claimsTooltipElement.style.display = 'block'; +function showTooltip(text) { + decodedElement.title = text; + decodedElement._tippy.show(); } -export function claimsTooltipHandler(event) { +function tooltipHandler(event) { const editor = event.currentTarget.querySelector('.CodeMirror').CodeMirror; - //const editor = event.currentTarget.firstChild.CodeMirror; if(!editor) { return; @@ -52,5 +56,21 @@ export function claimsTooltipHandler(event) { return; } - showTooltip(event.pageX, event.pageY, claimText); + showTooltip(claimText); +} + +export function setupClaimsTooltip() { + tippy(decodedElement, { + placement: 'left', + arrow: true, + followCursor: true, + performance: true, + size: 'large', + dynamicTitle: true, + arrowTransform: 'scale(0.75)', + distance: 20 + }); + + payloadElement.addEventListener('mousemove', tooltipHandler); + headerElement.addEventListener('mousemove', tooltipHandler); } diff --git a/src/editor/index.js b/src/editor/index.js index 41861dea..0d526c0b 100644 --- a/src/editor/index.js +++ b/src/editor/index.js @@ -5,7 +5,7 @@ import { } from '../utils.js'; import { downloadPublicKeyIfPossible } from './public-key-download.js'; import { timeTooltipHandler } from './time-tooltip.js'; -import { claimsTooltipHandler } from './claims-tooltip.js'; +import { setupClaimsTooltip } from './claims-tooltip.js'; import { tokenEditor, headerEditor, payloadEditor } from './instances.js'; import { getTrimmedValue, @@ -372,8 +372,6 @@ function setupEvents() { // Human readable timestamp tooltips payloadElement.addEventListener('mousemove', timeTooltipHandler); - payloadElement.addEventListener('mousemove', claimsTooltipHandler); - headerElement.addEventListener('mousemove', claimsTooltipHandler); setupTabEvents(); } @@ -397,4 +395,5 @@ export function setupTokenEditor() { loadToken(); fixEditorHeight(); setupSecretLengthTooltip(); + setupClaimsTooltip(); } diff --git a/views/token-editor-common.pug b/views/token-editor-common.pug index 70a32537..19bc0752 100644 --- a/views/token-editor-common.pug +++ b/views/token-editor-common.pug @@ -11,7 +11,7 @@ #encoded-jwt.box-content.current .input.js-input #decoded-jwt.box-content - .output + .output(title='placeholder') #js-claims-tooltip placeholder .jwt-explained.jwt-header p.text-line HEADER: From 50dc800f8d9c5519e6cce76fd3c10625e7878dd2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Tue, 24 Apr 2018 18:26:19 -0300 Subject: [PATCH 025/456] Merge time and claims tooltips. --- src/editor/claims-tooltip.js | 9 +++++++-- src/editor/index.js | 7 +------ src/editor/time-tooltip.js | 25 ------------------------- src/strings.js | 2 +- 4 files changed, 9 insertions(+), 34 deletions(-) delete mode 100644 src/editor/time-tooltip.js diff --git a/src/editor/claims-tooltip.js b/src/editor/claims-tooltip.js index 124c886b..f84f0fdc 100644 --- a/src/editor/claims-tooltip.js +++ b/src/editor/claims-tooltip.js @@ -1,5 +1,4 @@ import { claimsTooltipElement } from '../dom-elements.js'; -import { timeClaims } from './time-tooltip.js'; import { stringifyIndentSpaces } from './utils.js'; import strings from '../strings.js'; import { @@ -10,6 +9,8 @@ import { import tippy from 'tippy.js'; +const timeClaims = ['exp', 'nbf', 'iat', 'auth_time', 'updated_at']; + function hideTooltip() { decodedElement._tippy.hide(); } @@ -19,6 +20,10 @@ function showTooltip(text) { decodedElement._tippy.show(); } +function getTimeText(timeStr) { + return (new Date(parseInt(timeStr, 10) * 1000)).toString(); +} + function tooltipHandler(event) { const editor = event.currentTarget.querySelector('.CodeMirror').CodeMirror; @@ -46,7 +51,7 @@ function tooltipHandler(event) { // TODO: merge both tooltip handlers? const claimEnd = line.indexOf(':'); if(result.ch >= claimEnd && timeClaims.includes(claim)) { - hideTooltip(); + showTooltip(getTimeText(matches[2])); return; } diff --git a/src/editor/index.js b/src/editor/index.js index 0d526c0b..3e25d3c9 100644 --- a/src/editor/index.js +++ b/src/editor/index.js @@ -4,7 +4,6 @@ import { copyTokenLink } from '../utils.js'; import { downloadPublicKeyIfPossible } from './public-key-download.js'; -import { timeTooltipHandler } from './time-tooltip.js'; import { setupClaimsTooltip } from './claims-tooltip.js'; import { tokenEditor, headerEditor, payloadEditor } from './instances.js'; import { @@ -367,12 +366,8 @@ function setupEvents() { // (only verified). eventManager.addDomEvent(publicKeyTextArea, 'input', verifyToken); - // The following event are never disabled, so it is not necessary to go + // The following events are never disabled, so it is not necessary to go // through the event manager for them. - - // Human readable timestamp tooltips - payloadElement.addEventListener('mousemove', timeTooltipHandler); - setupTabEvents(); } diff --git a/src/editor/time-tooltip.js b/src/editor/time-tooltip.js deleted file mode 100644 index cac6d619..00000000 --- a/src/editor/time-tooltip.js +++ /dev/null @@ -1,25 +0,0 @@ -import { payloadEditor } from './instances.js'; -import { payloadTooltipElement } from '../dom-elements.js'; - -export const timeClaims = ['exp', 'nbf', 'iat', 'auth_time', 'updated_at']; - -export function timeTooltipHandler(event) { - const result = payloadEditor.coordsChar({ - left: event.pageX, - top: event.pageY - }, 'page'); - - const line = payloadEditor.getLine(result.line); - - const matches = /"(.*)":\s*"?(\d*)"?/.exec(line); - if (matches && timeClaims.indexOf(matches[1]) !== -1) { - const dateStr = (new Date(parseInt(matches[2], 10) * 1000)).toString(); - payloadTooltipElement.firstChild.textContent = dateStr; - payloadTooltipElement.style.left = event.pageX + 'px'; - payloadTooltipElement.style.top = event.pageY + 'px'; - - payloadTooltipElement.style.display = 'block'; - } else { - payloadTooltipElement.style.display = 'none'; - } -} diff --git a/src/strings.js b/src/strings.js index 92de7bdf..0861ece4 100644 --- a/src/strings.js +++ b/src/strings.js @@ -7,7 +7,7 @@ export default { nbf: 'Not valid before (seconds since Unix epoch)', iat: 'Issued at (seconds since Unix epoch)', iss: 'Issuer (who created and signed this token)', - sub: 'Subject (who the token refers to)', + sub: 'Subject (whom the token refers to)', aud: 'Audience (who or what the token is intended for)', jti: 'JWT ID (unique identifier for this token)', typ: 'Type of token', From 4d9559a48786a66b4d2bbf462d0c3cb643c002d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Tue, 24 Apr 2018 21:23:59 -0300 Subject: [PATCH 026/456] More claims are now explained. --- src/strings.js | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/strings.js b/src/strings.js index 0861ece4..8296109d 100644 --- a/src/strings.js +++ b/src/strings.js @@ -12,7 +12,20 @@ export default { jti: 'JWT ID (unique identifier for this token)', typ: 'Type of token', azp: 'Authorized party (the party to which this token was issued)', - alg: 'Signature or encryption algorithm' + alg: 'Signature or encryption algorithm', + jku: 'JSON Web Key Set URL', + jwk: 'JSON Web Key Set (embedded)', + kid: 'Key ID', + x5u: 'X.509 Certificate URL', + x5t: 'X.509 Fingerprint (SHA-1)', + 'x5t#S256': 'X.509 Fingerprint (SHA-256)', + cty: 'Content type', + crit: 'Extensions or claims that MUST be processed or verified', + enc: 'Encryption algorithm', + zip: 'Compression algorithm', + kty: 'Key type', + use: 'Intended use of key: "sig" or "enc" (other values accepted)', + key_ops: 'Intended operations for this key' } }, extension: { From 676aa2c5a072f9dba018351a4b83113e70dfa522 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Tue, 24 Apr 2018 21:25:44 -0300 Subject: [PATCH 027/456] Remove old tooltip code. --- src/dom-elements.js | 5 +---- stylus/website/codemirror.styl | 9 --------- views/token-editor-common.pug | 2 -- 3 files changed, 1 insertion(+), 15 deletions(-) diff --git a/src/dom-elements.js b/src/dom-elements.js index 23d7ccfe..f8e45867 100644 --- a/src/dom-elements.js +++ b/src/dom-elements.js @@ -7,12 +7,9 @@ export const decodedTabElement = document.getElementById('decoded-jwt'); export const editorElement = document.querySelector('#encoded-jwt .input'); export const decodedElement = document.querySelector('#decoded-jwt .output'); -export const claimsTooltipElement = - document.getElementById('js-claims-tooltip'); + export const headerElement = document.querySelector('.js-header'); export const payloadElement = document.querySelector('.js-payload'); -export const payloadTooltipElement = - document.getElementById('js-payload-tooltip'); export const signatureStatusElement = document.querySelector('.validation-status.js-signature'); diff --git a/stylus/website/codemirror.styl b/stylus/website/codemirror.styl index aed8f296..48b81b2e 100644 --- a/stylus/website/codemirror.styl +++ b/stylus/website/codemirror.styl @@ -40,15 +40,6 @@ .text-line a, .CodeMirror * color #D63AFF -#js-payload-tooltip, #js-claims-tooltip - position absolute - background-color #00b9f1 - display none - color white - z-index 9999 - padding 0 4pt - margin-left 4pt - .jwt-playground .output .jwt-signature .text-line a, pre color #00B9F1 diff --git a/views/token-editor-common.pug b/views/token-editor-common.pug index 19bc0752..c85ec135 100644 --- a/views/token-editor-common.pug +++ b/views/token-editor-common.pug @@ -12,7 +12,6 @@ .input.js-input #decoded-jwt.box-content .output(title='placeholder') - #js-claims-tooltip placeholder .jwt-explained.jwt-header p.text-line HEADER: span ALGORITHM & TOKEN TYPE @@ -22,7 +21,6 @@ p.text-line PAYLOAD: span DATA .js-payload - #js-payload-tooltip placeholder .jwt-explained.jwt-signature p.text-line VERIFY SIGNATURE From e38c9c202e1da05a497d5da2652f0559c9bc8545 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Tue, 24 Apr 2018 22:20:39 -0300 Subject: [PATCH 028/456] Fix tests for new tooltip method. --- test/functional/editor.js | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/test/functional/editor.js b/test/functional/editor.js index 87d8108b..102ce728 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -69,13 +69,17 @@ describe('Editor', function() { } }); - it('Should display a tooltip with a human readable ' + - 'date on claim hover', async function() { + it('Should display a tooltip for a claim', async function() { await this.page.select('#algorithm-select', 'HS384'); - + await this.page.mouse.move(0, 0); + + function tippyVisible(element) { + return element._tippy.state.visible; + } - expect(await this.page.$eval('#js-payload-tooltip', isVisible)).to.be.false; + expect(await this.page.$eval('#decoded-jwt .output', tippyVisible)). + to.be.false; const iatPos = await this.page.evaluate(() => { return window.test.payloadEditor.charCoords({ @@ -86,7 +90,11 @@ describe('Editor', function() { await this.page.mouse.move(iatPos.left, iatPos.top); - expect(await this.page.$eval('#js-payload-tooltip', isVisible)).to.be.true; + // Wait for animation + await this.page.waitFor(2000); + + expect(await this.page.$eval('#decoded-jwt .output', tippyVisible)) + .to.be.true; }); it('Displays a valid token by default', async function() { From 7628617ae9ac3b94c1c972174ce3dcce91006793 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 25 Apr 2018 16:12:04 -0300 Subject: [PATCH 029/456] Improve behavior of claims tooltips, especially in Firefox. --- src/editor/claims-tooltip.js | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/src/editor/claims-tooltip.js b/src/editor/claims-tooltip.js index f84f0fdc..e2564e1c 100644 --- a/src/editor/claims-tooltip.js +++ b/src/editor/claims-tooltip.js @@ -12,12 +12,14 @@ import tippy from 'tippy.js'; const timeClaims = ['exp', 'nbf', 'iat', 'auth_time', 'updated_at']; function hideTooltip() { - decodedElement._tippy.hide(); + decodedElement._tippy.popper.style.opacity = 0; } function showTooltip(text) { - decodedElement.title = text; - decodedElement._tippy.show(); + decodedElement._tippy.popper.querySelector('.tippy-content') + .textContent = text; + decodedElement._tippy.popperInstance.update(); + decodedElement._tippy.popper.style.opacity = 1; } function getTimeText(timeStr) { @@ -28,6 +30,7 @@ function tooltipHandler(event) { const editor = event.currentTarget.querySelector('.CodeMirror').CodeMirror; if(!editor) { + hideTooltip(); return; } @@ -64,8 +67,8 @@ function tooltipHandler(event) { showTooltip(claimText); } -export function setupClaimsTooltip() { - tippy(decodedElement, { +export function setupClaimsTooltip() { + tippy(decodedElement, { placement: 'left', arrow: true, followCursor: true, @@ -73,8 +76,12 @@ export function setupClaimsTooltip() { size: 'large', dynamicTitle: true, arrowTransform: 'scale(0.75)', - distance: 20 - }); + distance: 20, + sticky: true, + updateDuration: 100 + }); + + decodedElement._tippy.popper.style.opacity = 0; payloadElement.addEventListener('mousemove', tooltipHandler); headerElement.addEventListener('mousemove', tooltipHandler); From 9f1ce9d8a0df7f2a413f94777ebab07b3d33db00 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 25 Apr 2018 16:16:29 -0300 Subject: [PATCH 030/456] Version 2.1.0. --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c200e356..ed8aa5ec 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jwt.io", - "version": "2.0.0", + "version": "2.1.0", "repository": { "type": "git", "url": "https://github.com/jsonwebtoken/jsonwebtoken.github.io" From b3320cc0a2216751dd22328c4e56495c3e6201be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 25 Apr 2018 16:55:19 -0300 Subject: [PATCH 031/456] Extension version 2.1.0 --- manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifest.json b/manifest.json index e26a9f8d..2c80216d 100644 --- a/manifest.json +++ b/manifest.json @@ -3,7 +3,7 @@ "name": "JWT Debugger", "description": "The JWT.io debugger as a Web Extension", - "version": "2.0.2", + "version": "2.1.0", "browser_action": { "default_icon": "img/favicon/favicon-96x96.png", From 25c556ad2eff6a1456137312712588d346438a3b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 25 Apr 2018 19:19:49 -0300 Subject: [PATCH 032/456] Fix shared token display. --- src/website/index.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/website/index.js b/src/website/index.js index e2b27d38..1d3b56c9 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -25,7 +25,13 @@ function parseLocationQuery() { const locSearch = queryString.parse(document.location.search.substr(1)); const locHash = queryString.parse(document.location.hash.substr(1)); - const keys = [ 'id_token', 'access_token', 'value', 'token']; + const keys = [ + 'id_token', + 'access_token', + 'value', + 'token', + 'debugger-io?token' + ]; for(const key of keys) { const token = locSearch[key] || locHash[key]; From 46d9ac99f40bd879df7d1858f71f18eef427e333 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 25 Apr 2018 19:20:11 -0300 Subject: [PATCH 033/456] Version 2.1.1. --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index ed8aa5ec..2c88cca0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jwt.io", - "version": "2.1.0", + "version": "2.1.1", "repository": { "type": "git", "url": "https://github.com/jsonwebtoken/jsonwebtoken.github.io" From cd8ef045cf88cc53b6e0a050210323c640dfbc3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 25 Apr 2018 20:00:52 -0300 Subject: [PATCH 034/456] Share button tests fixes. --- test/functional/editor.js | 35 ++++++++++++++++++++++++++++------- 1 file changed, 28 insertions(+), 7 deletions(-) diff --git a/test/functional/editor.js b/test/functional/editor.js index 102ce728..de68b7c5 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -1078,7 +1078,8 @@ describe('Editor', function() { window.test.shareJwtCopiedUrl); const newPage = await this.browser.newPage(); - await newPage.goto(copiedUrl); + await newPage.goto( + copiedUrl.replace('https://jwt.io/', 'http://localhost:8000/')); const destToken = await newPage.evaluate(() => window.test.tokenEditor.getValue()); @@ -1147,7 +1148,8 @@ describe('Editor', function() { window.test.shareJwtCopiedUrl); const newPage = await this.browser.newPage(); - await newPage.goto(copiedUrl); + await newPage.goto( + copiedUrl.replace('https://jwt.io/', 'http://localhost:8000/')); const destToken = await newPage.evaluate(() => window.test.tokenEditor.getValue()); @@ -1169,19 +1171,38 @@ describe('Editor', function() { `/?${key}=${token}`, `/#${key}=${token}`, `/?foo=bar&${key}=${token}`, - `/#foo=bar&${key}=${token}`, + `/#foo=bar&${key}=${token}` ].forEach((searchStr, i) => { this.timeout(20000); it(`Should parse ${key} from window.location.href [${i}]`, async function () { - await this.page.goto(`http://localhost:8000${searchStr}`); - expect(await this.page.evaluate(() => { + const page = await this.browser.newPage(); + + await page.goto(`http://localhost:8000${searchStr}`); + + expect(await page.evaluate(() => { return window.test.tokenEditor.getValue(); - })).to.equal(`${token}`); + })).to.equal(token); + + await page.close(); }); - }); + }); + + }); + + it('Parses shared token', async function() { + this.timeout(20000); + + const page = await this.browser.newPage(); + + await page.goto(`http://localhost:8000/#debugger-io?token=${token}`); + + expect(await page.evaluate(() => { + return window.test.tokenEditor.getValue(); + })).to.equal(token); + await page.close(); }); }); From ff320f9a3728b7e49f0e350b03dccfac2bf8776d Mon Sep 17 00:00:00 2001 From: blainehansen Date: Wed, 25 Apr 2018 17:17:35 -0600 Subject: [PATCH 035/456] removing field checks for GildedHonour/rust-jwt --- views/website/libraries/13-Rust.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/views/website/libraries/13-Rust.json b/views/website/libraries/13-Rust.json index 029af015..ae500fe8 100644 --- a/views/website/libraries/13-Rust.json +++ b/views/website/libraries/13-Rust.json @@ -9,13 +9,13 @@ "support": { "sign": true, "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, "hs256": true, "hs384": true, "hs512": true, From 82d02424aa4e8bec55289aad8727e383adc9c81b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 25 Apr 2018 22:15:31 -0300 Subject: [PATCH 036/456] Fix buggy tooltips. --- package-lock.json | 2 +- package.json | 2 +- src/editor/claims-tooltip.js | 75 ++++++++++++++++++++++++----------- test/functional/editor.js | 4 +- views/token-editor-common.pug | 2 +- 5 files changed, 57 insertions(+), 28 deletions(-) diff --git a/package-lock.json b/package-lock.json index edd34dea..7963fcab 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "jwt.io", - "version": "2.0.0", + "version": "2.1.1", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 2c88cca0..bfa9b1d5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jwt.io", - "version": "2.1.1", + "version": "2.1.2", "repository": { "type": "git", "url": "https://github.com/jsonwebtoken/jsonwebtoken.github.io" diff --git a/src/editor/claims-tooltip.js b/src/editor/claims-tooltip.js index e2564e1c..d65e251a 100644 --- a/src/editor/claims-tooltip.js +++ b/src/editor/claims-tooltip.js @@ -11,15 +11,50 @@ import tippy from 'tippy.js'; const timeClaims = ['exp', 'nbf', 'iat', 'auth_time', 'updated_at']; +let instance; + function hideTooltip() { - decodedElement._tippy.popper.style.opacity = 0; + if(instance) { + instance.destroy(); + instance = null; + } } -function showTooltip(text) { - decodedElement._tippy.popper.querySelector('.tippy-content') - .textContent = text; - decodedElement._tippy.popperInstance.update(); - decodedElement._tippy.popper.style.opacity = 1; +function showTooltip(element, text, placement) { + function newTooltip() { + element.title = text; + + tippy(element, { + placement: placement, + arrow: true, + performance: true, + size: 'large', + dynamicTitle: true, + arrowTransform: 'scale(0.75)', + distance: 10, + updateDuration: 100, + trigger: 'manual' + }); + + return element._tippy; + } + + if(instance) { + if(instance.reference !== element || + instance.options.placement !== placement) { + instance.destroy(); + instance = newTooltip(); + } else if(instance.popper.querySelector('.tippy-content').textContent !== + text) { + instance.popper.querySelector('.tippy-content').textContent = text; + } + } else { + instance = newTooltip(); + } + + if(!instance.state.visible) { + instance.show(); + } } function getTimeText(timeStr) { @@ -49,12 +84,21 @@ function tooltipHandler(event) { const claim = matches[1]; + const element = event.target.tagName === 'SPAN' ? + event.target : + event.target.querySelector('span'); + + if(!element || element.tagName !== 'SPAN') { + hideTooltip(); + return; + } + // If this is a time claim and the mouse cursor is on top of the time, // let the time tooltip handle this, do nothing. // TODO: merge both tooltip handlers? const claimEnd = line.indexOf(':'); if(result.ch >= claimEnd && timeClaims.includes(claim)) { - showTooltip(getTimeText(matches[2])); + showTooltip(element, getTimeText(matches[2]), 'right'); return; } @@ -64,25 +108,10 @@ function tooltipHandler(event) { return; } - showTooltip(claimText); + showTooltip(element, claimText, 'left'); } export function setupClaimsTooltip() { - tippy(decodedElement, { - placement: 'left', - arrow: true, - followCursor: true, - performance: true, - size: 'large', - dynamicTitle: true, - arrowTransform: 'scale(0.75)', - distance: 20, - sticky: true, - updateDuration: 100 - }); - - decodedElement._tippy.popper.style.opacity = 0; - payloadElement.addEventListener('mousemove', tooltipHandler); headerElement.addEventListener('mousemove', tooltipHandler); } diff --git a/test/functional/editor.js b/test/functional/editor.js index de68b7c5..019a4535 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -78,7 +78,7 @@ describe('Editor', function() { return element._tippy.state.visible; } - expect(await this.page.$eval('#decoded-jwt .output', tippyVisible)). + expect(await this.page.$eval('[data-tippy]', tippyVisible)). to.be.false; const iatPos = await this.page.evaluate(() => { @@ -93,7 +93,7 @@ describe('Editor', function() { // Wait for animation await this.page.waitFor(2000); - expect(await this.page.$eval('#decoded-jwt .output', tippyVisible)) + expect(await this.page.$eval('[data-tippy]', tippyVisible)) .to.be.true; }); diff --git a/views/token-editor-common.pug b/views/token-editor-common.pug index c85ec135..7c5bc138 100644 --- a/views/token-editor-common.pug +++ b/views/token-editor-common.pug @@ -11,7 +11,7 @@ #encoded-jwt.box-content.current .input.js-input #decoded-jwt.box-content - .output(title='placeholder') + .output .jwt-explained.jwt-header p.text-line HEADER: span ALGORITHM & TOKEN TYPE From ca4f2912267214e44d5a2c2098ebdba46b5ea955 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 25 Apr 2018 22:21:29 -0300 Subject: [PATCH 037/456] Extension version 2.1.1. --- manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifest.json b/manifest.json index 2c80216d..f4695975 100644 --- a/manifest.json +++ b/manifest.json @@ -3,7 +3,7 @@ "name": "JWT Debugger", "description": "The JWT.io debugger as a Web Extension", - "version": "2.1.0", + "version": "2.1.1", "browser_action": { "default_icon": "img/favicon/favicon-96x96.png", From f23e2a5b7c1760ad3058fe85cdb8333cd27ea95f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 25 Apr 2018 22:21:48 -0300 Subject: [PATCH 038/456] Fix analytics for the extension (inline scripts are limited in extensions). --- src/extension/index.js | 1 + src/google-analytics.js | 13 +++++++++++++ src/website/index.js | 1 + views/extension/layout.pug | 17 +---------------- 4 files changed, 16 insertions(+), 16 deletions(-) create mode 100644 src/google-analytics.js diff --git a/src/extension/index.js b/src/extension/index.js index 30732430..188c3c3f 100644 --- a/src/extension/index.js +++ b/src/extension/index.js @@ -1,3 +1,4 @@ +import '../google-analytics.js'; import { setupTokenEditor, setTokenEditorValue, diff --git a/src/google-analytics.js b/src/google-analytics.js new file mode 100644 index 00000000..a54f80ff --- /dev/null +++ b/src/google-analytics.js @@ -0,0 +1,13 @@ +//Google Analytics +var _gaq = _gaq || []; +_gaq.push(['_setAccount', 'UA-37952868-23']); +_gaq.push(['_trackPageview']); + +(function() { + var ga = document.createElement('script'); + ga.type = 'text/javascript'; + ga.async = true; + ga.src = 'https://ssl.google-analytics.com/ga.js'; + var s = document.getElementsByTagName('script')[0]; + s.parentNode.insertBefore(ga, s); +})(); diff --git a/src/website/index.js b/src/website/index.js index 1d3b56c9..11902985 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -1,3 +1,4 @@ +import '../google-analytics.js'; import { setupNavbar } from './navbar.js'; import { setupExtensionButton } from './extension.js'; import { setupLibraries } from './libraries.js'; diff --git a/views/extension/layout.pug b/views/extension/layout.pug index 8dea998d..8c0e143d 100644 --- a/views/extension/layout.pug +++ b/views/extension/layout.pug @@ -5,19 +5,4 @@ html(lang='en') include ../stylesheets.pug body - block content - - script. - //Google Analytics - var _gaq = _gaq || []; - _gaq.push(['_setAccount', 'UA-37952868-23']); - _gaq.push(['_trackPageview']); - - (function() { - var ga = document.createElement('script'); - ga.type = 'text/javascript'; - ga.async = true; - ga.src = 'https://ssl.google-analytics.com/ga.js'; - var s = document.getElementsByTagName('script')[0]; - s.parentNode.insertBefore(ga, s); - })(); + block content \ No newline at end of file From 25ecc468df3b9c8c68a4799fa69ce8a1eac2a8ed Mon Sep 17 00:00:00 2001 From: Wilder Pereira Date: Thu, 26 Apr 2018 00:10:07 -0300 Subject: [PATCH 039/456] Add link to Gruntfile --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 0bdc9806..c7471c70 100644 --- a/README.md +++ b/README.md @@ -104,6 +104,6 @@ To run tests, execute: ./node_modules/.bin/grunt test ``` -Look at the end of the `Gruntfile` for other common tasks. +Look at the end of the [Gruntfile](/Gruntfile.js) for other common tasks. ### Happy hacking! From 96f07ce23444f72689922d4de7e2cb80b23f4748 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Thu, 26 Apr 2018 11:48:19 +0200 Subject: [PATCH 040/456] add `sid` tooltip `sid` ID Token/Logout Token claim used in the session management/logout family of specs - https://openid.net/specs/openid-connect-session-1_0.html - https://openid.net/specs/openid-connect-frontchannel-1_0.html - https://openid.net/specs/openid-connect-backchannel-1_0.html --- src/strings.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings.js b/src/strings.js index 8296109d..01a58972 100644 --- a/src/strings.js +++ b/src/strings.js @@ -25,7 +25,8 @@ export default { zip: 'Compression algorithm', kty: 'Key type', use: 'Intended use of key: "sig" or "enc" (other values accepted)', - key_ops: 'Intended operations for this key' + key_ops: 'Intended operations for this key' , + sid: 'Session ID (String identifier for a Session)' } }, extension: { From 4c60ed475d44d1ca0100fbcf47055c1e8f1da485 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Thu, 26 Apr 2018 12:02:32 +0200 Subject: [PATCH 041/456] add node-jose --- views/website/libraries/4-JavaScript.json | 30 ++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/4-JavaScript.json b/views/website/libraries/4-JavaScript.json index 612d1875..0e21ca06 100644 --- a/views/website/libraries/4-JavaScript.json +++ b/views/website/libraries/4-JavaScript.json @@ -59,6 +59,34 @@ "gitHubRepoPath": "square/js-jose", "repoUrl": "https://github.com/square/js-jose", "installCommandHtml": "npm install jose-jwe-jws" + }, + { + "minimumVersion": "0.9.4", + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/cisco", + "authorName": "Cisco Systems", + "gitHubRepoPath": "cisco/node-jose", + "repoUrl": "https://github.com/cisco/node-jose", + "installCommandHtml": "npm install node-jose" } ] -} \ No newline at end of file +} From c8f2518aee2acf7ff0f2c497b987720dd3a377ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Thu, 26 Apr 2018 15:56:38 -0300 Subject: [PATCH 042/456] Minor formatting fix. --- src/strings.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings.js b/src/strings.js index 01a58972..bcd77c25 100644 --- a/src/strings.js +++ b/src/strings.js @@ -25,7 +25,7 @@ export default { zip: 'Compression algorithm', kty: 'Key type', use: 'Intended use of key: "sig" or "enc" (other values accepted)', - key_ops: 'Intended operations for this key' , + key_ops: 'Intended operations for this key', sid: 'Session ID (String identifier for a Session)' } }, From 0431f15e459c70c6feb1c41da0a381b0a19a8c0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Thu, 26 Apr 2018 19:38:05 -0300 Subject: [PATCH 043/456] More common claim descriptions (for tooltips). --- src/strings.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/strings.js b/src/strings.js index bcd77c25..8151b804 100644 --- a/src/strings.js +++ b/src/strings.js @@ -26,7 +26,10 @@ export default { kty: 'Key type', use: 'Intended use of key: "sig" or "enc" (other values accepted)', key_ops: 'Intended operations for this key', - sid: 'Session ID (String identifier for a Session)' + sid: 'Session ID (String identifier for a Session)', + updated_at: 'Last modification timestamp', + at_hash: 'SHA-256 of leftmost half of this token', + nonce: 'Unique value associating request to token' } }, extension: { From c3e387928b0216e688bac32e084053c8ddf3ae6c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Thu, 26 Apr 2018 19:41:30 -0300 Subject: [PATCH 044/456] More claim descriptions for tooltips. --- src/strings.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/strings.js b/src/strings.js index 8151b804..a89b4da5 100644 --- a/src/strings.js +++ b/src/strings.js @@ -29,7 +29,10 @@ export default { sid: 'Session ID (String identifier for a Session)', updated_at: 'Last modification timestamp', at_hash: 'SHA-256 of leftmost half of this token', - nonce: 'Unique value associating request to token' + nonce: 'Unique value associating request to token', + auth_time: 'Time when authentication occurred', + amr: 'Authentication methods array', + acr: 'Authentication context class' } }, extension: { From 41fb96e5658cd330d0f85375dc451fba014eeaa5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Thu, 26 Apr 2018 19:53:45 -0300 Subject: [PATCH 045/456] Fix date parsing for claims tooltips. --- src/editor/claims-tooltip.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/editor/claims-tooltip.js b/src/editor/claims-tooltip.js index d65e251a..f1516e86 100644 --- a/src/editor/claims-tooltip.js +++ b/src/editor/claims-tooltip.js @@ -58,7 +58,15 @@ function showTooltip(element, text, placement) { } function getTimeText(timeStr) { - return (new Date(parseInt(timeStr, 10) * 1000)).toString(); + try { + if(/\d+,/.test(timeStr)) { + return (new Date(parseInt(timeStr, 10) * 1000)).toString(); + } else { + return (new Date(timeStr.replace(/[",]/g, ''))).toString(); + } + } catch(e) { + return 'Invalid date'; + } } function tooltipHandler(event) { From f11722985668107612e8b77d18dce02301afd371 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Thu, 26 Apr 2018 19:56:55 -0300 Subject: [PATCH 046/456] Fix date parsing. --- src/editor/claims-tooltip.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/editor/claims-tooltip.js b/src/editor/claims-tooltip.js index f1516e86..fb2b16ec 100644 --- a/src/editor/claims-tooltip.js +++ b/src/editor/claims-tooltip.js @@ -59,7 +59,7 @@ function showTooltip(element, text, placement) { function getTimeText(timeStr) { try { - if(/\d+,/.test(timeStr)) { + if(/\d+,?$/.test(timeStr)) { return (new Date(parseInt(timeStr, 10) * 1000)).toString(); } else { return (new Date(timeStr.replace(/[",]/g, ''))).toString(); From 9c47faf37472f318406cd522739e5f4fabd5ffa8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Thu, 26 Apr 2018 19:57:07 -0300 Subject: [PATCH 047/456] Version bump: website-2.1.3, extension-2.1.2. --- manifest.json | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/manifest.json b/manifest.json index f4695975..3e483cb4 100644 --- a/manifest.json +++ b/manifest.json @@ -3,7 +3,7 @@ "name": "JWT Debugger", "description": "The JWT.io debugger as a Web Extension", - "version": "2.1.1", + "version": "2.1.2", "browser_action": { "default_icon": "img/favicon/favicon-96x96.png", diff --git a/package.json b/package.json index bfa9b1d5..59467ea2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jwt.io", - "version": "2.1.2", + "version": "2.1.3", "repository": { "type": "git", "url": "https://github.com/jsonwebtoken/jsonwebtoken.github.io" From 6e6ffb257e12a21e32779362220ada576efec3aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Thu, 26 Apr 2018 19:59:42 -0300 Subject: [PATCH 048/456] Fix tooltip flickering on Firefox. --- src/editor/secret-length-tooltip.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/editor/secret-length-tooltip.js b/src/editor/secret-length-tooltip.js index ad8444f3..5a2c2293 100644 --- a/src/editor/secret-length-tooltip.js +++ b/src/editor/secret-length-tooltip.js @@ -23,7 +23,9 @@ export function minSecretLengthCheck(event) { console.log(utf8tohex(secretInput.value)); if(inputBits < algBits) { - secretInput._tippy.show(); + if(!secretInput._tippy.state.visible) { + secretInput._tippy.show(); + } } else { secretInput._tippy.hide(); } From 91119dc16a7cc3a79f3c5897afbff12d559f10e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Mon, 7 May 2018 12:50:23 -0300 Subject: [PATCH 049/456] Update license to include licenses from libraries (requested by jsrsasign developers). --- LICENSE.md | 21 ------- LICENSE.txt | 169 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 169 insertions(+), 21 deletions(-) delete mode 100644 LICENSE.md create mode 100644 LICENSE.txt diff --git a/LICENSE.md b/LICENSE.md deleted file mode 100644 index 5fd32c57..00000000 --- a/LICENSE.md +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2013-2014 Auth0 Inc. - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/LICENSE.txt b/LICENSE.txt new file mode 100644 index 00000000..3278f02f --- /dev/null +++ b/LICENSE.txt @@ -0,0 +1,169 @@ +The MIT License (MIT) + +Copyright (c) 2013-2014 Auth0 Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +---- + +Distributions of this software ("bundles") contain code from other +libraries. Additional licenses from these libraries can be found below. + +---- + +The 'jsrsasign'(RSA-Sign JavaScript Library) License + +Copyright (c) 2010-2018 Kenji Urushima + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +LICENSE: BSD License +Files: node_modules/jsrsasign/** +---- + +RSA and ECC in JavaScript + +Copyright (c) 2003-2005 Tom Wu All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, +EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY +WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + +IN NO EVENT SHALL TOM WU BE LIABLE FOR ANY SPECIAL, INCIDENTAL, +INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER +RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF +THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT +OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +In addition, the following condition applies: + +All redistributions must retain an intact copy of this copyright notice +and disclaimer. + +http://www-cs-students.stanford.edu/~tjw/jsbn/ +LICENSE: BSD License +FILES: node_modules/jsrsasign/ext/{base64,jsbn,jsbn2,prgn4,rng,rsa,rsa2}.js +---- + +CryptoJS + +Copyright (c) 2009-2013 Jeff Mott + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +https://code.google.com/p/crypto-js/wiki/License +FILES: node_modules/jsrsasign/ext/cryptojs-*.js +---- + +YUI Library + +Software License Agreement (BSD License) + +Copyright c 2013 Yahoo! Inc. All rights reserved. + +Redistribution and use of this software in source and binary forms, +with or without modification, are permitted provided that the +following conditions are met: + +- Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +- Neither the name of Yahoo! Inc. nor the names of YUI's contributors + may be used to endorse or promote products derived from this + software without specific prior written permission of Yahoo! Inc. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +http://yuilibrary.com/license/ +LICENSE: BSD License +FILES: node_modules/jsrsasign/ext/yui*.js +---- + +Bitcoin JS + +Copyright (c) 2011 Stefan Thomas + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +https://github.com/bitcoinjs/bitcoinjs-lib +LICENSE: MIT License +FILES: node_modules/jsrsasign/src/ecdsa-modified.js node_modules/jsrsasign/src/ec-patch.js +---- From 5a751a2db4d59ae683fc021d0c38d7d7030f0fcd Mon Sep 17 00:00:00 2001 From: Daniel DeGroff Date: Mon, 7 May 2018 11:41:33 -0600 Subject: [PATCH 050/456] Update to prime-jwt 1.3.1 --- views/website/libraries/3-Java.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/views/website/libraries/3-Java.json b/views/website/libraries/3-Java.json index d2d0d88d..8ec4bc09 100644 --- a/views/website/libraries/3-Java.json +++ b/views/website/libraries/3-Java.json @@ -142,7 +142,7 @@ "authorName": "Inversoft", "gitHubRepoPath": "inversoft/prime-jwt", "repoUrl": "https://github.com/inversoft/prime-jwt", - "installCommandHtml": "maven: com.inversoft / prime-jwt / 1.3.0" + "installCommandHtml": "maven: com.inversoft / prime-jwt / 1.3.1" }, { "minimumVersion": null, @@ -173,4 +173,4 @@ "installCommandHtml": "maven: io.vertx / vertx-auth-jwt / 3.5.1" } ] -} \ No newline at end of file +} From a5080df7d53396db36a06bbeca64243adb8a4bf4 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Wed, 9 May 2018 14:14:25 +0200 Subject: [PATCH 051/456] add c_hash, update at_hash --- src/strings.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings.js b/src/strings.js index a89b4da5..abfbb4d6 100644 --- a/src/strings.js +++ b/src/strings.js @@ -28,7 +28,8 @@ export default { key_ops: 'Intended operations for this key', sid: 'Session ID (String identifier for a Session)', updated_at: 'Last modification timestamp', - at_hash: 'SHA-256 of leftmost half of this token', + at_hash: 'Access Token hash value', + c_hash: 'Authorization Code hash value', nonce: 'Unique value associating request to token', auth_time: 'Time when authentication occurred', amr: 'Authentication methods array', From e47d912432e4700df95e17d8adc99090d4000cea Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Wed, 9 May 2018 14:17:52 +0200 Subject: [PATCH 052/456] add s_hash --- src/strings.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/strings.js b/src/strings.js index abfbb4d6..c9f7ca68 100644 --- a/src/strings.js +++ b/src/strings.js @@ -30,6 +30,7 @@ export default { updated_at: 'Last modification timestamp', at_hash: 'Access Token hash value', c_hash: 'Authorization Code hash value', + s_hash: 'State hash value', nonce: 'Unique value associating request to token', auth_time: 'Time when authentication occurred', amr: 'Authentication methods array', From f4bfe48f9e1de03e21f20516b8683a5ab6ab6bd3 Mon Sep 17 00:00:00 2001 From: Kye-Maloy Date: Fri, 11 May 2018 15:32:03 +0100 Subject: [PATCH 053/456] new: Kitura Swift implementation --- views/website/libraries/19-Swift.json | 28 +++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/views/website/libraries/19-Swift.json b/views/website/libraries/19-Swift.json index 30ac153d..e41a0a47 100644 --- a/views/website/libraries/19-Swift.json +++ b/views/website/libraries/19-Swift.json @@ -87,6 +87,34 @@ "gitHubRepoPath": "Wstunes/SwiftyJWT", "repoUrl": "https://github.com/Wstunes/SwiftyJWT", "installCommandHtml": "pod 'SwiftyJWT'" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": false, + "hs384": false, + "hs512": false, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/IBM-Swift", + "authorName": "IBM Swift", + "gitHubRepoPath": "IBM-Swift/Swift-JWT", + "repoUrl": "https://github.com/IBM-Swift/Swift-JWT", + "installCommandHtml": ".package(url:\"https://github.com/IBM-Swift/Swift-JWT/", from: \"1.0.0\")" } ] } \ No newline at end of file From fdd90866ecbe116ae98897ef9347aab9f5f3210b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20Peyrott?= Date: Wed, 16 May 2018 05:36:28 -0500 Subject: [PATCH 054/456] Removed stray console.log call. --- src/editor/secret-length-tooltip.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/editor/secret-length-tooltip.js b/src/editor/secret-length-tooltip.js index 5a2c2293..9148eb87 100644 --- a/src/editor/secret-length-tooltip.js +++ b/src/editor/secret-length-tooltip.js @@ -20,8 +20,6 @@ export function minSecretLengthCheck(event) { b64utohex(secretInput.value).length / 2 * 8 : utf8tohex(secretInput.value).length / 2 * 8; - console.log(utf8tohex(secretInput.value)); - if(inputBits < algBits) { if(!secretInput._tippy.state.visible) { secretInput._tippy.show(); From 278900c477128848ce5d406b4df351615901f761 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20Peyrott?= Date: Wed, 16 May 2018 06:13:30 -0500 Subject: [PATCH 055/456] Fix for #313: add link to licence in both the site and the extension. --- package-lock.json | 2 +- stylus/extension/index.styl | 3 +++ views/extension/index.pug | 4 +++- views/website/layout.pug | 2 ++ 4 files changed, 9 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index 7963fcab..0bd80270 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "jwt.io", - "version": "2.1.1", + "version": "2.1.3", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/stylus/extension/index.styl b/stylus/extension/index.styl index 768153a4..7649c533 100644 --- a/stylus/extension/index.styl +++ b/stylus/extension/index.styl @@ -65,6 +65,9 @@ text-decoration none color currentColor + .keep-deco:hover + text-decoration underline + .top-section margin-bottom 10px diff --git a/views/extension/index.pug b/views/extension/index.pug index a4969582..e09012eb 100644 --- a/views/extension/index.pug +++ b/views/extension/index.pug @@ -37,8 +37,10 @@ block content .colophon.clearfix .pull-left a(target="_blank" href="https://auth0.com/?utm_source=jwt-ext&utm_campaign=badge") - | Supported by + | Supported by   img(src="http://github.com/img/ico_logo.svg") + a  -  + a.keep-deco(href='https://github.com/jsonwebtoken/jsonwebtoken.github.io/blob/master/LICENSE.txt', target="_blank") Licence .pull-right.save-back.hide a#save-back-link(href="#") Save back to localStorage diff --git a/views/website/layout.pug b/views/website/layout.pug index 6fbd89b6..d8b7472d 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -62,6 +62,8 @@ html(lang='en') .column.pull-request span Missing something? a(href='https://github.com/jsonwebtoken/jsonwebtoken.github.io/tree/master/views', target="_blank") Send a Pull Request + a(style='text-decoration: none') - + a(href='https://github.com/jsonwebtoken/jsonwebtoken.github.io/blob/master/LICENSE.txt', target="_blank") Licence .column.social-counter a.twitter-follow-button(href='https://twitter.com/auth0', data-show-count='true') Follow @auth0 From ed99b29ca15f2b49312d62cf4e902c3a08a86577 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20Peyrott?= Date: Wed, 16 May 2018 06:18:53 -0500 Subject: [PATCH 056/456] Set version 2.1.4 (website), 2.1.3 (extensions). --- manifest.json | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/manifest.json b/manifest.json index 3e483cb4..9824c430 100644 --- a/manifest.json +++ b/manifest.json @@ -3,7 +3,7 @@ "name": "JWT Debugger", "description": "The JWT.io debugger as a Web Extension", - "version": "2.1.2", + "version": "2.1.3", "browser_action": { "default_icon": "img/favicon/favicon-96x96.png", diff --git a/package.json b/package.json index 59467ea2..5fdb55d5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jwt.io", - "version": "2.1.3", + "version": "2.1.4", "repository": { "type": "git", "url": "https://github.com/jsonwebtoken/jsonwebtoken.github.io" From 6367a7cc1b816b64f7669103709e5361379984ed Mon Sep 17 00:00:00 2001 From: Pablo Barrenechea Date: Mon, 21 May 2018 12:23:20 -0300 Subject: [PATCH 057/456] Added banner script to layout --- views/website/layout.pug | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/views/website/layout.pug b/views/website/layout.pug index d8b7472d..3dcd3f74 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -27,7 +27,12 @@ html(lang='en') meta(property='og:image:type', content='image/png') meta(property='og:image:width', content='1200') meta(property='og:image:height', content='630') - + + // GDPR cookie banner + script(src="https://cdn.cookielaw.org/consent/c1198aef-6105-4bf5-9af7-ab5b543482e0.js") + script(type="text/javascript"). + function OptanonWrapper() { } + include ../stylesheets.pug link(rel='search', type='application/opensearchdescription+xml', title='JWT.io', href='http://github.com/opensearch.xml') From d8668e902f52bd16fc7d858aabfd836e5ecdd781 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Tue, 22 May 2018 11:48:40 -0300 Subject: [PATCH 058/456] Move GDPR detection script to the bottom. --- views/website/layout.pug | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/views/website/layout.pug b/views/website/layout.pug index 3dcd3f74..d9750d99 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -27,11 +27,6 @@ html(lang='en') meta(property='og:image:type', content='image/png') meta(property='og:image:width', content='1200') meta(property='og:image:height', content='630') - - // GDPR cookie banner - script(src="https://cdn.cookielaw.org/consent/c1198aef-6105-4bf5-9af7-ab5b543482e0.js") - script(type="text/javascript"). - function OptanonWrapper() { } include ../stylesheets.pug @@ -82,3 +77,8 @@ html(lang='en') script. !function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs'); + + // GDPR cookie banner + script(src="https://cdn.cookielaw.org/consent/c1198aef-6105-4bf5-9af7-ab5b543482e0.js") + script(type="text/javascript"). + function OptanonWrapper() { } From 43a5e21f981be15cbf60c0016622fa9d9f4b47af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Tue, 22 May 2018 11:51:41 -0300 Subject: [PATCH 059/456] Set version 2.2.0. --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 5fdb55d5..507ecec3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jwt.io", - "version": "2.1.4", + "version": "2.2.0", "repository": { "type": "git", "url": "https://github.com/jsonwebtoken/jsonwebtoken.github.io" From 793d5eb082bfca1349485aa650609229423860b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Thu, 31 May 2018 17:53:13 -0300 Subject: [PATCH 060/456] NPM audit fixes. --- package-lock.json | 8575 ++++++++++++++++++++++++--------------------- package.json | 6 +- 2 files changed, 4593 insertions(+), 3988 deletions(-) diff --git a/package-lock.json b/package-lock.json index 0bd80270..1d3c539f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "jwt.io", - "version": "2.1.3", + "version": "2.2.0", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -26,13 +26,13 @@ "@babel/traverse": "7.0.0-beta.40", "@babel/types": "7.0.0-beta.40", "babylon": "7.0.0-beta.40", - "convert-source-map": "1.5.1", - "debug": "3.1.0", - "json5": "0.5.1", - "lodash": "4.17.5", - "micromatch": "2.3.11", - "resolve": "1.5.0", - "source-map": "0.5.7" + "convert-source-map": "^1.1.0", + "debug": "^3.0.1", + "json5": "^0.5.0", + "lodash": "^4.2.0", + "micromatch": "^2.3.11", + "resolve": "^1.3.2", + "source-map": "^0.5.0" }, "dependencies": { "debug": { @@ -53,10 +53,10 @@ "dev": true, "requires": { "@babel/types": "7.0.0-beta.40", - "jsesc": "2.5.1", - "lodash": "4.17.5", - "source-map": "0.5.7", - "trim-right": "1.0.1" + "jsesc": "^2.5.1", + "lodash": "^4.2.0", + "source-map": "^0.5.0", + "trim-right": "^1.0.1" } }, "@babel/helper-annotate-as-pure": { @@ -97,7 +97,7 @@ "requires": { "@babel/helper-function-name": "7.0.0-beta.40", "@babel/types": "7.0.0-beta.40", - "lodash": "4.17.5" + "lodash": "^4.2.0" } }, "@babel/helper-explode-assignable-expression": { @@ -146,7 +146,7 @@ "dev": true, "requires": { "@babel/types": "7.0.0-beta.40", - "lodash": "4.17.5" + "lodash": "^4.2.0" } }, "@babel/helper-module-transforms": { @@ -159,7 +159,7 @@ "@babel/helper-simple-access": "7.0.0-beta.40", "@babel/template": "7.0.0-beta.40", "@babel/types": "7.0.0-beta.40", - "lodash": "4.17.5" + "lodash": "^4.2.0" } }, "@babel/helper-optimise-call-expression": { @@ -177,7 +177,7 @@ "integrity": "sha512-75zi8hZSdWLT7upmEyAemfN0hJ7522svItPGbIj4Pi2T/C5vbgNFXLy8o/iOCX4FzB+yVKhz0zWC3SzN9hyigA==", "dev": true, "requires": { - "lodash": "4.17.5" + "lodash": "^4.2.0" } }, "@babel/helper-remap-async-to-generator": { @@ -213,7 +213,7 @@ "requires": { "@babel/template": "7.0.0-beta.40", "@babel/types": "7.0.0-beta.40", - "lodash": "4.17.5" + "lodash": "^4.2.0" } }, "@babel/helper-wrap-function": { @@ -245,9 +245,9 @@ "integrity": "sha512-mOhhTrzieV6VO7odgzFGFapiwRK0ei8RZRhfzHhb6cpX3QM8XXuCLXWjN8qBB7JReDdUR80V3LFfFrGUYevhNg==", "dev": true, "requires": { - "chalk": "2.3.2", - "esutils": "2.0.2", - "js-tokens": "3.0.2" + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^3.0.0" } }, "@babel/plugin-proposal-async-generator-functions": { @@ -285,7 +285,7 @@ "dev": true, "requires": { "@babel/helper-regex": "7.0.0-beta.40", - "regexpu-core": "4.1.3" + "regexpu-core": "^4.1.3" } }, "@babel/plugin-syntax-async-generators": { @@ -334,7 +334,7 @@ "integrity": "sha512-8QpOK9lXdzrq1QIrP3Hfx/BmGPaCKjBORd2QSjdghPNNRlQFZmO2l3kb0I6yC7w75U1M5q26KvUbAcPrE68E4w==", "dev": true, "requires": { - "lodash": "4.17.5" + "lodash": "^4.2.0" } }, "@babel/plugin-transform-classes": { @@ -348,7 +348,7 @@ "@babel/helper-function-name": "7.0.0-beta.40", "@babel/helper-optimise-call-expression": "7.0.0-beta.40", "@babel/helper-replace-supers": "7.0.0-beta.40", - "globals": "11.3.0" + "globals": "^11.1.0" } }, "@babel/plugin-transform-computed-properties": { @@ -370,7 +370,7 @@ "dev": true, "requires": { "@babel/helper-regex": "7.0.0-beta.40", - "regexpu-core": "4.1.3" + "regexpu-core": "^4.1.3" } }, "@babel/plugin-transform-duplicate-keys": { @@ -477,7 +477,7 @@ "integrity": "sha512-hFj52wAXbEpXwwfKsMol5Y967D3L8tz46Jin9n/gYPgcNWugvsw6d7g+HknBJ8FzaUESrDruFRkGPXgD+FyjvQ==", "dev": true, "requires": { - "regenerator-transform": "0.12.3" + "regenerator-transform": "^0.12.3" } }, "@babel/plugin-transform-shorthand-properties": { @@ -523,7 +523,7 @@ "dev": true, "requires": { "@babel/helper-regex": "7.0.0-beta.40", - "regexpu-core": "4.1.3" + "regexpu-core": "^4.1.3" } }, "@babel/polyfill": { @@ -532,8 +532,8 @@ "integrity": "sha512-aUO+KHYJDFAnyRU/g3sBofp9WVKI0ROriGpeKXBTq8DsMYnvbZkNQaEwrzKi6TzmVuRDBNpVAkArZQ9qbQrqRA==", "dev": true, "requires": { - "core-js": "2.5.3", - "regenerator-runtime": "0.11.1" + "core-js": "^2.5.3", + "regenerator-runtime": "^0.11.1" } }, "@babel/preset-env": { @@ -576,9 +576,9 @@ "@babel/plugin-transform-template-literals": "7.0.0-beta.40", "@babel/plugin-transform-typeof-symbol": "7.0.0-beta.40", "@babel/plugin-transform-unicode-regex": "7.0.0-beta.40", - "browserslist": "3.1.1", - "invariant": "2.2.3", - "semver": "5.5.0" + "browserslist": "^3.0.0", + "invariant": "^2.2.2", + "semver": "^5.3.0" } }, "@babel/template": { @@ -590,7 +590,7 @@ "@babel/code-frame": "7.0.0-beta.40", "@babel/types": "7.0.0-beta.40", "babylon": "7.0.0-beta.40", - "lodash": "4.17.5" + "lodash": "^4.2.0" } }, "@babel/traverse": { @@ -604,10 +604,10 @@ "@babel/helper-function-name": "7.0.0-beta.40", "@babel/types": "7.0.0-beta.40", "babylon": "7.0.0-beta.40", - "debug": "3.1.0", - "globals": "11.3.0", - "invariant": "2.2.3", - "lodash": "4.17.5" + "debug": "^3.0.1", + "globals": "^11.1.0", + "invariant": "^2.2.0", + "lodash": "^4.2.0" }, "dependencies": { "debug": { @@ -627,9 +627,45 @@ "integrity": "sha512-uXCGCzTgMZxcSUzutCPtZmXbVC+cvENgS2e0tRuhn+Y1hZnMb8IHP0Trq7Q2MB/eFmG5pKrAeTIUfQIe5kA4Tg==", "dev": true, "requires": { - "esutils": "2.0.2", - "lodash": "4.17.5", - "to-fast-properties": "2.0.0" + "esutils": "^2.0.2", + "lodash": "^4.2.0", + "to-fast-properties": "^2.0.0" + } + }, + "@cliqz-oss/firefox-client": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@cliqz-oss/firefox-client/-/firefox-client-0.3.1.tgz", + "integrity": "sha512-RO+Tops/wGnBzWoZYkCraqyh2JqOejqJq5/a4b54HhmjTNSKdUPwAOK17EGg/zPb0nWqkuB7QyZsI9bo+ev8Kw==", + "dev": true, + "requires": { + "colors": "0.5.x", + "js-select": "~0.6.0" + }, + "dependencies": { + "colors": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/colors/-/colors-0.5.1.tgz", + "integrity": "sha1-fQAj6usVTo7p/Oddy5I9DtFmd3Q=", + "dev": true + } + } + }, + "@cliqz-oss/node-firefox-connect": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@cliqz-oss/node-firefox-connect/-/node-firefox-connect-1.2.1.tgz", + "integrity": "sha512-O/IyiB5pfztCdmxQZg0/xeq5w+YiP3gtJz8d4We2EpLPKzbDVjOrtfLKYgVfm6Ya6mbvDge1uLkSRwaoVCWKnA==", + "dev": true, + "requires": { + "@cliqz-oss/firefox-client": "0.3.1", + "es6-promise": "^2.0.1" + }, + "dependencies": { + "es6-promise": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-2.3.0.tgz", + "integrity": "sha1-lu258v2wGZWCKyY92KratnSBgbw=", + "dev": true + } } }, "@sinonjs/formatio": { @@ -653,15 +689,244 @@ "integrity": "sha512-+Jty46mPaWe1VAyZbfvgJM4BAdklLWxrT5tc/RjvCgLrtk6gzRY6AOnoWFv4p6hVxhJshDdr2hGVn56alBp97Q==", "dev": true, "requires": { - "@types/babel-types": "7.0.1" + "@types/babel-types": "*" } }, "@types/node": { - "version": "9.4.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-9.4.6.tgz", - "integrity": "sha512-CTUtLb6WqCCgp6P59QintjHWqzf4VL1uPA27bipLAPxFqrtK1gEYllePzTICGqQ8rYsCbpnsNypXjjDzGAAjEQ==", + "version": "10.1.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.1.4.tgz", + "integrity": "sha512-GpQxofkdlHYxjHad98UUdNoMO7JrmzQZoAaghtNg14Gwg7YkohcrCoJEcEMSgllx4VIZ+mYw7ZHjfaeIagP/rg==", + "dev": true + }, + "@webassemblyjs/ast": { + "version": "1.5.9", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.5.9.tgz", + "integrity": "sha512-xL3hC0TOc4ic1UNG8ZZNeaiPf1klozt6rqajcy7hfO/qqfkEhLff1AFt5g2LJkTjhw+QSEYVMt7qOaaApu7JzA==", + "dev": true, + "requires": { + "@webassemblyjs/helper-module-context": "1.5.9", + "@webassemblyjs/helper-wasm-bytecode": "1.5.9", + "@webassemblyjs/wast-parser": "1.5.9", + "debug": "^3.1.0", + "mamacro": "^0.0.3" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.5.9", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.5.9.tgz", + "integrity": "sha512-naMJjuBqDqx4dPSzwpI9pkjdLds4tDTzvsOEzwxPDp655IfgLLP/QEvK/9PQp4p5DExqrR87rk8DWByoqWWlGA==", + "dev": true + }, + "@webassemblyjs/helper-api-error": { + "version": "1.5.9", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.5.9.tgz", + "integrity": "sha512-tzGdqBo7Xf3McJcXbwbwzwElRzF/nELJN+G4MGGfm0DGRQB6UTmMe44jFIOQYT1Za89Aiz5DMQJotdnnLheixw==", + "dev": true + }, + "@webassemblyjs/helper-buffer": { + "version": "1.5.9", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.5.9.tgz", + "integrity": "sha512-WYkys6y33viEY23tHJ+KkSd9yHZBd54Sy6gcSgwLGPP1or9pLqWBrjWWATHuDuIkpvSJSt/+3qjAV6zHd1nS0g==", + "dev": true, + "requires": { + "debug": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.5.9", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.5.9.tgz", + "integrity": "sha512-SYjNAlqcRH+YynslbIhFYOnGvE3WBl82/XlcFXiNkqnWsvHWnNkJbtxAtzrT/dcf69O/2pt8j1Q0+qc/rtacVw==", + "dev": true, + "requires": { + "@webassemblyjs/wast-printer": "1.5.9" + } + }, + "@webassemblyjs/helper-fsm": { + "version": "1.5.9", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.5.9.tgz", + "integrity": "sha512-8D+VVIJTRbsn31zt3eyidYyUkhH1jk2/58mrIPiMarflRsisItJa5WZVu/gw0l+ubFOJf9PivTJB6Kw/Kgxx3g==", + "dev": true + }, + "@webassemblyjs/helper-module-context": { + "version": "1.5.9", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.5.9.tgz", + "integrity": "sha512-DbeLbFOhioEeY7yAff12+n5sf7WP7Fmi0lnhCSzfW4xBsgwXKmRjAx7nVmsUf3z+BDnwHHVKIXBUM+ucccNUsw==", + "dev": true + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.5.9", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.5.9.tgz", + "integrity": "sha512-zHQuTMMd2nTyEa3fbmGfzlJW305py1sgf1gHNCO/LVN8nWlKysB/+6J68sP1Cd+9USnT1VS2vyD1z+YJPS6GqQ==", "dev": true }, + "@webassemblyjs/helper-wasm-section": { + "version": "1.5.9", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.5.9.tgz", + "integrity": "sha512-+ff+8Ju6sLCMFNygcDdLRNRsmuD0PHwq77d2mbfWj5YzUvFaKN2q2kRppJSEAixOnM2xLADuG5y/blpMo5G90A==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.5.9", + "@webassemblyjs/helper-buffer": "1.5.9", + "@webassemblyjs/helper-wasm-bytecode": "1.5.9", + "@webassemblyjs/wasm-gen": "1.5.9", + "debug": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "@webassemblyjs/ieee754": { + "version": "1.5.9", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.5.9.tgz", + "integrity": "sha512-mhetZBDnpV3VYqZb5Aail9X01VyIqDDZrNYdYj8bfx/PsVPG2znX90wRyVNTeqC5ylqHCgGkJ63bPaPEyINfsw==", + "dev": true, + "requires": { + "ieee754": "^1.1.11" + } + }, + "@webassemblyjs/leb128": { + "version": "1.5.9", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.5.9.tgz", + "integrity": "sha512-oZ3eUB9EViUtiuMwW/xeYamXgfFS2cmXl6aUIYBfpXJQ5v5aOC8ZuPpz2/LqlgNlT8ThpyFd6kfgkYVwKwkGvQ==", + "dev": true, + "requires": { + "leb": "^0.3.0" + } + }, + "@webassemblyjs/wasm-edit": { + "version": "1.5.9", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.5.9.tgz", + "integrity": "sha512-pMWe3HomnWAMZytJ5sSNBS6qTbSoULUHkvDrtcarmLBTclmupZe25INy1jxbWGKsuFxw6w0xQ+eLRPlC8HPjhg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.5.9", + "@webassemblyjs/helper-buffer": "1.5.9", + "@webassemblyjs/helper-wasm-bytecode": "1.5.9", + "@webassemblyjs/helper-wasm-section": "1.5.9", + "@webassemblyjs/wasm-gen": "1.5.9", + "@webassemblyjs/wasm-opt": "1.5.9", + "@webassemblyjs/wasm-parser": "1.5.9", + "@webassemblyjs/wast-printer": "1.5.9", + "debug": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "@webassemblyjs/wasm-gen": { + "version": "1.5.9", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.5.9.tgz", + "integrity": "sha512-UEhymlxupBUJuwnD2N860MqkpE7LHt0tNKqAgT4YAVjbx+88P6MBBk+q+9wr2FJCXxMgsPTxMWifqC4wd2FzVg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.5.9", + "@webassemblyjs/helper-wasm-bytecode": "1.5.9", + "@webassemblyjs/ieee754": "1.5.9", + "@webassemblyjs/leb128": "1.5.9" + } + }, + "@webassemblyjs/wasm-opt": { + "version": "1.5.9", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.5.9.tgz", + "integrity": "sha512-oQm84US3e36dPq5bOeybVKA2ZyzeWR4fereg9kJa0Y9XLKxHwlsBa2kFyNXwZNrhMP33iyXAW+ym7om1zPZeAg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.5.9", + "@webassemblyjs/helper-buffer": "1.5.9", + "@webassemblyjs/wasm-gen": "1.5.9", + "@webassemblyjs/wasm-parser": "1.5.9", + "debug": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "@webassemblyjs/wasm-parser": { + "version": "1.5.9", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.5.9.tgz", + "integrity": "sha512-jBKBTKE4M/WYCSqLjRvK+/QD55E/HNcQjswbksof3GEXfkq0iMqYxoPfqR7uLAD9/jVf9HpBNW2FJOyfTTlYfw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.5.9", + "@webassemblyjs/helper-api-error": "1.5.9", + "@webassemblyjs/helper-wasm-bytecode": "1.5.9", + "@webassemblyjs/ieee754": "1.5.9", + "@webassemblyjs/leb128": "1.5.9", + "@webassemblyjs/wasm-parser": "1.5.9" + } + }, + "@webassemblyjs/wast-parser": { + "version": "1.5.9", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.5.9.tgz", + "integrity": "sha512-bDuYH/NR5D+MmwVZdGW2rUvu4UcKGpodiHBSueajon3oNPu+PAKG+7br3BVFKxDUtDoVtuHLUQvkqp1lTrqPCA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.5.9", + "@webassemblyjs/floating-point-hex-parser": "1.5.9", + "@webassemblyjs/helper-api-error": "1.5.9", + "@webassemblyjs/helper-code-frame": "1.5.9", + "@webassemblyjs/helper-fsm": "1.5.9", + "long": "^3.2.0", + "mamacro": "^0.0.3" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.5.9", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.5.9.tgz", + "integrity": "sha512-04iV32TO69kZChP3DN6W8i6GCa5UtEn1Lnzb4sQGe5YNjIFz2k8+KZLxbovWIZgj9pk06k3Egq/wyD98lSKaLw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.5.9", + "@webassemblyjs/wast-parser": "1.5.9", + "long": "^3.2.0" + } + }, "JSONSelect": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.2.1.tgz", @@ -679,7 +944,7 @@ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", "requires": { - "mime-types": "2.1.18", + "mime-types": "~2.1.18", "negotiator": "0.6.1" } }, @@ -690,18 +955,18 @@ "dev": true }, "acorn-dynamic-import": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-2.0.2.tgz", - "integrity": "sha1-x1K9IQvvZ5UBtsbLf8hPj0cVjMQ=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-3.0.0.tgz", + "integrity": "sha512-zVWV8Z8lislJoOKKqdNMOB+s6+XV5WERty8MnKBeFgwA+19XJjJHs2RP5dzM57FftIs+jQnRToLiWazKr6sSWg==", "dev": true, "requires": { - "acorn": "4.0.13" + "acorn": "^5.0.0" }, "dependencies": { "acorn": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", - "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.6.0.tgz", + "integrity": "sha512-QatFQ4C0n+PLqemyC6zXEv04tSqRR0hRqe+uGKPEVgKe2G8kl8wJvHzRYWwz6vqqEqt6idPVMFojZ4P1zlyAzQ==", "dev": true } } @@ -712,7 +977,7 @@ "integrity": "sha1-/YJw9x+7SZawBPqIDuXUZXOnMb8=", "dev": true, "requires": { - "acorn": "4.0.13" + "acorn": "^4.0.4" }, "dependencies": { "acorn": { @@ -729,7 +994,7 @@ "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", "dev": true, "requires": { - "acorn": "3.3.0" + "acorn": "^3.0.4" } }, "adbkit": { @@ -738,13 +1003,13 @@ "integrity": "sha512-j2vUhEeZmCiqBP+p77CpPWQTcT20rOmSmRHFUTZUwUpxzeCd3fXop4NAGYztSY9/FNU4bT/qqvYQ4EZKuCXhfA==", "dev": true, "requires": { - "adbkit-logcat": "1.1.0", - "adbkit-monkey": "1.0.1", - "bluebird": "2.9.34", - "commander": "2.8.1", - "debug": "2.6.9", - "node-forge": "0.7.2", - "split": "0.3.3" + "adbkit-logcat": "^1.1.0", + "adbkit-monkey": "~1.0.1", + "bluebird": "~2.9.24", + "commander": "^2.3.0", + "debug": "~2.6.3", + "node-forge": "^0.7.1", + "split": "~0.3.3" }, "dependencies": { "bluebird": { @@ -767,7 +1032,7 @@ "integrity": "sha1-8pG+cBou/FZ6Y/x6pq/N7TFDC+E=", "dev": true, "requires": { - "async": "0.2.10" + "async": "~0.2.9" }, "dependencies": { "async": { @@ -779,120 +1044,88 @@ } }, "addons-linter": { - "version": "0.35.0", - "resolved": "https://registry.npmjs.org/addons-linter/-/addons-linter-0.35.0.tgz", - "integrity": "sha1-hYcszliYP/M5ztKX2/9IbALs0zY=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/addons-linter/-/addons-linter-1.0.0.tgz", + "integrity": "sha512-6cC0Jcf0vMVgE86TV4A1lfjx78Fp0JltA1UH2icz/cALWMMfDZrD7YpB4dMrpobclsbKFPHexNOYhS4efAc5ng==", "dev": true, "requires": { - "ajv": "5.5.2", + "ajv": "6.5.0", "ajv-merge-patch": "3.0.0", "babel-register": "6.26.0", - "chalk": "2.3.0", + "chalk": "2.4.0", "cheerio": "1.0.0-rc.2", "columnify": "1.5.4", "common-tags": "1.7.2", "crx-parser": "0.1.2", - "dispensary": "0.12.0", - "doctoc": "1.3.0", + "deepmerge": "2.1.0", + "dispensary": "0.18.0", + "doctoc": "1.3.1", "es6-promisify": "5.0.0", - "eslint": "4.15.0", + "eslint": "4.19.1", "eslint-plugin-no-unsafe-innerhtml": "1.0.16", "esprima": "3.1.3", - "extract-text-webpack-plugin": "3.0.2", "first-chunk-stream": "2.0.0", - "fluent": "0.4.1", + "fluent-syntax": "^0.7.0", "glob": "7.1.2", + "is-mergeable-object": "1.1.0", "jed": "1.1.1", - "pino": "4.10.3", + "os-locale": "2.1.0", + "pino": "4.16.1", "po2json": "0.4.5", - "postcss": "6.0.14", - "probe-image-size": "3.2.0", + "postcss": "6.0.19", + "probe-image-size": "4.0.0", "relaxed-json": "1.0.1", "semver": "5.5.0", "shelljs": "0.8.1", - "source-map-support": "0.5.1", + "snyk": "^1.78.1", + "source-map-support": "0.5.6", "strip-bom-stream": "3.0.0", "tosource": "1.0.0", - "upath": "1.0.2", - "webpack": "3.10.0", - "whatwg-url": "6.3.0", + "upath": "1.0.5", + "whatwg-url": "6.4.1", "xmldom": "0.1.27", - "yargs": "10.0.3", + "yargs": "11.0.0", "yauzl": "2.9.1" }, "dependencies": { - "acorn": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.5.0.tgz", - "integrity": "sha512-arn53F07VXmls4o4pUhSzBa4fvaagPRe7AVZ8l7NHxFWUie2DsuFSBMMNAkgzRlOhEhzAnxeKyaWVzOH4xqp/g==", - "dev": true - }, "ajv": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", - "dev": true, - "requires": { - "co": "4.6.0", - "fast-deep-equal": "1.1.0", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1" - } - }, - "ajv-keywords": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-2.1.1.tgz", - "integrity": "sha1-YXmX/F9gV2iUxDX5QNgZ4TW4B2I=", - "dev": true - }, - "async": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", - "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.0.tgz", + "integrity": "sha512-VDUX1oSajablmiyFyED9L1DFndg0P9h7p1F+NO8FkIzei6EPrR6Zu1n18rd5P8PqaSRd/FrWv3G1TVBqpM83gA==", "dev": true, "requires": { - "lodash": "4.17.5" + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0", + "uri-js": "^4.2.1" } }, - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", "dev": true }, "chalk": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", + "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", "dev": true, "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "4.5.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, "cliui": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", "dev": true, "requires": { - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wrap-ansi": "2.1.0" - }, - "dependencies": { - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" - } - } + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" } }, "esprima": { @@ -901,253 +1134,93 @@ "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", "dev": true }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, "glob": { "version": "7.1.2", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, - "has-flag": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", - "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "1.0.1" - } - }, - "load-json-file": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", - "dev": true, - "requires": { - "graceful-fs": "4.1.11", - "parse-json": "2.2.0", - "pify": "2.3.0", - "strip-bom": "3.0.0" - } - }, - "path-type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", - "dev": true, - "requires": { - "pify": "2.3.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true }, - "read-pkg": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", - "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "source-map-support": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.6.tgz", + "integrity": "sha512-N4KXEz7jcKqPf2b2vZF11lQIz9W5ZMuUcIOGj243lduidkf2fjkVKJS9vNxVWn3u/uxX38AcE8U9nnH9FPcq+g==", "dev": true, "requires": { - "load-json-file": "2.0.0", - "normalize-package-data": "2.4.0", - "path-type": "2.0.0" + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } }, - "read-pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", - "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "dev": true, "requires": { - "find-up": "2.1.0", - "read-pkg": "2.0.0" + "ansi-regex": "^3.0.0" } }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", "dev": true }, - "source-map-support": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.1.tgz", - "integrity": "sha512-EZNecLNrsdRk9fcdOcjjy+Z/id7cr68sdmsYtR1gA45oQ81Ccea0UvM7DdSRblO0Ie5zWX31bvJTC7Y3QZVujg==", + "yargs": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-11.0.0.tgz", + "integrity": "sha512-Rjp+lMYQOWtgqojx1dEWorjCofi1YN7AoFvYV7b1gx/7dAAeuI4kN5SZiEvr0ZmsZTOpDRcCqrpI10L31tFkBw==", "dev": true, "requires": { - "source-map": "0.6.1" + "cliui": "^4.0.0", + "decamelize": "^1.1.1", + "find-up": "^2.1.0", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^9.0.2" } }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - }, - "supports-color": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", - "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "yauzl": { + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.9.1.tgz", + "integrity": "sha1-qBmB6nCleUYTOIPwKcWCGok1mn8=", "dev": true, "requires": { - "has-flag": "2.0.0" - } - }, - "uglifyjs-webpack-plugin": { - "version": "0.4.6", - "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-0.4.6.tgz", - "integrity": "sha1-uVH0q7a9YX5m9j64kUmOORdj4wk=", - "dev": true, - "requires": { - "source-map": "0.5.7", - "uglify-js": "2.8.29", - "webpack-sources": "1.1.0" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } - } - }, - "webpack": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-3.10.0.tgz", - "integrity": "sha512-fxxKXoicjdXNUMY7LIdY89tkJJJ0m1Oo8PQutZ5rLgWbV5QVKI15Cn7+/IHnRTd3vfKfiwBx6SBqlorAuNA8LA==", - "dev": true, - "requires": { - "acorn": "5.5.0", - "acorn-dynamic-import": "2.0.2", - "ajv": "5.5.2", - "ajv-keywords": "2.1.1", - "async": "2.6.0", - "enhanced-resolve": "3.4.1", - "escope": "3.6.0", - "interpret": "1.1.0", - "json-loader": "0.5.7", - "json5": "0.5.1", - "loader-runner": "2.3.0", - "loader-utils": "1.1.0", - "memory-fs": "0.4.1", - "mkdirp": "0.5.1", - "node-libs-browser": "2.1.0", - "source-map": "0.5.7", - "supports-color": "4.5.0", - "tapable": "0.2.8", - "uglifyjs-webpack-plugin": "0.4.6", - "watchpack": "1.4.0", - "webpack-sources": "1.1.0", - "yargs": "8.0.2" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "yargs": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-8.0.2.tgz", - "integrity": "sha1-YpmpBVsc78lp/355wdkY3Osiw2A=", - "dev": true, - "requires": { - "camelcase": "4.1.0", - "cliui": "3.2.0", - "decamelize": "1.2.0", - "get-caller-file": "1.0.2", - "os-locale": "2.1.0", - "read-pkg-up": "2.0.0", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "2.1.1", - "which-module": "2.0.0", - "y18n": "3.2.1", - "yargs-parser": "7.0.0" - } - } - } - }, - "y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", - "dev": true - }, - "yargs": { - "version": "10.0.3", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-10.0.3.tgz", - "integrity": "sha512-DqBpQ8NAUX4GyPP/ijDGHsJya4tYqLQrjPr95HNsr1YwL3+daCfvBwg7+gIC6IdJhR2kATh3hb61vjzMWEtjdw==", - "dev": true, - "requires": { - "cliui": "3.2.0", - "decamelize": "1.2.0", - "find-up": "2.1.0", - "get-caller-file": "1.0.2", - "os-locale": "2.1.0", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "2.1.1", - "which-module": "2.0.0", - "y18n": "3.2.1", - "yargs-parser": "8.1.0" - }, - "dependencies": { - "yargs-parser": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-8.1.0.tgz", - "integrity": "sha512-yP+6QqN8BmrgW2ggLtTbdrOyBNSI7zBa4IykmiV5R1wl1JWNxQvWhMfMdmzIYtKU7oP3OOInY/tl2ov3BDjnJQ==", - "dev": true, - "requires": { - "camelcase": "4.1.0" - } - } - } - }, - "yargs-parser": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-7.0.0.tgz", - "integrity": "sha1-jQrELxbqVd69MyyvTEA4s+P139k=", - "dev": true, - "requires": { - "camelcase": "4.1.0" - } - }, - "yauzl": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.9.1.tgz", - "integrity": "sha1-qBmB6nCleUYTOIPwKcWCGok1mn8=", - "dev": true, - "requires": { - "buffer-crc32": "0.2.13", - "fd-slicer": "1.0.1" + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.0.1" } } } }, "adm-zip": { - "version": "0.4.7", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.7.tgz", - "integrity": "sha1-hgbCy/HEJs6MjsABdER/1Jtur8E=", + "version": "0.4.11", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.11.tgz", + "integrity": "sha512-L8vcjDTCOIJk7wFvmlEUN7AsSb8T+2JrdP7KINBjzr24TJ5Mwj590sLu3BC7zNZowvJWa/JtPmD8eJCzdtDWjA==", "dev": true }, "agent-base": { @@ -1156,7 +1229,7 @@ "integrity": "sha512-c+R/U5X+2zz2+UCrCFv6odQzJdoqI+YecuhnAJLa1zYaMc13zPfwMwZrr91Pd1DYNo/yPRbiM4WVf9whgwFsIg==", "dev": true, "requires": { - "es6-promisify": "5.0.0" + "es6-promisify": "^5.0.0" } }, "ajv": { @@ -1165,9 +1238,9 @@ "integrity": "sha1-r6wpW7qgFSRJ5SJ0LkVHwa6TKNI=", "dev": true, "requires": { - "fast-deep-equal": "1.1.0", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1" + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0" } }, "ajv-keywords": { @@ -1182,8 +1255,8 @@ "integrity": "sha1-dvBx45H0Gf6f4/6n6SChrYJLK2E=", "dev": true, "requires": { - "fast-json-patch": "1.2.2", - "json-merge-patch": "0.2.3" + "fast-json-patch": "^1.0.0", + "json-merge-patch": "^0.2.3" } }, "align-text": { @@ -1192,9 +1265,9 @@ "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", "dev": true, "requires": { - "kind-of": "3.2.2", - "longest": "1.0.1", - "repeat-string": "1.6.1" + "kind-of": "^3.0.2", + "longest": "^1.0.1", + "repeat-string": "^1.5.2" } }, "amdefine": { @@ -1209,7 +1282,7 @@ "integrity": "sha1-BFBj125qH5zTJ6V6ASaqD97Dcac=", "dev": true, "requires": { - "emoji-regex": "6.1.3" + "emoji-regex": "~6.1.0" } }, "ansi-align": { @@ -1218,13 +1291,13 @@ "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", "dev": true, "requires": { - "string-width": "2.1.1" + "string-width": "^2.0.0" } }, "ansi-escapes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.0.0.tgz", - "integrity": "sha512-O/klc27mWNUigtv0F8NJWbLF00OcegQalkqKURWdosW08YZKi4m6CnSUSvIZG1otNJbTWhN01Hhz389DW7mvDQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz", + "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==", "dev": true }, "ansi-regex": { @@ -1239,9 +1312,15 @@ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "requires": { - "color-convert": "1.9.1" + "color-convert": "^1.9.0" } }, + "ansicolors": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz", + "integrity": "sha1-ZlWX3oap/+Oqm/vmyuXG6kJrSXk=", + "dev": true + }, "any-promise": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", @@ -1249,13 +1328,289 @@ "dev": true }, "anymatch": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", - "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", "dev": true, "requires": { - "micromatch": "2.3.11", - "normalize-path": "2.1.1" + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + }, + "dependencies": { + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.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.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + } } }, "aproba": { @@ -1270,15 +1625,15 @@ "integrity": "sha1-TyGU1tj5nfP1MeaIHxTxXVX6ryI=", "dev": true, "requires": { - "archiver-utils": "1.3.0", - "async": "2.6.0", - "buffer-crc32": "0.2.13", - "glob": "7.0.6", - "lodash": "4.17.5", - "readable-stream": "2.3.4", - "tar-stream": "1.5.5", - "walkdir": "0.0.11", - "zip-stream": "1.2.0" + "archiver-utils": "^1.3.0", + "async": "^2.0.0", + "buffer-crc32": "^0.2.1", + "glob": "^7.0.0", + "lodash": "^4.8.0", + "readable-stream": "^2.0.0", + "tar-stream": "^1.5.0", + "walkdir": "^0.0.11", + "zip-stream": "^1.1.0" }, "dependencies": { "async": { @@ -1287,7 +1642,7 @@ "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", "dev": true, "requires": { - "lodash": "4.17.5" + "lodash": "^4.14.0" } } } @@ -1298,21 +1653,27 @@ "integrity": "sha1-5QtMCccL89aA4y/xt5lOn52JUXQ=", "dev": true, "requires": { - "glob": "7.0.6", - "graceful-fs": "4.1.11", - "lazystream": "1.0.0", - "lodash": "4.17.5", - "normalize-path": "2.1.1", - "readable-stream": "2.3.4" + "glob": "^7.0.0", + "graceful-fs": "^4.1.0", + "lazystream": "^1.0.0", + "lodash": "^4.8.0", + "normalize-path": "^2.0.0", + "readable-stream": "^2.0.0" } }, + "archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", + "dev": true + }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "requires": { - "sprintf-js": "1.0.3" + "sprintf-js": "~1.0.2" }, "dependencies": { "sprintf-js": { @@ -1329,7 +1690,7 @@ "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", "dev": true, "requires": { - "arr-flatten": "1.1.0" + "arr-flatten": "^1.0.1" } }, "arr-flatten": { @@ -1385,7 +1746,7 @@ "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", "dev": true, "requires": { - "array-uniq": "1.0.3" + "array-uniq": "^1.0.1" } }, "array-uniq": { @@ -1424,9 +1785,9 @@ "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", "dev": true, "requires": { - "bn.js": "4.11.8", - "inherits": "2.0.3", - "minimalistic-assert": "1.0.0" + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" } }, "assert": { @@ -1456,6 +1817,12 @@ "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", "dev": true }, + "ast-types": { + "version": "0.11.5", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.11.5.tgz", + "integrity": "sha512-oJjo+5e7/vEc2FBK8gUalV0pba4L3VdBIs2EKhOLHLcOd2FgQIVQN9xb0eZ9IjEWyAL7vq6fGJxOvVvdCHNyMw==", + "dev": true + }, "async": { "version": "1.5.2", "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", @@ -1481,9 +1848,9 @@ "dev": true }, "atob": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.0.3.tgz", - "integrity": "sha1-GcenYEc3dEaPILLS0DNyrX1Mv10=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.1.tgz", + "integrity": "sha1-ri1acpR38onWDdf5amMUoi3Wwio=", "dev": true }, "aws-sign2": { @@ -1493,9 +1860,9 @@ "dev": true }, "aws4": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz", - "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4=", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.7.0.tgz", + "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==", "dev": true }, "babel-code-frame": { @@ -1504,9 +1871,9 @@ "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", "dev": true, "requires": { - "chalk": "1.1.3", - "esutils": "2.0.2", - "js-tokens": "3.0.2" + "chalk": "^1.1.3", + "esutils": "^2.0.2", + "js-tokens": "^3.0.2" }, "dependencies": { "ansi-styles": { @@ -1521,11 +1888,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "supports-color": { @@ -1542,25 +1909,25 @@ "integrity": "sha1-rzL3izGm/O8RnIew/Y2XU/A6C7g=", "dev": true, "requires": { - "babel-code-frame": "6.26.0", - "babel-generator": "6.26.1", - "babel-helpers": "6.24.1", - "babel-messages": "6.23.0", - "babel-register": "6.26.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "convert-source-map": "1.5.1", - "debug": "2.6.9", - "json5": "0.5.1", - "lodash": "4.17.5", - "minimatch": "3.0.4", - "path-is-absolute": "1.0.1", - "private": "0.1.8", - "slash": "1.0.0", - "source-map": "0.5.7" + "babel-code-frame": "^6.26.0", + "babel-generator": "^6.26.0", + "babel-helpers": "^6.24.1", + "babel-messages": "^6.23.0", + "babel-register": "^6.26.0", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "convert-source-map": "^1.5.0", + "debug": "^2.6.8", + "json5": "^0.5.1", + "lodash": "^4.17.4", + "minimatch": "^3.0.4", + "path-is-absolute": "^1.0.1", + "private": "^0.1.7", + "slash": "^1.0.0", + "source-map": "^0.5.6" }, "dependencies": { "babylon": { @@ -1577,14 +1944,14 @@ "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", "dev": true, "requires": { - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "detect-indent": "4.0.0", - "jsesc": "1.3.0", - "lodash": "4.17.5", - "source-map": "0.5.7", - "trim-right": "1.0.1" + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "detect-indent": "^4.0.0", + "jsesc": "^1.3.0", + "lodash": "^4.17.4", + "source-map": "^0.5.7", + "trim-right": "^1.0.1" }, "dependencies": { "jsesc": { @@ -1601,8 +1968,8 @@ "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", "dev": true, "requires": { - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" } }, "babel-loader": { @@ -1611,9 +1978,9 @@ "integrity": "sha512-P1zch1DvQy3RGmp/1CH78uPg5gTPQQ01S9r6ipCOWVamO0UIC8gnrx7m7LsUsXa470yB6IOZxhtEEwIUclRLNw==", "dev": true, "requires": { - "find-cache-dir": "1.0.0", - "loader-utils": "1.1.0", - "mkdirp": "0.5.1" + "find-cache-dir": "^1.0.0", + "loader-utils": "^1.0.2", + "mkdirp": "^0.5.1" } }, "babel-messages": { @@ -1622,7 +1989,7 @@ "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", "dev": true, "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-polyfill": { @@ -1631,9 +1998,9 @@ "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", "dev": true, "requires": { - "babel-runtime": "6.26.0", - "core-js": "2.5.3", - "regenerator-runtime": "0.10.5" + "babel-runtime": "^6.26.0", + "core-js": "^2.5.0", + "regenerator-runtime": "^0.10.5" }, "dependencies": { "regenerator-runtime": { @@ -1650,13 +2017,13 @@ "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", "dev": true, "requires": { - "babel-core": "6.26.0", - "babel-runtime": "6.26.0", - "core-js": "2.5.3", - "home-or-tmp": "2.0.0", - "lodash": "4.17.5", - "mkdirp": "0.5.1", - "source-map-support": "0.4.18" + "babel-core": "^6.26.0", + "babel-runtime": "^6.26.0", + "core-js": "^2.5.0", + "home-or-tmp": "^2.0.0", + "lodash": "^4.17.4", + "mkdirp": "^0.5.1", + "source-map-support": "^0.4.15" }, "dependencies": { "source-map-support": { @@ -1665,7 +2032,7 @@ "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", "dev": true, "requires": { - "source-map": "0.5.7" + "source-map": "^0.5.6" } } } @@ -1676,8 +2043,8 @@ "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", "dev": true, "requires": { - "core-js": "2.5.3", - "regenerator-runtime": "0.11.1" + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" } }, "babel-template": { @@ -1686,11 +2053,11 @@ "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", "dev": true, "requires": { - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "lodash": "4.17.5" + "babel-runtime": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "lodash": "^4.17.4" }, "dependencies": { "babylon": { @@ -1707,15 +2074,15 @@ "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", "dev": true, "requires": { - "babel-code-frame": "6.26.0", - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "debug": "2.6.9", - "globals": "9.18.0", - "invariant": "2.2.3", - "lodash": "4.17.5" + "babel-code-frame": "^6.26.0", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "debug": "^2.6.8", + "globals": "^9.18.0", + "invariant": "^2.2.2", + "lodash": "^4.17.4" }, "dependencies": { "babylon": { @@ -1738,10 +2105,10 @@ "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", "dev": true, "requires": { - "babel-runtime": "6.26.0", - "esutils": "2.0.2", - "lodash": "4.17.5", - "to-fast-properties": "1.0.3" + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" }, "dependencies": { "to-fast-properties": { @@ -1759,9 +2126,9 @@ "dev": true }, "bail": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.2.tgz", - "integrity": "sha1-99bBcxYwqfnw1NNe0fli4gdKF2Q=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.3.tgz", + "integrity": "sha512-1X8CnjFVQ+a+KW36uBNMTU5s8+v5FzeqrP7hTG5aTb4aPreSbZJlhwPon9VKMuEVgV++JM+SQrALY3kr7eswdg==", "dev": true }, "balanced-match": { @@ -1776,13 +2143,13 @@ "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", "dev": true, "requires": { - "cache-base": "1.0.1", - "class-utils": "0.3.6", - "component-emitter": "1.2.1", - "define-property": "1.0.0", - "isobject": "3.0.1", - "mixin-deep": "1.3.1", - "pascalcase": "0.1.1" + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" }, "dependencies": { "define-property": { @@ -1791,27 +2158,56 @@ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - } + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + } } }, "base64-js": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.2.3.tgz", - "integrity": "sha512-MsAhsUW1GxCdgYSO6tAfZrNapmUKk7mWx/k5mFY/A1gBtkaCaNapTg+FExCw1r9yeaZhqx/xPg43xgTFH6KL5w==", - "dev": true - }, - "base64url": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/base64url/-/base64url-2.0.0.tgz", - "integrity": "sha1-6sFuA+oUOO/5Qj1puqNiYu0fcLs=", + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-0.0.2.tgz", + "integrity": "sha1-Ak8Pcq+iW3X5wO5zzU9V7Bvtl4Q=", "dev": true }, "basic-auth": { @@ -1836,7 +2232,7 @@ "dev": true, "optional": true, "requires": { - "tweetnacl": "0.14.5" + "tweetnacl": "^0.14.3" } }, "big.js": { @@ -1857,7 +2253,7 @@ "integrity": "sha1-ysMo977kVzDUBLaSID/LWQ4XLV4=", "dev": true, "requires": { - "readable-stream": "2.3.4" + "readable-stream": "^2.0.5" } }, "bluebird": { @@ -1872,21 +2268,57 @@ "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", "dev": true }, + "body": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/body/-/body-5.1.0.tgz", + "integrity": "sha1-5LoM5BCkaTYyM2dgnstOZVMSUGk=", + "dev": true, + "requires": { + "continuable-cache": "^0.3.1", + "error": "^7.0.0", + "raw-body": "~1.1.0", + "safe-json-parse": "~1.0.1" + }, + "dependencies": { + "bytes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz", + "integrity": "sha1-NWnt6Lo0MV+rmcPpLLBMciDeH6g=", + "dev": true + }, + "raw-body": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-1.1.7.tgz", + "integrity": "sha1-HQJ8K/oRasxmI7yo8AAWVyqH1CU=", + "dev": true, + "requires": { + "bytes": "1", + "string_decoder": "0.10" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + } + } + }, "body-parser": { "version": "1.18.2", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", "requires": { "bytes": "3.0.0", - "content-type": "1.0.4", + "content-type": "~1.0.4", "debug": "2.6.9", - "depd": "1.1.2", - "http-errors": "1.6.2", + "depd": "~1.1.1", + "http-errors": "~1.6.2", "iconv-lite": "0.4.19", - "on-finished": "2.3.0", + "on-finished": "~2.3.0", "qs": "6.5.1", "raw-body": "2.3.2", - "type-is": "1.6.16" + "type-is": "~1.6.15" } }, "boolbase": { @@ -1901,7 +2333,7 @@ "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=", "dev": true, "requires": { - "hoek": "4.2.1" + "hoek": "4.x.x" } }, "bootstrap": { @@ -1910,6 +2342,16 @@ "integrity": "sha1-WjiTlFSfIzMIdaOxUGVldPip63E=", "dev": true }, + "bops": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/bops/-/bops-0.1.1.tgz", + "integrity": "sha1-Bi4CqNqoAfoQ8uXb5nQM/4Af4X4=", + "dev": true, + "requires": { + "base64-js": "0.0.2", + "to-utf8": "0.0.1" + } + }, "boundary": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/boundary/-/boundary-1.0.1.tgz", @@ -1922,13 +2364,13 @@ "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", "dev": true, "requires": { - "ansi-align": "2.0.0", - "camelcase": "4.1.0", - "chalk": "2.3.2", - "cli-boxes": "1.0.0", - "string-width": "2.1.1", - "term-size": "1.2.0", - "widest-line": "2.0.0" + "ansi-align": "^2.0.0", + "camelcase": "^4.0.0", + "chalk": "^2.0.1", + "cli-boxes": "^1.0.0", + "string-width": "^2.0.0", + "term-size": "^1.2.0", + "widest-line": "^2.0.0" }, "dependencies": { "camelcase": { @@ -1945,7 +2387,7 @@ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, "requires": { - "balanced-match": "1.0.0", + "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, @@ -1955,9 +2397,9 @@ "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", "dev": true, "requires": { - "expand-range": "1.8.2", - "preserve": "0.2.0", - "repeat-element": "1.1.2" + "expand-range": "^1.8.1", + "preserve": "^0.2.0", + "repeat-element": "^1.1.2" } }, "brorand": { @@ -1973,39 +2415,39 @@ "dev": true }, "browserify-aes": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.1.1.tgz", - "integrity": "sha512-UGnTYAnB2a3YuYKIRy1/4FB2HdM866E0qC46JXvVTYKlBlZlnvfpSfY6OKfXZAkv70eJ2a1SqzpAo5CRhZGDFg==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", "dev": true, "requires": { - "buffer-xor": "1.0.3", - "cipher-base": "1.0.4", - "create-hash": "1.1.3", - "evp_bytestokey": "1.0.3", - "inherits": "2.0.3", - "safe-buffer": "5.1.1" + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" } }, "browserify-cipher": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.0.tgz", - "integrity": "sha1-mYgkSHS/XtTijalWZtzWasj8Njo=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", "dev": true, "requires": { - "browserify-aes": "1.1.1", - "browserify-des": "1.0.0", - "evp_bytestokey": "1.0.3" + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" } }, "browserify-des": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.0.tgz", - "integrity": "sha1-2qJ3cXRwki7S/hhZQRihdUOXId0=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.1.tgz", + "integrity": "sha512-zy0Cobe3hhgpiOM32Tj7KQ3Vl91m0njwsjzZQK1L+JDf11dzP9qIvjreVinsvXrgfjhStXwUWAEpB9D7Gwmayw==", "dev": true, "requires": { - "cipher-base": "1.0.4", - "des.js": "1.0.0", - "inherits": "2.0.3" + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1" } }, "browserify-rsa": { @@ -2014,8 +2456,8 @@ "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", "dev": true, "requires": { - "bn.js": "4.11.8", - "randombytes": "2.0.6" + "bn.js": "^4.1.0", + "randombytes": "^2.0.1" } }, "browserify-sign": { @@ -2024,13 +2466,13 @@ "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", "dev": true, "requires": { - "bn.js": "4.11.8", - "browserify-rsa": "4.0.1", - "create-hash": "1.1.3", - "create-hmac": "1.1.6", - "elliptic": "6.4.0", - "inherits": "2.0.3", - "parse-asn1": "5.1.0" + "bn.js": "^4.1.1", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.2", + "elliptic": "^6.0.0", + "inherits": "^2.0.1", + "parse-asn1": "^5.0.0" } }, "browserify-zlib": { @@ -2039,7 +2481,7 @@ "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", "dev": true, "requires": { - "pako": "1.0.6" + "pako": "~1.0.5" } }, "browserslist": { @@ -2048,8 +2490,8 @@ "integrity": "sha512-zHGaPnTt70ywm+glR7uMJFZSl+ADGO67SgD2ae20L+Y3KJUeH4fVa89OkTqKCqAnXFE9mO4LTHBKBqKRlr7VNw==", "dev": true, "requires": { - "caniuse-lite": "1.0.30000810", - "electron-to-chromium": "1.3.34" + "caniuse-lite": "^1.0.30000809", + "electron-to-chromium": "^1.3.33" } }, "buffer": { @@ -2058,9 +2500,17 @@ "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", "dev": true, "requires": { - "base64-js": "1.2.3", - "ieee754": "1.1.8", - "isarray": "1.0.0" + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + }, + "dependencies": { + "base64-js": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", + "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==", + "dev": true + } } }, "buffer-crc32": { @@ -2075,6 +2525,12 @@ "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=", "dev": true }, + "buffer-from": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.0.tgz", + "integrity": "sha512-c5mRlguI/Pe2dSZmpER62rSCu0ryKmWddzRYsuXc50U2/g8jMOulc31VZMa4mYx31U5xsmSOpDCgH88Vl9cDGQ==", + "dev": true + }, "buffer-xor": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", @@ -2099,10 +2555,10 @@ "integrity": "sha1-8VDw9nSKvdcq6uhPBEA74u8RN5c=", "dev": true, "requires": { - "dtrace-provider": "0.8.6", - "moment": "2.21.0", - "mv": "2.1.1", - "safe-json-stringify": "1.1.0" + "dtrace-provider": "~0.8", + "moment": "^2.10.6", + "mv": "~2", + "safe-json-stringify": "~1" } }, "bytes": { @@ -2116,19 +2572,19 @@ "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==", "dev": true, "requires": { - "bluebird": "3.5.1", - "chownr": "1.0.1", - "glob": "7.1.2", - "graceful-fs": "4.1.11", - "lru-cache": "4.1.1", - "mississippi": "2.0.0", - "mkdirp": "0.5.1", - "move-concurrently": "1.0.1", - "promise-inflight": "1.0.1", - "rimraf": "2.6.2", - "ssri": "5.2.4", - "unique-filename": "1.1.0", - "y18n": "4.0.0" + "bluebird": "^3.5.1", + "chownr": "^1.0.1", + "glob": "^7.1.2", + "graceful-fs": "^4.1.11", + "lru-cache": "^4.1.1", + "mississippi": "^2.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.2", + "ssri": "^5.2.4", + "unique-filename": "^1.1.0", + "y18n": "^4.0.0" }, "dependencies": { "glob": { @@ -2137,12 +2593,12 @@ "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "rimraf": { @@ -2151,7 +2607,7 @@ "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", "dev": true, "requires": { - "glob": "7.1.2" + "glob": "^7.0.5" } } } @@ -2162,15 +2618,15 @@ "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", "dev": true, "requires": { - "collection-visit": "1.0.0", - "component-emitter": "1.2.1", - "get-value": "2.0.6", - "has-value": "1.0.0", - "isobject": "3.0.1", - "set-value": "2.0.0", - "to-object-path": "0.3.0", - "union-value": "1.0.0", - "unset-value": "1.0.0" + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" }, "dependencies": { "isobject": { @@ -2187,7 +2643,7 @@ "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", "dev": true, "requires": { - "callsites": "0.2.0" + "callsites": "^0.2.0" } }, "callsites": { @@ -2208,8 +2664,8 @@ "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", "dev": true, "requires": { - "camelcase": "2.1.1", - "map-obj": "1.0.1" + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" } }, "caniuse-lite": { @@ -2231,9 +2687,9 @@ "dev": true }, "ccount": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.0.2.tgz", - "integrity": "sha1-U7ai+BW7d7nChx97mnLDol8djok=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.0.3.tgz", + "integrity": "sha512-Jt9tIBkRc9POUof7QA/VwWd+58fKkEEfI+/t1/eOlxKM7ZhrczNzMFefge7Ai+39y1pR/pP6cI19guHy3FSLmw==", "dev": true }, "center-align": { @@ -2242,8 +2698,8 @@ "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", "dev": true, "requires": { - "align-text": "0.1.4", - "lazy-cache": "1.0.4" + "align-text": "^0.1.3", + "lazy-cache": "^1.0.3" } }, "chai": { @@ -2252,12 +2708,12 @@ "integrity": "sha1-D2RYS6ZC8PKs4oBiefTwbKI61zw=", "dev": true, "requires": { - "assertion-error": "1.1.0", - "check-error": "1.0.2", - "deep-eql": "3.0.1", - "get-func-name": "2.0.0", - "pathval": "1.1.0", - "type-detect": "4.0.8" + "assertion-error": "^1.0.1", + "check-error": "^1.0.1", + "deep-eql": "^3.0.0", + "get-func-name": "^2.0.0", + "pathval": "^1.0.0", + "type-detect": "^4.0.0" } }, "chai-arrays": { @@ -2272,7 +2728,7 @@ "integrity": "sha512-azL6xMoi+uxu6z4rhWQ1jbdUhOMhis2PvscD/xjLqNMkv3BPPp2JyyuTHOrf9BOosGpNQ11v6BKv/g57RXbiaA==", "dev": true, "requires": { - "check-error": "1.0.2" + "check-error": "^1.0.2" } }, "chai-json-schema": { @@ -2282,7 +2738,7 @@ "dev": true, "requires": { "jsonpointer.js": "0.4.0", - "tv4": "1.2.7" + "tv4": "~1.2.7" } }, "chalk": { @@ -2291,27 +2747,27 @@ "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==", "dev": true, "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.3.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, "character-entities": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.1.tgz", - "integrity": "sha1-92hxvl72bdt/j440eOzDdMJ9bco=", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.2.tgz", + "integrity": "sha512-sMoHX6/nBiy3KKfC78dnEalnpn0Az0oSNvqUWYTtYrhRI5iUIYsROU48G+E+kMFQzqXaJ8kHJZ85n7y6/PHgwQ==", "dev": true }, "character-entities-html4": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-1.1.1.tgz", - "integrity": "sha1-NZoqSg9+KdPcKsmb2+Ie45Q46lA=", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-1.1.2.tgz", + "integrity": "sha512-sIrXwyna2+5b0eB9W149izTPJk/KkJTg6mEzDGibwBUkyH1SbDa+nf515Ppdi3MaH35lW0JFJDWeq9Luzes1Iw==", "dev": true }, "character-entities-legacy": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.1.tgz", - "integrity": "sha1-9Ad53xoQGHK7UQo9KV4fzPFHIC8=", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.2.tgz", + "integrity": "sha512-9NB2VbXtXYWdXzqrvAHykE/f0QJxzaKIpZ5QzNZrrgQ7Iyxr2vnfS8fCBNVW9nUEZE0lo57nxKRqnzY/dKrwlA==", "dev": true }, "character-parser": { @@ -2320,13 +2776,13 @@ "integrity": "sha1-x84o821LzZdE5f/CxfzeHHMmH8A=", "dev": true, "requires": { - "is-regex": "1.0.4" + "is-regex": "^1.0.3" } }, "character-reference-invalid": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.1.tgz", - "integrity": "sha1-lCg191Dk7GGjCOYMLvjMEBEgLvw=", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.2.tgz", + "integrity": "sha512-7I/xceXfKyUJmSAn/jw8ve/9DyOP7XxufNYLI9Px7CmsKgEUaZLUTax6nZxGQtaoiZCjpu6cHPj20xC/vqRReQ==", "dev": true }, "chardet": { @@ -2347,29 +2803,130 @@ "integrity": "sha1-S59TqBsn5NXawxwP/Qz6A8xoMNs=", "dev": true, "requires": { - "css-select": "1.2.0", - "dom-serializer": "0.1.0", - "entities": "1.1.1", - "htmlparser2": "3.9.2", - "lodash": "4.17.5", - "parse5": "3.0.3" + "css-select": "~1.2.0", + "dom-serializer": "~0.1.0", + "entities": "~1.1.1", + "htmlparser2": "^3.9.1", + "lodash": "^4.15.0", + "parse5": "^3.0.1" } }, "chokidar": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", - "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", - "dev": true, - "requires": { - "anymatch": "1.3.2", - "async-each": "1.0.1", - "fsevents": "1.1.3", - "glob-parent": "2.0.0", - "inherits": "2.0.3", - "is-binary-path": "1.0.1", - "is-glob": "2.0.1", - "path-is-absolute": "1.0.1", - "readdirp": "2.1.0" + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.3.tgz", + "integrity": "sha512-zW8iXYZtXMx4kux/nuZVXjkLP+CyIK5Al5FHnj1OgTKGZfp4Oy6/ymtMSKFv3GD8DviEmUPmJg9eFdJ/JzudMg==", + "dev": true, + "requires": { + "anymatch": "^2.0.0", + "async-each": "^1.0.0", + "braces": "^2.3.0", + "fsevents": "^1.1.2", + "glob-parent": "^3.1.0", + "inherits": "^2.0.1", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^2.1.1", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.0.0", + "upath": "^1.0.0" + }, + "dependencies": { + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-glob": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz", + "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } } }, "chownr": { @@ -2379,9 +2936,9 @@ "dev": true }, "chrome-trace-event": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-0.1.2.tgz", - "integrity": "sha1-kPNohdU0WlBiEzLwcXtZWIPV2YI=", + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-0.1.3.tgz", + "integrity": "sha512-sjndyZHrrWiu4RY7AkHgjn80GfAM2ZSzUkZLV/Js59Ldmh6JDThf0SUmOHU53rFu2rVxxfCzJ30Ukcfch3Gb/A==", "dev": true }, "cipher-base": { @@ -2390,8 +2947,8 @@ "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", "dev": true, "requires": { - "inherits": "2.0.3", - "safe-buffer": "5.1.1" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" } }, "circular-json": { @@ -2406,10 +2963,10 @@ "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", "dev": true, "requires": { - "arr-union": "3.1.0", - "define-property": "0.2.5", - "isobject": "3.0.1", - "static-extend": "0.1.2" + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" }, "dependencies": { "define-property": { @@ -2418,58 +2975,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, - "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "1.1.6" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dev": true, - "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "1.1.6" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" + "is-descriptor": "^0.1.0" } }, "isobject": { @@ -2477,12 +2983,6 @@ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", "dev": true - }, - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true } } }, @@ -2492,8 +2992,8 @@ "integrity": "sha1-vxlF6C/ICPVWlebd6uwBQA79A/8=", "dev": true, "requires": { - "commander": "2.8.1", - "source-map": "0.4.4" + "commander": "2.8.x", + "source-map": "0.4.x" }, "dependencies": { "source-map": { @@ -2502,7 +3002,7 @@ "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", "dev": true, "requires": { - "amdefine": "1.0.1" + "amdefine": ">=0.0.4" } } } @@ -2519,7 +3019,7 @@ "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", "dev": true, "requires": { - "restore-cursor": "2.0.0" + "restore-cursor": "^2.0.0" } }, "cli-width": { @@ -2551,17 +3051,40 @@ "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", "dev": true, "requires": { - "center-align": "0.1.3", - "right-align": "0.1.3", + "center-align": "^0.1.1", + "right-align": "^0.1.1", "wordwrap": "0.0.2" } }, "clone": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.3.tgz", - "integrity": "sha1-KY1+IjFmD0DAA8LtMUDezz9TCF8=", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", "dev": true }, + "clone-deep": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-0.3.0.tgz", + "integrity": "sha1-NIxhrpzb4O3+BT2R/0zFIdeQ7eg=", + "dev": true, + "requires": { + "for-own": "^1.0.0", + "is-plain-object": "^2.0.1", + "kind-of": "^3.2.2", + "shallow-clone": "^0.1.2" + }, + "dependencies": { + "for-own": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", + "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "dev": true, + "requires": { + "for-in": "^1.0.1" + } + } + } + }, "co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", @@ -2587,9 +3110,9 @@ "dev": true }, "collapse-white-space": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.3.tgz", - "integrity": "sha1-S5BvZw5aljqHt2sOFolkM0G2Ajw=", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.4.tgz", + "integrity": "sha512-YfQ1tAUZm561vpYD+5eyWN8+UsceQbSrqqlc/6zDY2gtAE+uZLSdkkovhnGpmCThsvKBFakq4EdY/FF93E8XIw==", "dev": true }, "collection-visit": { @@ -2598,8 +3121,8 @@ "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", "dev": true, "requires": { - "map-visit": "1.0.0", - "object-visit": "1.0.1" + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" } }, "color-convert": { @@ -2608,7 +3131,7 @@ "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", "dev": true, "requires": { - "color-name": "1.1.3" + "color-name": "^1.1.1" } }, "color-name": { @@ -2629,8 +3152,8 @@ "integrity": "sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs=", "dev": true, "requires": { - "strip-ansi": "3.0.1", - "wcwidth": "1.0.1" + "strip-ansi": "^3.0.0", + "wcwidth": "^1.0.0" } }, "combined-stream": { @@ -2639,7 +3162,7 @@ "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", "dev": true, "requires": { - "delayed-stream": "1.0.0" + "delayed-stream": "~1.0.0" } }, "commander": { @@ -2648,7 +3171,7 @@ "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", "dev": true, "requires": { - "graceful-readlink": "1.0.1" + "graceful-readlink": ">= 1.0.0" } }, "common-tags": { @@ -2657,7 +3180,7 @@ "integrity": "sha512-joj9ZlUOjCrwdbmiLqafeUSgkUM74NqhLsZtSqDmhKudaIY197zTrb8JMl31fMnCUuxwFT23eC/oWvrZzDLRJQ==", "dev": true, "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.26.0" } }, "commondir": { @@ -2678,10 +3201,10 @@ "integrity": "sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=", "dev": true, "requires": { - "buffer-crc32": "0.2.13", - "crc32-stream": "2.0.0", - "normalize-path": "2.1.1", - "readable-stream": "2.3.4" + "buffer-crc32": "^0.2.1", + "crc32-stream": "^2.0.0", + "normalize-path": "^2.0.0", + "readable-stream": "^2.0.0" } }, "concat-map": { @@ -2696,23 +3219,23 @@ "integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=", "dev": true, "requires": { - "inherits": "2.0.3", - "readable-stream": "2.3.4", - "typedarray": "0.0.6" + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" } }, "configstore": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.1.tgz", - "integrity": "sha512-5oNkD/L++l0O6xGXxb1EWS7SivtjfGQlRyxJsYgE0Z495/L81e2h4/d3r969hoPXuFItzNOKMtsXgYG4c7dYvw==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", + "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", "dev": true, "requires": { - "dot-prop": "4.2.0", - "graceful-fs": "4.1.11", - "make-dir": "1.2.0", - "unique-string": "1.0.0", - "write-file-atomic": "2.3.0", - "xdg-basedir": "3.0.0" + "dot-prop": "^4.1.0", + "graceful-fs": "^4.1.2", + "make-dir": "^1.0.0", + "unique-string": "^1.0.0", + "write-file-atomic": "^2.0.0", + "xdg-basedir": "^3.0.0" } }, "connect": { @@ -2723,7 +3246,7 @@ "requires": { "debug": "2.6.9", "finalhandler": "1.1.0", - "parseurl": "1.3.2", + "parseurl": "~1.3.2", "utils-merge": "1.0.1" } }, @@ -2739,7 +3262,7 @@ "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", "dev": true, "requires": { - "date-now": "0.1.4" + "date-now": "^0.1.4" } }, "constantinople": { @@ -2748,10 +3271,10 @@ "integrity": "sha512-yePcBqEFhLOqSBtwYOGGS1exHo/s1xjekXiinh4itpNQGCu4KA1euPh1fg07N2wMITZXQkBz75Ntdt1ctGZouw==", "dev": true, "requires": { - "@types/babel-types": "7.0.1", - "@types/babylon": "6.16.2", - "babel-types": "6.26.0", - "babylon": "6.18.0" + "@types/babel-types": "^7.0.0", + "@types/babylon": "^6.16.2", + "babel-types": "^6.26.0", + "babylon": "^6.18.0" }, "dependencies": { "babylon": { @@ -2778,6 +3301,12 @@ "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" }, + "continuable-cache": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/continuable-cache/-/continuable-cache-0.3.1.tgz", + "integrity": "sha1-vXJ6f67XfnH/OYWskzUakSczrQ8=", + "dev": true + }, "convert-source-map": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", @@ -2800,12 +3329,12 @@ "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", "dev": true, "requires": { - "aproba": "1.2.0", - "fs-write-stream-atomic": "1.0.10", - "iferr": "0.1.5", - "mkdirp": "0.5.1", - "rimraf": "2.6.2", - "run-queue": "1.0.3" + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" }, "dependencies": { "rimraf": { @@ -2814,7 +3343,7 @@ "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", "dev": true, "requires": { - "glob": "7.0.6" + "glob": "^7.0.5" } } } @@ -2849,18 +3378,18 @@ "integrity": "sha1-483TtN8xaN10494/u8t7KX/pCPQ=", "dev": true, "requires": { - "crc": "3.5.0", - "readable-stream": "2.3.4" + "crc": "^3.4.4", + "readable-stream": "^2.0.0" } }, "create-ecdh": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.0.tgz", - "integrity": "sha1-iIxyNZbN92EvZJgjPuvXo1MBc30=", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", + "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", "dev": true, "requires": { - "bn.js": "4.11.8", - "elliptic": "6.4.0" + "bn.js": "^4.1.0", + "elliptic": "^6.0.0" } }, "create-error-class": { @@ -2869,33 +3398,34 @@ "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", "dev": true, "requires": { - "capture-stack-trace": "1.0.0" + "capture-stack-trace": "^1.0.0" } }, "create-hash": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.3.tgz", - "integrity": "sha1-YGBCrIuSYnUPSDyt2rD1gZFy2P0=", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", "dev": true, "requires": { - "cipher-base": "1.0.4", - "inherits": "2.0.3", - "ripemd160": "2.0.1", - "sha.js": "2.4.10" + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" } }, "create-hmac": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.6.tgz", - "integrity": "sha1-rLniIaThe9sHbpBlfEK5PjcmzwY=", + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", "dev": true, "requires": { - "cipher-base": "1.0.4", - "create-hash": "1.1.3", - "inherits": "2.0.3", - "ripemd160": "2.0.1", - "safe-buffer": "5.1.1", - "sha.js": "2.4.10" + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" } }, "cross-spawn": { @@ -2904,9 +3434,9 @@ "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", "dev": true, "requires": { - "lru-cache": "4.1.1", - "shebang-command": "1.2.0", - "which": "1.2.14" + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" } }, "crx": { @@ -2915,10 +3445,10 @@ "integrity": "sha1-Fyk+51790IxtHIs+F0nS1XV89Cs=", "dev": true, "requires": { - "archiver": "1.3.0", - "commander": "2.8.1", - "es6-promise": "3.3.1", - "node-rsa": "0.2.30" + "archiver": "^1.1.0", + "commander": "^2.5.0", + "es6-promise": "^3.0.0", + "node-rsa": "^0.2.10" } }, "crx-parser": { @@ -2933,7 +3463,7 @@ "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=", "dev": true, "requires": { - "boom": "5.2.0" + "boom": "5.x.x" }, "dependencies": { "boom": { @@ -2942,7 +3472,7 @@ "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==", "dev": true, "requires": { - "hoek": "4.2.1" + "hoek": "4.x.x" } } } @@ -2953,17 +3483,17 @@ "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", "dev": true, "requires": { - "browserify-cipher": "1.0.0", - "browserify-sign": "4.0.4", - "create-ecdh": "4.0.0", - "create-hash": "1.1.3", - "create-hmac": "1.1.6", - "diffie-hellman": "5.0.2", - "inherits": "2.0.3", - "pbkdf2": "3.0.14", - "public-encrypt": "4.0.0", - "randombytes": "2.0.6", - "randomfill": "1.0.4" + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" } }, "crypto-random-string": { @@ -2984,10 +3514,10 @@ "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", "dev": true, "requires": { - "boolbase": "1.0.0", - "css-what": "2.1.0", + "boolbase": "~1.0.0", + "css-what": "2.1", "domutils": "1.5.1", - "nth-check": "1.0.1" + "nth-check": "~1.0.1" } }, "css-what": { @@ -3002,7 +3532,7 @@ "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", "dev": true, "requires": { - "array-find-index": "1.0.2" + "array-find-index": "^1.0.1" } }, "cyclist": { @@ -3017,7 +3547,7 @@ "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", "dev": true, "requires": { - "es5-ext": "0.10.39" + "es5-ext": "^0.10.9" } }, "dashdash": { @@ -3026,10 +3556,16 @@ "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", "dev": true, "requires": { - "assert-plus": "1.0.0" + "assert-plus": "^1.0.0" } }, - "date-now": { + "data-uri-to-buffer": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-1.2.0.tgz", + "integrity": "sha512-vKQ9DTQPN1FLYiiEEOQ6IBGFqvjCa5rSK3cWMy/Nespm5d/x3dGFT9UBZnkLxCwua/IXBi2TYnwTEpsOvhC4UQ==", + "dev": true + }, + "date-now": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", @@ -3041,8 +3577,8 @@ "integrity": "sha1-nxJLZ1lMk3/3BpMuSmQsyo27/uk=", "dev": true, "requires": { - "get-stdin": "4.0.1", - "meow": "3.7.0" + "get-stdin": "^4.0.1", + "meow": "^3.3.0" } }, "debounce": { @@ -3077,7 +3613,7 @@ "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", "dev": true, "requires": { - "type-detect": "4.0.8" + "type-detect": "^4.0.0" } }, "deep-equal": { @@ -3087,9 +3623,9 @@ "dev": true }, "deep-extend": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz", - "integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", "dev": true }, "deep-for-each": { @@ -3098,7 +3634,7 @@ "integrity": "sha1-r6DOJJxYSSqXIFOUeKGNN+GxC64=", "dev": true, "requires": { - "is-plain-object": "2.0.4" + "is-plain-object": "^2.0.1" } }, "deep-freeze": { @@ -3120,9 +3656,9 @@ "dev": true }, "deepmerge": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-1.5.2.tgz", - "integrity": "sha512-95k0GDqvBjZavkuvzx/YqVLv/6YYa17fz6ILMSf7neqQITCPbnfEnQvEgMPNjH4kgobe7+WIL0yJEHku+H3qtQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-2.1.0.tgz", + "integrity": "sha512-Q89Z26KAfA3lpPGhbF6XMfYAm3jIV3avViy6KOJ2JLzFbeWHOvPQUu5aSJIWXap3gDZC2y1eF5HXEPI2wGqgvw==", "dev": true }, "defaults": { @@ -3131,7 +3667,7 @@ "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", "dev": true, "requires": { - "clone": "1.0.3" + "clone": "^1.0.2" } }, "define-property": { @@ -3140,15 +3676,69 @@ "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", "dev": true, "requires": { - "is-descriptor": "1.0.2", - "isobject": "3.0.1" + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" }, "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", "dev": true + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + } + } + }, + "degenerator": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-1.0.4.tgz", + "integrity": "sha1-/PSQo37OJmRk2cxDGrmMWBnO0JU=", + "dev": true, + "requires": { + "ast-types": "0.x.x", + "escodegen": "1.x.x", + "esprima": "3.x.x" + }, + "dependencies": { + "esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", + "dev": true } } }, @@ -3158,13 +3748,13 @@ "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", "dev": true, "requires": { - "globby": "5.0.0", - "is-path-cwd": "1.0.0", - "is-path-in-cwd": "1.0.0", - "object-assign": "4.1.1", - "pify": "2.3.0", - "pinkie-promise": "2.0.1", - "rimraf": "2.2.8" + "globby": "^5.0.0", + "is-path-cwd": "^1.0.0", + "is-path-in-cwd": "^1.0.0", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "rimraf": "^2.2.8" }, "dependencies": { "pify": { @@ -3192,8 +3782,8 @@ "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", "dev": true, "requires": { - "inherits": "2.0.3", - "minimalistic-assert": "1.0.0" + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" } }, "desandro-matches-selector": { @@ -3213,7 +3803,7 @@ "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", "dev": true, "requires": { - "repeating": "2.0.1" + "repeating": "^2.0.0" } }, "diff": { @@ -3223,31 +3813,31 @@ "dev": true }, "diffie-hellman": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.2.tgz", - "integrity": "sha1-tYNXOScM/ias9jIJn97SoH8gnl4=", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", "dev": true, "requires": { - "bn.js": "4.11.8", - "miller-rabin": "4.0.1", - "randombytes": "2.0.6" + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" } }, "dispensary": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/dispensary/-/dispensary-0.12.0.tgz", - "integrity": "sha1-zEkbu/pmpXQUyVjGhYKkyHA/8Vk=", - "dev": true, - "requires": { - "array-from": "2.1.1", - "async": "2.6.0", - "natural-compare-lite": "1.4.0", - "pino": "4.10.3", - "request": "2.83.0", - "semver": "5.4.1", - "sha.js": "2.4.10", - "source-map-support": "0.5.0", - "yargs": "10.1.2" + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/dispensary/-/dispensary-0.18.0.tgz", + "integrity": "sha512-ikVxjigcj4leoPgjqYcHV1YhmLEZ5eXMq30CIPTf1BniWrH1C0X35F5iVCa4U2/JXZYcQJyHWniSRSOpM+hiNw==", + "dev": true, + "requires": { + "array-from": "~2.1.1", + "async": "~2.6.0", + "natural-compare-lite": "~1.4.0", + "pino": "~4.16.1", + "request": "~2.85.0", + "semver": "~5.5.0", + "sha.js": "~2.4.4", + "source-map-support": "~0.5.4", + "yargs": "~11.0.0" }, "dependencies": { "ansi-regex": { @@ -3257,29 +3847,29 @@ "dev": true }, "async": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", - "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", + "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", "dev": true, "requires": { - "lodash": "4.17.5" + "lodash": "^4.17.10" } }, "cliui": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.0.0.tgz", - "integrity": "sha512-nY3W5Gu2racvdDk//ELReY+dHjb9PlIcVDFXP72nVIhq2Gy3LuVXYwJoPVudwQnv1shtohpgkdCKT2YaKY0CKw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", "dev": true, "requires": { - "string-width": "2.1.1", - "strip-ansi": "4.0.0", - "wrap-ansi": "2.1.0" + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" } }, - "semver": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", - "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==", + "lodash": { + "version": "4.17.10", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", + "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", "dev": true }, "source-map": { @@ -3289,12 +3879,13 @@ "dev": true }, "source-map-support": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.0.tgz", - "integrity": "sha512-vUoN3I7fHQe0R/SJLKRdKYuEdRGogsviXFkHHo17AWaTGv17VLnxw+CFXvqy+y4ORZ3doWLQcxRYfwKrsd/H7Q==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.6.tgz", + "integrity": "sha512-N4KXEz7jcKqPf2b2vZF11lQIz9W5ZMuUcIOGj243lduidkf2fjkVKJS9vNxVWn3u/uxX38AcE8U9nnH9FPcq+g==", "dev": true, "requires": { - "source-map": "0.6.1" + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } }, "strip-ansi": { @@ -3303,7 +3894,7 @@ "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "dev": true, "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } }, "y18n": { @@ -3313,39 +3904,39 @@ "dev": true }, "yargs": { - "version": "10.1.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-10.1.2.tgz", - "integrity": "sha512-ivSoxqBGYOqQVruxD35+EyCFDYNEFL/Uo6FcOnz+9xZdZzK0Zzw4r4KhbrME1Oo2gOggwJod2MnsdamSG7H9ig==", - "dev": true, - "requires": { - "cliui": "4.0.0", - "decamelize": "1.2.0", - "find-up": "2.1.0", - "get-caller-file": "1.0.2", - "os-locale": "2.1.0", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "2.1.1", - "which-module": "2.0.0", - "y18n": "3.2.1", - "yargs-parser": "8.1.0" + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-11.0.0.tgz", + "integrity": "sha512-Rjp+lMYQOWtgqojx1dEWorjCofi1YN7AoFvYV7b1gx/7dAAeuI4kN5SZiEvr0ZmsZTOpDRcCqrpI10L31tFkBw==", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "decamelize": "^1.1.1", + "find-up": "^2.1.0", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^9.0.2" } } } }, "doctoc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/doctoc/-/doctoc-1.3.0.tgz", - "integrity": "sha1-fwg5hR3VjICKLK5V2VBOAS0I7jA=", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/doctoc/-/doctoc-1.3.1.tgz", + "integrity": "sha1-8BLjYD4xViVMLvIqyIxxkPVUJro=", "dev": true, "requires": { - "anchor-markdown-header": "0.5.7", - "htmlparser2": "3.9.2", - "markdown-to-ast": "3.4.0", - "minimist": "1.2.0", - "underscore": "1.8.3", - "update-section": "0.3.3" + "anchor-markdown-header": "^0.5.5", + "htmlparser2": "~3.9.2", + "markdown-to-ast": "~3.4.0", + "minimist": "~1.2.0", + "underscore": "~1.8.3", + "update-section": "^0.3.0" }, "dependencies": { "minimist": { @@ -3362,7 +3953,7 @@ "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "requires": { - "esutils": "2.0.2" + "esutils": "^2.0.2" } }, "doctypes": { @@ -3377,8 +3968,8 @@ "integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=", "dev": true, "requires": { - "domelementtype": "1.1.3", - "entities": "1.1.1" + "domelementtype": "~1.1.1", + "entities": "~1.1.1" }, "dependencies": { "domelementtype": { @@ -3408,12 +3999,12 @@ "dev": true }, "domhandler": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.1.tgz", - "integrity": "sha1-iS5HAAqZvlW783dP/qBWHYh5wlk=", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", "dev": true, "requires": { - "domelementtype": "1.3.0" + "domelementtype": "1" } }, "domutils": { @@ -3422,8 +4013,8 @@ "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", "dev": true, "requires": { - "dom-serializer": "0.1.0", - "domelementtype": "1.3.0" + "dom-serializer": "0", + "domelementtype": "1" } }, "dot-prop": { @@ -3432,17 +4023,17 @@ "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", "dev": true, "requires": { - "is-obj": "1.0.1" + "is-obj": "^1.0.0" } }, "dtrace-provider": { - "version": "0.8.6", - "resolved": "https://registry.npmjs.org/dtrace-provider/-/dtrace-provider-0.8.6.tgz", - "integrity": "sha1-QooiOv4DQl0s1tY0f99AxmkDVj0=", + "version": "0.8.7", + "resolved": "https://registry.npmjs.org/dtrace-provider/-/dtrace-provider-0.8.7.tgz", + "integrity": "sha1-3JObTT4GIM/gwc2APQ0tftBP/QQ=", "dev": true, "optional": true, "requires": { - "nan": "2.9.2" + "nan": "^2.10.0" } }, "duplexer3": { @@ -3457,10 +4048,10 @@ "integrity": "sha512-JzYSLYMhoVVBe8+mbHQ4KgpvHpm0DZpJuL8PY93Vyv1fW7jYJ90LoXa1di/CVbJM+TgMs91rbDapE/RNIfnJsA==", "dev": true, "requires": { - "end-of-stream": "1.4.1", - "inherits": "2.0.3", - "readable-stream": "2.3.4", - "stream-shift": "1.0.0" + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" } }, "ecc-jsbn": { @@ -3470,17 +4061,16 @@ "dev": true, "optional": true, "requires": { - "jsbn": "0.1.1" + "jsbn": "~0.1.0" } }, "ecdsa-sig-formatter": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.9.tgz", - "integrity": "sha1-S8kmJ07Dtau1AW5+HWCSGsJisqE=", + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.10.tgz", + "integrity": "sha1-HFlQAPBKiJffuFAAiSoPTDOvhsM=", "dev": true, "requires": { - "base64url": "2.0.0", - "safe-buffer": "5.1.1" + "safe-buffer": "^5.0.1" } }, "ee-first": { @@ -3500,15 +4090,21 @@ "integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=", "dev": true, "requires": { - "bn.js": "4.11.8", - "brorand": "1.1.0", - "hash.js": "1.1.3", - "hmac-drbg": "1.0.1", - "inherits": "2.0.3", - "minimalistic-assert": "1.0.0", - "minimalistic-crypto-utils": "1.0.1" + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" } }, + "email-validator": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/email-validator/-/email-validator-2.0.4.tgz", + "integrity": "sha512-gYCwo7kh5S3IDyZPLZf6hSS0MnZT8QmJFqYvbqlDZSbwdZlY6QZWxJ4i/6UhITOJ4XzyI647Bm2MXKCLqnJ4nQ==", + "dev": true + }, "emoji-regex": { "version": "6.1.3", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-6.1.3.tgz", @@ -3532,7 +4128,7 @@ "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", "dev": true, "requires": { - "iconv-lite": "0.4.19" + "iconv-lite": "~0.4.13" } }, "end-of-stream": { @@ -3541,19 +4137,18 @@ "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", "dev": true, "requires": { - "once": "1.4.0" + "once": "^1.4.0" } }, "enhanced-resolve": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz", - "integrity": "sha1-BCHjOf1xQZs9oT0Smzl5BAIwR24=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.0.0.tgz", + "integrity": "sha512-jox/62b2GofV1qTUQTMPEJSDIGycS43evqYzD/KVtEb9OCoki9cnacUPxCrZa7JfPzZSYOCZhu9O9luaMxAX8g==", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "memory-fs": "0.4.1", - "object-assign": "4.1.1", - "tapable": "0.2.8" + "graceful-fs": "^4.1.2", + "memory-fs": "^0.4.0", + "tapable": "^1.0.0" } }, "entities": { @@ -3568,7 +4163,17 @@ "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", "dev": true, "requires": { - "prr": "1.0.1" + "prr": "~1.0.1" + } + }, + "error": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/error/-/error-7.0.2.tgz", + "integrity": "sha1-pfdf/02ZJhJt2sDqXcOOaJFTywI=", + "dev": true, + "requires": { + "string-template": "~0.2.1", + "xtend": "~4.0.0" } }, "error-ex": { @@ -3577,17 +4182,18 @@ "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", "dev": true, "requires": { - "is-arrayish": "0.2.1" + "is-arrayish": "^0.2.1" } }, "es5-ext": { - "version": "0.10.39", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.39.tgz", - "integrity": "sha512-AlaXZhPHl0po/uxMx1tyrlt1O86M6D5iVaDH8UgLfgek4kXTX6vzsRfJQWC2Ku+aG8pkw1XWzh9eTkwfVrsD5g==", + "version": "0.10.44", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.44.tgz", + "integrity": "sha512-TO4Vt9IhW3FzDKLDOpoA8VS9BCV4b9WTf6BqvMOgfoa8wX73F3Kh3y2J7yTstTaXlQ0k1vq4DH2vw6RSs42z+g==", "dev": true, "requires": { - "es6-iterator": "2.0.3", - "es6-symbol": "3.1.1" + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.1", + "next-tick": "1" } }, "es6-error": { @@ -3602,9 +4208,9 @@ "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", "dev": true, "requires": { - "d": "1.0.0", - "es5-ext": "0.10.39", - "es6-symbol": "3.1.1" + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" } }, "es6-map": { @@ -3613,12 +4219,12 @@ "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", "dev": true, "requires": { - "d": "1.0.0", - "es5-ext": "0.10.39", - "es6-iterator": "2.0.3", - "es6-set": "0.1.5", - "es6-symbol": "3.1.1", - "event-emitter": "0.3.5" + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-set": "~0.1.5", + "es6-symbol": "~3.1.1", + "event-emitter": "~0.3.5" } }, "es6-promise": { @@ -3633,7 +4239,7 @@ "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", "dev": true, "requires": { - "es6-promise": "4.2.4" + "es6-promise": "^4.0.3" }, "dependencies": { "es6-promise": { @@ -3650,11 +4256,11 @@ "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", "dev": true, "requires": { - "d": "1.0.0", - "es5-ext": "0.10.39", - "es6-iterator": "2.0.3", + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", "es6-symbol": "3.1.1", - "event-emitter": "0.3.5" + "event-emitter": "~0.3.5" } }, "es6-symbol": { @@ -3663,8 +4269,8 @@ "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", "dev": true, "requires": { - "d": "1.0.0", - "es5-ext": "0.10.39" + "d": "1", + "es5-ext": "~0.10.14" } }, "es6-weak-map": { @@ -3673,10 +4279,10 @@ "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", "dev": true, "requires": { - "d": "1.0.0", - "es5-ext": "0.10.39", - "es6-iterator": "2.0.3", - "es6-symbol": "3.1.1" + "d": "1", + "es5-ext": "^0.10.14", + "es6-iterator": "^2.0.1", + "es6-symbol": "^3.1.1" } }, "escape-html": { @@ -3690,61 +4296,90 @@ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, + "escodegen": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.9.1.tgz", + "integrity": "sha512-6hTjO1NAWkHnDk3OqQ4YrCuwwmGHL9S3nPlzBOUG/R44rda3wLNrfvQ5fkSGjyhHFKM7ALPKcKGrwvCLe0lC7Q==", + "dev": true, + "requires": { + "esprima": "^3.1.3", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + }, + "dependencies": { + "esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true + } + } + }, "escope": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", "dev": true, "requires": { - "es6-map": "0.1.5", - "es6-weak-map": "2.0.2", - "esrecurse": "4.2.1", - "estraverse": "4.2.0" + "es6-map": "^0.1.3", + "es6-weak-map": "^2.0.1", + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" } }, "eslint": { - "version": "4.15.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-4.15.0.tgz", - "integrity": "sha512-zEO/Z1ZUxIQ+MhDVKkVTUYpIPDTEJLXGMrkID+5v1NeQHtCz6FZikWuFRgxE1Q/RV2V4zVl1u3xmpPADHhMZ6A==", - "dev": true, - "requires": { - "ajv": "5.5.2", - "babel-code-frame": "6.26.0", - "chalk": "2.3.2", - "concat-stream": "1.6.0", - "cross-spawn": "5.1.0", - "debug": "3.1.0", - "doctrine": "2.1.0", - "eslint-scope": "3.7.1", - "eslint-visitor-keys": "1.0.0", - "espree": "3.5.3", - "esquery": "1.0.0", - "esutils": "2.0.2", - "file-entry-cache": "2.0.0", - "functional-red-black-tree": "1.0.1", - "glob": "7.1.2", - "globals": "11.3.0", - "ignore": "3.3.7", - "imurmurhash": "0.1.4", - "inquirer": "3.3.0", - "is-resolvable": "1.1.0", - "js-yaml": "3.10.0", - "json-stable-stringify-without-jsonify": "1.0.1", - "levn": "0.3.0", - "lodash": "4.17.5", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "natural-compare": "1.4.0", - "optionator": "0.8.2", - "path-is-inside": "1.0.2", - "pluralize": "7.0.0", - "progress": "2.0.0", - "require-uncached": "1.0.3", - "semver": "5.5.0", - "strip-ansi": "4.0.0", - "strip-json-comments": "2.0.1", - "table": "4.0.3", - "text-table": "0.2.0" + "version": "4.19.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-4.19.1.tgz", + "integrity": "sha512-bT3/1x1EbZB7phzYu7vCr1v3ONuzDtX8WjuM9c0iYxe+cq+pwcKEoQjl7zd3RpC6YOLgnSy3cTN58M2jcoPDIQ==", + "dev": true, + "requires": { + "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.1.0", + "doctrine": "^2.1.0", + "eslint-scope": "^3.7.1", + "eslint-visitor-keys": "^1.0.0", + "espree": "^3.5.4", + "esquery": "^1.0.0", + "esutils": "^2.0.2", + "file-entry-cache": "^2.0.0", + "functional-red-black-tree": "^1.0.1", + "glob": "^7.1.2", + "globals": "^11.0.1", + "ignore": "^3.3.3", + "imurmurhash": "^0.1.4", + "inquirer": "^3.0.6", + "is-resolvable": "^1.0.0", + "js-yaml": "^3.9.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.4", + "minimatch": "^3.0.2", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.2", + "path-is-inside": "^1.0.2", + "pluralize": "^7.0.0", + "progress": "^2.0.0", + "regexpp": "^1.0.1", + "require-uncached": "^1.0.3", + "semver": "^5.3.0", + "strip-ansi": "^4.0.0", + "strip-json-comments": "~2.0.1", + "table": "4.0.2", + "text-table": "~0.2.0" }, "dependencies": { "ajv": { @@ -3753,10 +4388,10 @@ "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", "dev": true, "requires": { - "co": "4.6.0", - "fast-deep-equal": "1.1.0", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1" + "co": "^4.6.0", + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0" } }, "ansi-regex": { @@ -3786,22 +4421,22 @@ "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "js-yaml": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.10.0.tgz", - "integrity": "sha512-O2v52ffjLa9VeM43J4XocZE//WT9N0IiwDa3KSHH7Tu8CtH+1qM8SIZvnsTh6v+4yFy5KUY3BHUVwjpfAWsjIA==", + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.11.0.tgz", + "integrity": "sha512-saJstZWv7oNeOyBh3+Dx1qWzhW0+e6/8eDzo7p5rDFqxntSztloLtuKu+Ejhtq82jsilwOIZYsCz+lIjthg1Hw==", "dev": true, "requires": { - "argparse": "1.0.10", - "esprima": "4.0.0" + "argparse": "^1.0.7", + "esprima": "^4.0.0" } }, "strip-ansi": { @@ -3810,7 +4445,7 @@ "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "dev": true, "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } } } @@ -3821,7 +4456,7 @@ "integrity": "sha1-fQKHjI6b95FriINtWsEitC8VGTI=", "dev": true, "requires": { - "eslint": "3.19.0" + "eslint": "^3.7.1" }, "dependencies": { "ajv": { @@ -3830,8 +4465,8 @@ "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", "dev": true, "requires": { - "co": "4.6.0", - "json-stable-stringify": "1.0.1" + "co": "^4.6.0", + "json-stable-stringify": "^1.0.1" } }, "ajv-keywords": { @@ -3858,11 +4493,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "cli-cursor": { @@ -3871,7 +4506,7 @@ "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", "dev": true, "requires": { - "restore-cursor": "1.0.1" + "restore-cursor": "^1.0.1" } }, "eslint": { @@ -3880,41 +4515,41 @@ "integrity": "sha1-yPxiAcf0DdCJQbh8CFdnOGpnmsw=", "dev": true, "requires": { - "babel-code-frame": "6.26.0", - "chalk": "1.1.3", - "concat-stream": "1.6.0", - "debug": "2.6.9", - "doctrine": "2.1.0", - "escope": "3.6.0", - "espree": "3.5.3", - "esquery": "1.0.0", - "estraverse": "4.2.0", - "esutils": "2.0.2", - "file-entry-cache": "2.0.0", - "glob": "7.0.6", - "globals": "9.18.0", - "ignore": "3.3.7", - "imurmurhash": "0.1.4", - "inquirer": "0.12.0", - "is-my-json-valid": "2.17.2", - "is-resolvable": "1.1.0", - "js-yaml": "3.5.5", - "json-stable-stringify": "1.0.1", - "levn": "0.3.0", - "lodash": "4.17.5", - "mkdirp": "0.5.1", - "natural-compare": "1.4.0", - "optionator": "0.8.2", - "path-is-inside": "1.0.2", - "pluralize": "1.2.1", - "progress": "1.1.8", - "require-uncached": "1.0.3", - "shelljs": "0.7.8", - "strip-bom": "3.0.0", - "strip-json-comments": "2.0.1", - "table": "3.8.3", - "text-table": "0.2.0", - "user-home": "2.0.0" + "babel-code-frame": "^6.16.0", + "chalk": "^1.1.3", + "concat-stream": "^1.5.2", + "debug": "^2.1.1", + "doctrine": "^2.0.0", + "escope": "^3.6.0", + "espree": "^3.4.0", + "esquery": "^1.0.0", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "file-entry-cache": "^2.0.0", + "glob": "^7.0.3", + "globals": "^9.14.0", + "ignore": "^3.2.0", + "imurmurhash": "^0.1.4", + "inquirer": "^0.12.0", + "is-my-json-valid": "^2.10.0", + "is-resolvable": "^1.0.0", + "js-yaml": "^3.5.1", + "json-stable-stringify": "^1.0.0", + "levn": "^0.3.0", + "lodash": "^4.0.0", + "mkdirp": "^0.5.0", + "natural-compare": "^1.4.0", + "optionator": "^0.8.2", + "path-is-inside": "^1.0.1", + "pluralize": "^1.2.1", + "progress": "^1.1.8", + "require-uncached": "^1.0.2", + "shelljs": "^0.7.5", + "strip-bom": "^3.0.0", + "strip-json-comments": "~2.0.1", + "table": "^3.7.8", + "text-table": "~0.2.0", + "user-home": "^2.0.0" } }, "figures": { @@ -3923,8 +4558,8 @@ "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", "dev": true, "requires": { - "escape-string-regexp": "1.0.5", - "object-assign": "4.1.1" + "escape-string-regexp": "^1.0.5", + "object-assign": "^4.1.0" } }, "globals": { @@ -3939,19 +4574,19 @@ "integrity": "sha1-HvK/1jUE3wvHV4X/+MLEHfEvB34=", "dev": true, "requires": { - "ansi-escapes": "1.4.0", - "ansi-regex": "2.1.1", - "chalk": "1.1.3", - "cli-cursor": "1.0.2", - "cli-width": "2.2.0", - "figures": "1.7.0", - "lodash": "4.17.5", - "readline2": "1.0.1", - "run-async": "0.1.0", - "rx-lite": "3.1.2", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "through": "2.3.8" + "ansi-escapes": "^1.1.0", + "ansi-regex": "^2.0.0", + "chalk": "^1.0.0", + "cli-cursor": "^1.0.1", + "cli-width": "^2.0.0", + "figures": "^1.3.5", + "lodash": "^4.3.0", + "readline2": "^1.0.1", + "run-async": "^0.1.0", + "rx-lite": "^3.1.2", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.0", + "through": "^2.3.6" } }, "is-fullwidth-code-point": { @@ -3960,12 +4595,12 @@ "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "onetime": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", "dev": true }, @@ -3987,8 +4622,8 @@ "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", "dev": true, "requires": { - "exit-hook": "1.1.1", - "onetime": "1.1.0" + "exit-hook": "^1.0.0", + "onetime": "^1.0.0" } }, "run-async": { @@ -3997,7 +4632,7 @@ "integrity": "sha1-yK1KXhEGYeQCp9IbUw4AnyX444k=", "dev": true, "requires": { - "once": "1.4.0" + "once": "^1.3.0" } }, "rx-lite": { @@ -4012,9 +4647,9 @@ "integrity": "sha1-3svPh0sNHl+3LhSxZKloMEjprLM=", "dev": true, "requires": { - "glob": "7.0.6", - "interpret": "1.1.0", - "rechoir": "0.6.2" + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" } }, "slice-ansi": { @@ -4029,9 +4664,9 @@ "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "dev": true, "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "strip-bom": { @@ -4052,12 +4687,12 @@ "integrity": "sha1-K7xULw/amGGnVdOUf+/Ys/UThV8=", "dev": true, "requires": { - "ajv": "4.11.8", - "ajv-keywords": "1.5.1", - "chalk": "1.1.3", - "lodash": "4.17.5", + "ajv": "^4.7.0", + "ajv-keywords": "^1.0.0", + "chalk": "^1.1.1", + "lodash": "^4.0.0", "slice-ansi": "0.0.4", - "string-width": "2.1.1" + "string-width": "^2.0.0" }, "dependencies": { "ansi-regex": { @@ -4078,8 +4713,8 @@ "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dev": true, "requires": { - "is-fullwidth-code-point": "2.0.0", - "strip-ansi": "4.0.0" + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" } }, "strip-ansi": { @@ -4088,7 +4723,7 @@ "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "dev": true, "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } } } @@ -4101,8 +4736,8 @@ "integrity": "sha1-PWPD7f2gLgbgGkUq2IyqzHzctug=", "dev": true, "requires": { - "esrecurse": "4.2.1", - "estraverse": "4.2.0" + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" } }, "eslint-visitor-keys": { @@ -4112,19 +4747,19 @@ "dev": true }, "espree": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.3.tgz", - "integrity": "sha512-Zy3tAJDORxQZLl2baguiRU1syPERAIg0L+JB2MWorORgTu/CplzvxS9WWA7Xh4+Q+eOQihNs/1o1Xep8cvCxWQ==", + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz", + "integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==", "dev": true, "requires": { - "acorn": "5.5.0", - "acorn-jsx": "3.0.1" + "acorn": "^5.5.0", + "acorn-jsx": "^3.0.0" }, "dependencies": { "acorn": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.5.0.tgz", - "integrity": "sha512-arn53F07VXmls4o4pUhSzBa4fvaagPRe7AVZ8l7NHxFWUie2DsuFSBMMNAkgzRlOhEhzAnxeKyaWVzOH4xqp/g==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.6.0.tgz", + "integrity": "sha512-QatFQ4C0n+PLqemyC6zXEv04tSqRR0hRqe+uGKPEVgKe2G8kl8wJvHzRYWwz6vqqEqt6idPVMFojZ4P1zlyAzQ==", "dev": true } } @@ -4136,12 +4771,12 @@ "dev": true }, "esquery": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.0.tgz", - "integrity": "sha1-z7qLV9f7qT8XKYqKAGoEzaE9gPo=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", + "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", "dev": true, "requires": { - "estraverse": "4.2.0" + "estraverse": "^4.0.0" } }, "esrecurse": { @@ -4150,7 +4785,7 @@ "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", "dev": true, "requires": { - "estraverse": "4.2.0" + "estraverse": "^4.1.0" } }, "estraverse": { @@ -4182,8 +4817,8 @@ "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", "dev": true, "requires": { - "d": "1.0.0", - "es5-ext": "0.10.39" + "d": "1", + "es5-ext": "~0.10.14" } }, "event-to-promise": { @@ -4210,8 +4845,8 @@ "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", "dev": true, "requires": { - "md5.js": "1.3.4", - "safe-buffer": "5.1.1" + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" } }, "execa": { @@ -4220,13 +4855,13 @@ "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", "dev": true, "requires": { - "cross-spawn": "5.1.0", - "get-stream": "3.0.0", - "is-stream": "1.1.0", - "npm-run-path": "2.0.2", - "p-finally": "1.0.0", - "signal-exit": "3.0.2", - "strip-eof": "1.0.0" + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" } }, "exit": { @@ -4247,7 +4882,7 @@ "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", "dev": true, "requires": { - "is-posix-bracket": "0.1.1" + "is-posix-bracket": "^0.1.0" } }, "expand-range": { @@ -4256,7 +4891,7 @@ "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", "dev": true, "requires": { - "fill-range": "2.2.3" + "fill-range": "^2.1.0" } }, "express": { @@ -4264,36 +4899,36 @@ "resolved": "https://registry.npmjs.org/express/-/express-4.16.2.tgz", "integrity": "sha1-41xt/i1kt9ygpc1PIXgb4ymeB2w=", "requires": { - "accepts": "1.3.5", + "accepts": "~1.3.4", "array-flatten": "1.1.1", "body-parser": "1.18.2", "content-disposition": "0.5.2", - "content-type": "1.0.4", + "content-type": "~1.0.4", "cookie": "0.3.1", "cookie-signature": "1.0.6", "debug": "2.6.9", - "depd": "1.1.2", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "etag": "1.8.1", + "depd": "~1.1.1", + "encodeurl": "~1.0.1", + "escape-html": "~1.0.3", + "etag": "~1.8.1", "finalhandler": "1.1.0", "fresh": "0.5.2", "merge-descriptors": "1.0.1", - "methods": "1.1.2", - "on-finished": "2.3.0", - "parseurl": "1.3.2", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", "path-to-regexp": "0.1.7", - "proxy-addr": "2.0.3", + "proxy-addr": "~2.0.2", "qs": "6.5.1", - "range-parser": "1.2.0", + "range-parser": "~1.2.0", "safe-buffer": "5.1.1", "send": "0.16.1", "serve-static": "1.13.1", "setprototypeof": "1.1.0", - "statuses": "1.3.1", - "type-is": "1.6.16", + "statuses": "~1.3.1", + "type-is": "~1.6.15", "utils-merge": "1.0.1", - "vary": "1.1.2" + "vary": "~1.1.2" } }, "express-sslify": { @@ -4313,8 +4948,8 @@ "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", "dev": true, "requires": { - "assign-symbols": "1.0.0", - "is-extendable": "1.0.1" + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" }, "dependencies": { "is-extendable": { @@ -4323,20 +4958,20 @@ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "dev": true, "requires": { - "is-plain-object": "2.0.4" + "is-plain-object": "^2.0.4" } } } }, "external-editor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.1.0.tgz", - "integrity": "sha512-E44iT5QVOUJBKij4IIV3uvxuNlbKS38Tw1HiupxEIHPv9qtC2PrDYohbXV5U+1jnfIXttny8gUhj+oZvflFlzA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", + "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", "dev": true, "requires": { - "chardet": "0.4.2", - "iconv-lite": "0.4.19", - "tmp": "0.0.33" + "chardet": "^0.4.0", + "iconv-lite": "^0.4.17", + "tmp": "^0.0.33" } }, "extglob": { @@ -4345,51 +4980,7 @@ "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", "dev": true, "requires": { - "is-extglob": "1.0.0" - } - }, - "extract-text-webpack-plugin": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extract-text-webpack-plugin/-/extract-text-webpack-plugin-3.0.2.tgz", - "integrity": "sha512-bt/LZ4m5Rqt/Crl2HiKuAl/oqg0psx1tsTLkvWbJen1CtD+fftkZhMaQ9HOtY2gWsl2Wq+sABmMVi9z3DhKWQQ==", - "dev": true, - "requires": { - "async": "2.6.0", - "loader-utils": "1.1.0", - "schema-utils": "0.3.0", - "webpack-sources": "1.1.0" - }, - "dependencies": { - "ajv": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", - "dev": true, - "requires": { - "co": "4.6.0", - "fast-deep-equal": "1.1.0", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1" - } - }, - "async": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", - "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", - "dev": true, - "requires": { - "lodash": "4.17.5" - } - }, - "schema-utils": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.3.0.tgz", - "integrity": "sha1-9YdyIs4+kx7a4DnxfrNxbnE3+M8=", - "dev": true, - "requires": { - "ajv": "5.5.2" - } - } + "is-extglob": "^1.0.0" } }, "extract-zip": { @@ -4463,7 +5054,7 @@ "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", "dev": true, "requires": { - "websocket-driver": "0.7.0" + "websocket-driver": ">=0.5.1" } }, "fd-slicer": { @@ -4472,7 +5063,7 @@ "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", "dev": true, "requires": { - "pend": "1.2.0" + "pend": "~1.2.0" } }, "figures": { @@ -4481,7 +5072,7 @@ "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", "dev": true, "requires": { - "escape-string-regexp": "1.0.5" + "escape-string-regexp": "^1.0.5" } }, "file-entry-cache": { @@ -4490,8 +5081,8 @@ "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", "dev": true, "requires": { - "flat-cache": "1.3.0", - "object-assign": "4.1.1" + "flat-cache": "^1.2.1", + "object-assign": "^4.0.1" } }, "file-sync-cmp": { @@ -4500,6 +5091,12 @@ "integrity": "sha1-peeo/7+kk7Q7kju9TKiaU7Y7YSs=", "dev": true }, + "file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "dev": true + }, "filename-regex": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", @@ -4512,11 +5109,11 @@ "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=", "dev": true, "requires": { - "is-number": "2.1.0", - "isobject": "2.1.0", - "randomatic": "1.1.7", - "repeat-element": "1.1.2", - "repeat-string": "1.6.1" + "is-number": "^2.1.0", + "isobject": "^2.0.0", + "randomatic": "^1.1.3", + "repeat-element": "^1.1.2", + "repeat-string": "^1.5.2" } }, "finalhandler": { @@ -4525,12 +5122,12 @@ "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=", "requires": { "debug": "2.6.9", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "on-finished": "2.3.0", - "parseurl": "1.3.2", - "statuses": "1.3.1", - "unpipe": "1.0.0" + "encodeurl": "~1.0.1", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", + "statuses": "~1.3.1", + "unpipe": "~1.0.0" } }, "find-cache-dir": { @@ -4539,9 +5136,9 @@ "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", "dev": true, "requires": { - "commondir": "1.0.1", - "make-dir": "1.2.0", - "pkg-dir": "2.0.0" + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^2.0.0" } }, "find-up": { @@ -4550,7 +5147,7 @@ "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "requires": { - "locate-path": "2.0.0" + "locate-path": "^2.0.0" } }, "findup-sync": { @@ -4559,7 +5156,7 @@ "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=", "dev": true, "requires": { - "glob": "5.0.15" + "glob": "~5.0.0" }, "dependencies": { "glob": { @@ -4568,50 +5165,32 @@ "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", "dev": true, "requires": { - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } } } }, - "firefox-client": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/firefox-client/-/firefox-client-0.3.0.tgz", - "integrity": "sha1-N5RGD262r89BN2rdy8dGLiSkzYs=", - "dev": true, - "requires": { - "colors": "0.5.1", - "js-select": "0.6.0" - }, - "dependencies": { - "colors": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/colors/-/colors-0.5.1.tgz", - "integrity": "sha1-fQAj6usVTo7p/Oddy5I9DtFmd3Q=", - "dev": true - } - } - }, "firefox-profile": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/firefox-profile/-/firefox-profile-1.1.0.tgz", "integrity": "sha512-wUIE4QeAjwoHvFbomWmXgKyYtV4/oZxDcJG4znxtGGa/0BhKkd3HzeOf3tAsMWPq1ExARZxCRRiNw1BL3FuPqA==", "dev": true, "requires": { - "adm-zip": "0.4.7", - "archiver": "2.1.1", - "async": "2.5.0", - "fs-extra": "4.0.3", - "ini": "1.3.5", + "adm-zip": "~0.4.x", + "archiver": "~2.1.0", + "async": "~2.5.0", + "fs-extra": "~4.0.2", + "ini": "~1.3.3", "jetpack-id": "1.0.0", - "lazystream": "1.0.0", - "lodash": "4.17.5", - "minimist": "1.2.0", - "uuid": "3.2.1", - "xml2js": "0.4.19" + "lazystream": "~1.0.0", + "lodash": "~4.17.2", + "minimist": "^1.1.1", + "uuid": "^3.0.0", + "xml2js": "~0.4.4" }, "dependencies": { "archiver": { @@ -4620,14 +5199,14 @@ "integrity": "sha1-/2YrSnggFJSj7lRNOjP+dJZQnrw=", "dev": true, "requires": { - "archiver-utils": "1.3.0", - "async": "2.5.0", - "buffer-crc32": "0.2.13", - "glob": "7.0.6", - "lodash": "4.17.5", - "readable-stream": "2.3.4", - "tar-stream": "1.5.5", - "zip-stream": "1.2.0" + "archiver-utils": "^1.3.0", + "async": "^2.0.0", + "buffer-crc32": "^0.2.1", + "glob": "^7.0.0", + "lodash": "^4.8.0", + "readable-stream": "^2.0.0", + "tar-stream": "^1.5.0", + "zip-stream": "^1.2.0" } }, "async": { @@ -4636,7 +5215,7 @@ "integrity": "sha512-e+lJAJeNWuPCNyxZKOBdaJGyLGHugXVQtrAwtuAe2vhxTYxFTKE73p8JuTmdH0qdQZtDvI4dhJwjZc5zsfIsYw==", "dev": true, "requires": { - "lodash": "4.17.5" + "lodash": "^4.14.0" } }, "minimist": { @@ -4653,7 +5232,7 @@ "integrity": "sha1-G97NuOCDwGZLkZRVgVd6Q6nzHXA=", "dev": true, "requires": { - "readable-stream": "2.3.4" + "readable-stream": "^2.0.2" } }, "fizzy-ui-utils": { @@ -4662,7 +5241,7 @@ "integrity": "sha512-CZXDVXQ1If3/r8s0T+v+qVeMshhfcuq0rqIFgJnrtd+Bu8GmDmqMjntjUePypVtjHXKJ6V4sw9zeyox34n9aCg==", "dev": true, "requires": { - "desandro-matches-selector": "2.0.2" + "desandro-matches-selector": "^2.0.0" } }, "flat-cache": { @@ -4671,16 +5250,16 @@ "integrity": "sha1-0wMLMrOBVPTjt+nHCfSQ9++XxIE=", "dev": true, "requires": { - "circular-json": "0.3.3", - "del": "2.2.2", - "graceful-fs": "4.1.11", - "write": "0.2.1" + "circular-json": "^0.3.1", + "del": "^2.0.2", + "graceful-fs": "^4.1.2", + "write": "^0.2.1" } }, "flatstr": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/flatstr/-/flatstr-1.0.5.tgz", - "integrity": "sha1-W0UbCMvUji6sVKK74L9GFlqhS+M=", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/flatstr/-/flatstr-1.0.8.tgz", + "integrity": "sha512-YXblbv/vc1zuVVUtnKl1hPqqk7TalZCppnKE7Pr8FI/Rp48vzckS/4SJ4Y9O9RNiI82Vcw/FydmtqdQOg1Dpqw==", "dev": true }, "flipclock": { @@ -4689,13 +5268,13 @@ "integrity": "sha1-838ffKkETZAsH+4fGuf0vR7vGlQ=", "dev": true, "requires": { - "jquery": "3.3.1" + "jquery": ">=1.7" } }, - "fluent": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/fluent/-/fluent-0.4.1.tgz", - "integrity": "sha512-vatFe36jVjXclCYPRopLVB6oR5ceuKWnn6oVLIuLCnkdCb49RGuTznPdd51xATo+S83N9zLD1xsYf1Ma4s2VoQ==", + "fluent-syntax": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/fluent-syntax/-/fluent-syntax-0.7.0.tgz", + "integrity": "sha512-T0iqfhC40jrs3aDjYOKgzIQjjhsH2Fa6LnXB6naPv0ymW3DeYMUFa89y9aLKMpi1P9nl2vEimK7blx4tVnUWBg==", "dev": true }, "flush-write-stream": { @@ -4704,8 +5283,8 @@ "integrity": "sha1-yBuQ2HRnZvGmCaRoCZRsRd2K5Bc=", "dev": true, "requires": { - "inherits": "2.0.3", - "readable-stream": "2.3.4" + "inherits": "^2.0.1", + "readable-stream": "^2.0.4" } }, "for-in": { @@ -4720,7 +5299,7 @@ "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", "dev": true, "requires": { - "for-in": "1.0.2" + "for-in": "^1.0.1" } }, "forever-agent": { @@ -4735,9 +5314,9 @@ "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", "dev": true, "requires": { - "asynckit": "0.4.0", + "asynckit": "^0.4.0", "combined-stream": "1.0.6", - "mime-types": "2.1.18" + "mime-types": "^2.1.12" } }, "forwarded": { @@ -4751,7 +5330,7 @@ "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", "dev": true, "requires": { - "map-cache": "0.2.2" + "map-cache": "^0.2.2" } }, "fresh": { @@ -4765,8 +5344,8 @@ "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", "dev": true, "requires": { - "inherits": "2.0.3", - "readable-stream": "2.3.4" + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" } }, "fs-extra": { @@ -4775,9 +5354,9 @@ "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "jsonfile": "4.0.0", - "universalify": "0.1.1" + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" } }, "fs-write-stream-atomic": { @@ -4786,10 +5365,10 @@ "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "iferr": "0.1.5", - "imurmurhash": "0.1.4", - "readable-stream": "2.3.4" + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" } }, "fs.realpath": { @@ -4799,39 +5378,29 @@ "dev": true }, "fsevents": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.3.tgz", - "integrity": "sha512-WIr7iDkdmdbxu/Gh6eKEZJL6KPE74/5MEsf2whTOFNxbIoIixogroLdKYqB6FDav4Wavh/lZdzzd3b2KxIXC5Q==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.4.tgz", + "integrity": "sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg==", "dev": true, "optional": true, "requires": { - "nan": "2.9.2", - "node-pre-gyp": "0.6.39" + "nan": "^2.9.2", + "node-pre-gyp": "^0.10.0" }, "dependencies": { "abbrev": { - "version": "1.1.0", + "version": "1.1.1", "bundled": true, "dev": true, "optional": true }, - "ajv": { - "version": "4.11.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "co": "4.6.0", - "json-stable-stringify": "1.0.1" - } - }, "ansi-regex": { "version": "2.1.1", "bundled": true, "dev": true }, "aproba": { - "version": "1.1.1", + "version": "1.2.0", "bundled": true, "dev": true, "optional": true @@ -4842,862 +5411,547 @@ "dev": true, "optional": true, "requires": { - "delegates": "1.0.0", - "readable-stream": "2.2.9" + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" } }, - "asn1": { - "version": "0.2.3", + "balanced-match": { + "version": "1.0.0", "bundled": true, "dev": true, "optional": true }, - "assert-plus": { - "version": "0.2.0", + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "chownr": { + "version": "1.0.1", "bundled": true, "dev": true, "optional": true }, - "asynckit": { - "version": "0.4.0", + "code-point-at": { + "version": "1.1.0", "bundled": true, "dev": true, "optional": true }, - "aws-sign2": { - "version": "0.6.0", + "concat-map": { + "version": "0.0.1", "bundled": true, "dev": true, "optional": true }, - "aws4": { - "version": "1.6.0", + "console-control-strings": { + "version": "1.1.0", "bundled": true, "dev": true, "optional": true }, - "balanced-match": { - "version": "0.4.2", + "core-util-is": { + "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, - "bcrypt-pbkdf": { - "version": "1.0.1", + "debug": { + "version": "2.6.9", "bundled": true, "dev": true, "optional": true, "requires": { - "tweetnacl": "0.14.5" + "ms": "2.0.0" } }, - "block-stream": { - "version": "0.0.9", + "deep-extend": { + "version": "0.5.1", "bundled": true, "dev": true, - "requires": { - "inherits": "2.0.3" - } + "optional": true }, - "boom": { - "version": "2.10.1", + "delegates": { + "version": "1.0.0", "bundled": true, "dev": true, - "requires": { - "hoek": "2.16.3" - } + "optional": true }, - "brace-expansion": { - "version": "1.1.7", + "detect-libc": { + "version": "1.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "fs-minipass": { + "version": "1.2.5", "bundled": true, "dev": true, + "optional": true, "requires": { - "balanced-match": "0.4.2", - "concat-map": "0.0.1" + "minipass": "^2.2.1" } }, - "buffer-shims": { + "fs.realpath": { "version": "1.0.0", "bundled": true, - "dev": true - }, - "caseless": { - "version": "0.12.0", - "bundled": true, "dev": true, "optional": true }, - "co": { - "version": "4.6.0", + "gauge": { + "version": "2.7.4", "bundled": true, "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true + "optional": true, + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } }, - "combined-stream": { - "version": "1.0.5", + "glob": { + "version": "7.1.2", "bundled": true, "dev": true, + "optional": true, "requires": { - "delayed-stream": "1.0.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, - "concat-map": { - "version": "0.0.1", + "has-unicode": { + "version": "2.0.1", "bundled": true, - "dev": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true + "dev": true, + "optional": true }, - "cryptiles": { - "version": "2.0.5", + "iconv-lite": { + "version": "0.4.21", "bundled": true, "dev": true, + "optional": true, "requires": { - "boom": "2.10.1" + "safer-buffer": "^2.1.0" } }, - "dashdash": { - "version": "1.14.1", + "ignore-walk": { + "version": "3.0.1", "bundled": true, "dev": true, "optional": true, "requires": { - "assert-plus": "1.0.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } + "minimatch": "^3.0.4" } }, - "debug": { - "version": "2.6.8", + "inflight": { + "version": "1.0.6", "bundled": true, "dev": true, "optional": true, "requires": { - "ms": "2.0.0" + "once": "^1.3.0", + "wrappy": "1" } }, - "deep-extend": { - "version": "0.4.2", - "bundled": true, - "dev": true, - "optional": true - }, - "delayed-stream": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "delegates": { - "version": "1.0.0", + "inherits": { + "version": "2.0.3", "bundled": true, "dev": true, "optional": true }, - "detect-libc": { - "version": "1.0.2", + "ini": { + "version": "1.3.5", "bundled": true, "dev": true, "optional": true }, - "ecc-jsbn": { - "version": "0.1.1", + "is-fullwidth-code-point": { + "version": "1.0.0", "bundled": true, "dev": true, "optional": true, "requires": { - "jsbn": "0.1.1" + "number-is-nan": "^1.0.0" } }, - "extend": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "extsprintf": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "forever-agent": { - "version": "0.6.1", + "isarray": { + "version": "1.0.0", "bundled": true, "dev": true, "optional": true }, - "form-data": { - "version": "2.1.4", + "minimatch": { + "version": "3.0.4", "bundled": true, "dev": true, "optional": true, "requires": { - "asynckit": "0.4.0", - "combined-stream": "1.0.5", - "mime-types": "2.1.15" + "brace-expansion": "^1.1.7" } }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "fstream": { - "version": "1.0.11", + "minimist": { + "version": "0.0.8", "bundled": true, "dev": true, - "requires": { - "graceful-fs": "4.1.11", - "inherits": "2.0.3", - "mkdirp": "0.5.1", - "rimraf": "2.6.1" - } + "optional": true }, - "fstream-ignore": { - "version": "1.0.5", + "minipass": { + "version": "2.2.4", "bundled": true, "dev": true, "optional": true, "requires": { - "fstream": "1.0.11", - "inherits": "2.0.3", - "minimatch": "3.0.4" + "safe-buffer": "^5.1.1", + "yallist": "^3.0.0" } }, - "gauge": { - "version": "2.7.4", + "minizlib": { + "version": "1.1.0", "bundled": true, "dev": true, "optional": true, "requires": { - "aproba": "1.1.1", - "console-control-strings": "1.1.0", - "has-unicode": "2.0.1", - "object-assign": "4.1.1", - "signal-exit": "3.0.2", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wide-align": "1.1.2" + "minipass": "^2.2.1" } }, - "getpass": { - "version": "0.1.7", + "mkdirp": { + "version": "0.5.1", "bundled": true, "dev": true, "optional": true, "requires": { - "assert-plus": "1.0.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "glob": { - "version": "7.1.2", - "bundled": true, - "dev": true, - "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "minimist": "0.0.8" } }, - "graceful-fs": { - "version": "4.1.11", - "bundled": true, - "dev": true - }, - "har-schema": { - "version": "1.0.5", + "ms": { + "version": "2.0.0", "bundled": true, "dev": true, "optional": true }, - "har-validator": { - "version": "4.2.1", + "needle": { + "version": "2.2.0", "bundled": true, "dev": true, "optional": true, "requires": { - "ajv": "4.11.8", - "har-schema": "1.0.5" + "debug": "^2.1.2", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" } }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "hawk": { - "version": "3.1.3", + "node-pre-gyp": { + "version": "0.10.0", "bundled": true, "dev": true, + "optional": true, "requires": { - "boom": "2.10.1", - "cryptiles": "2.0.5", - "hoek": "2.16.3", - "sntp": "1.0.9" + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.0", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.1.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" } }, - "hoek": { - "version": "2.16.3", - "bundled": true, - "dev": true - }, - "http-signature": { - "version": "1.1.1", + "nopt": { + "version": "4.0.1", "bundled": true, "dev": true, "optional": true, "requires": { - "assert-plus": "0.2.0", - "jsprim": "1.4.0", - "sshpk": "1.13.0" + "abbrev": "1", + "osenv": "^0.1.4" } }, - "inflight": { - "version": "1.0.6", + "npm-bundled": { + "version": "1.0.3", "bundled": true, "dev": true, - "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true, - "dev": true + "optional": true }, - "ini": { - "version": "1.3.4", + "npm-packlist": { + "version": "1.1.10", "bundled": true, "dev": true, - "optional": true + "optional": true, + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" + } }, - "is-fullwidth-code-point": { - "version": "1.0.0", + "npmlog": { + "version": "4.1.2", "bundled": true, "dev": true, + "optional": true, "requires": { - "number-is-nan": "1.0.1" + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" } }, - "is-typedarray": { - "version": "1.0.0", + "number-is-nan": { + "version": "1.0.1", "bundled": true, "dev": true, "optional": true }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "isstream": { - "version": "0.1.2", + "object-assign": { + "version": "4.1.1", "bundled": true, "dev": true, "optional": true }, - "jodid25519": { - "version": "1.0.2", + "once": { + "version": "1.4.0", "bundled": true, "dev": true, "optional": true, "requires": { - "jsbn": "0.1.1" + "wrappy": "1" } }, - "jsbn": { - "version": "0.1.1", + "os-homedir": { + "version": "1.0.2", "bundled": true, "dev": true, "optional": true }, - "json-schema": { - "version": "0.2.3", + "os-tmpdir": { + "version": "1.0.2", "bundled": true, "dev": true, "optional": true }, - "json-stable-stringify": { - "version": "1.0.1", + "osenv": { + "version": "0.1.5", "bundled": true, "dev": true, "optional": true, "requires": { - "jsonify": "0.0.0" + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" } }, - "json-stringify-safe": { - "version": "5.0.1", + "path-is-absolute": { + "version": "1.0.1", "bundled": true, "dev": true, "optional": true }, - "jsonify": { - "version": "0.0.0", + "process-nextick-args": { + "version": "2.0.0", "bundled": true, "dev": true, "optional": true }, - "jsprim": { - "version": "1.4.0", + "rc": { + "version": "1.2.7", "bundled": true, "dev": true, "optional": true, "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.0.2", - "json-schema": "0.2.3", - "verror": "1.3.6" + "deep-extend": "^0.5.1", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" }, "dependencies": { - "assert-plus": { - "version": "1.0.0", + "minimist": { + "version": "1.2.0", "bundled": true, "dev": true, "optional": true } } }, - "mime-db": { - "version": "1.27.0", - "bundled": true, - "dev": true - }, - "mime-types": { - "version": "2.1.15", + "readable-stream": { + "version": "2.3.6", "bundled": true, "dev": true, + "optional": true, "requires": { - "mime-db": "1.27.0" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, - "minimatch": { - "version": "3.0.4", + "rimraf": { + "version": "2.6.2", "bundled": true, "dev": true, + "optional": true, "requires": { - "brace-expansion": "1.1.7" + "glob": "^7.0.5" } }, - "minimist": { - "version": "0.0.8", + "safe-buffer": { + "version": "5.1.1", "bundled": true, "dev": true }, - "mkdirp": { - "version": "0.5.1", + "safer-buffer": { + "version": "2.1.2", "bundled": true, "dev": true, - "requires": { - "minimist": "0.0.8" - } + "optional": true }, - "ms": { + "sax": { + "version": "1.2.4", + "bundled": true, + "dev": true, + "optional": true + }, + "semver": { + "version": "5.5.0", + "bundled": true, + "dev": true, + "optional": true + }, + "set-blocking": { "version": "2.0.0", "bundled": true, "dev": true, "optional": true }, - "node-pre-gyp": { - "version": "0.6.39", + "signal-exit": { + "version": "3.0.2", "bundled": true, "dev": true, - "optional": true, - "requires": { - "detect-libc": "1.0.2", - "hawk": "3.1.3", - "mkdirp": "0.5.1", - "nopt": "4.0.1", - "npmlog": "4.1.0", - "rc": "1.2.1", - "request": "2.81.0", - "rimraf": "2.6.1", - "semver": "5.3.0", - "tar": "2.2.1", - "tar-pack": "3.4.0" - } + "optional": true }, - "nopt": { - "version": "4.0.1", + "string-width": { + "version": "1.0.2", "bundled": true, "dev": true, "optional": true, "requires": { - "abbrev": "1.1.0", - "osenv": "0.1.4" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, - "npmlog": { - "version": "4.1.0", + "string_decoder": { + "version": "1.1.1", "bundled": true, "dev": true, "optional": true, "requires": { - "are-we-there-yet": "1.1.4", - "console-control-strings": "1.1.0", - "gauge": "2.7.4", - "set-blocking": "2.0.0" + "safe-buffer": "~5.1.0" } }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "oauth-sign": { - "version": "0.8.2", + "strip-ansi": { + "version": "3.0.1", "bundled": true, "dev": true, - "optional": true + "requires": { + "ansi-regex": "^2.0.0" + } }, - "object-assign": { - "version": "4.1.1", + "strip-json-comments": { + "version": "2.0.1", "bundled": true, "dev": true, "optional": true }, - "once": { - "version": "1.4.0", + "tar": { + "version": "4.4.1", "bundled": true, "dev": true, + "optional": true, "requires": { - "wrappy": "1.0.2" + "chownr": "^1.0.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.2.4", + "minizlib": "^1.1.0", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.1", + "yallist": "^3.0.2" } }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { + "util-deprecate": { "version": "1.0.2", "bundled": true, "dev": true, "optional": true }, - "osenv": { - "version": "0.1.4", + "wide-align": { + "version": "1.1.2", "bundled": true, "dev": true, "optional": true, "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" + "string-width": "^1.0.2" } }, - "path-is-absolute": { - "version": "1.0.1", + "wrappy": { + "version": "1.0.2", "bundled": true, "dev": true }, - "performance-now": { - "version": "0.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "1.0.7", + "yallist": { + "version": "3.0.2", "bundled": true, "dev": true - }, - "punycode": { - "version": "1.4.1", - "bundled": true, - "dev": true, - "optional": true - }, - "qs": { - "version": "6.4.0", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "deep-extend": "0.4.2", - "ini": "1.3.4", - "minimist": "1.2.0", - "strip-json-comments": "2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.2.9", - "bundled": true, - "dev": true, - "requires": { - "buffer-shims": "1.0.0", - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "1.0.7", - "string_decoder": "1.0.1", - "util-deprecate": "1.0.2" - } - }, - "request": { - "version": "2.81.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "aws-sign2": "0.6.0", - "aws4": "1.6.0", - "caseless": "0.12.0", - "combined-stream": "1.0.5", - "extend": "3.0.1", - "forever-agent": "0.6.1", - "form-data": "2.1.4", - "har-validator": "4.2.1", - "hawk": "3.1.3", - "http-signature": "1.1.1", - "is-typedarray": "1.0.0", - "isstream": "0.1.2", - "json-stringify-safe": "5.0.1", - "mime-types": "2.1.15", - "oauth-sign": "0.8.2", - "performance-now": "0.2.0", - "qs": "6.4.0", - "safe-buffer": "5.0.1", - "stringstream": "0.0.5", - "tough-cookie": "2.3.2", - "tunnel-agent": "0.6.0", - "uuid": "3.0.1" - } - }, - "rimraf": { - "version": "2.6.1", - "bundled": true, - "dev": true, - "requires": { - "glob": "7.1.2" - } - }, - "safe-buffer": { - "version": "5.0.1", - "bundled": true, + } + } + }, + "ftp": { + "version": "0.3.10", + "resolved": "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz", + "integrity": "sha1-kZfYYa2BQvPmPVqDv+TFn3MwiF0=", + "dev": true, + "requires": { + "readable-stream": "1.1.x", + "xregexp": "2.0.0" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", "dev": true }, - "semver": { - "version": "5.3.0", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sntp": { - "version": "1.0.9", - "bundled": true, - "dev": true, - "requires": { - "hoek": "2.16.3" - } - }, - "sshpk": { - "version": "1.13.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "asn1": "0.2.3", - "assert-plus": "1.0.0", - "bcrypt-pbkdf": "1.0.1", - "dashdash": "1.14.1", - "ecc-jsbn": "0.1.1", - "getpass": "0.1.7", - "jodid25519": "1.0.2", - "jsbn": "0.1.1", - "tweetnacl": "0.14.5" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "string-width": { - "version": "1.0.2", - "bundled": true, + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", "dev": true, "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" } }, "string_decoder": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "5.0.1" - } - }, - "stringstream": { - "version": "0.0.5", - "bundled": true, - "dev": true, - "optional": true - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "requires": { - "ansi-regex": "2.1.1" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "2.2.1", - "bundled": true, - "dev": true, - "requires": { - "block-stream": "0.0.9", - "fstream": "1.0.11", - "inherits": "2.0.3" - } - }, - "tar-pack": { - "version": "3.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "2.6.8", - "fstream": "1.0.11", - "fstream-ignore": "1.0.5", - "once": "1.4.0", - "readable-stream": "2.2.9", - "rimraf": "2.6.1", - "tar": "2.2.1", - "uid-number": "0.0.6" - } - }, - "tough-cookie": { - "version": "2.3.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "punycode": "1.4.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "bundled": true, - "dev": true, - "optional": true - }, - "uid-number": { - "version": "0.0.6", - "bundled": true, - "dev": true, - "optional": true - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "uuid": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "verror": { - "version": "1.3.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "extsprintf": "1.0.2" - } - }, - "wide-align": { - "version": "1.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "string-width": "1.0.2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", "dev": true } } @@ -5715,13 +5969,13 @@ "dev": true }, "fx-runner": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/fx-runner/-/fx-runner-1.0.8.tgz", - "integrity": "sha1-XO07BKjVHWNN4g0UgPDcXdgyXew=", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/fx-runner/-/fx-runner-1.0.9.tgz", + "integrity": "sha1-eyPzdz3HaqzELxHZr/J2lnXLY/A=", "dev": true, "requires": { "commander": "2.9.0", - "lodash": "3.10.1", + "lodash": "4.17.10", "shell-quote": "1.6.1", "spawn-sync": "1.0.15", "when": "3.7.7", @@ -5735,7 +5989,7 @@ "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=", "dev": true, "requires": { - "graceful-readlink": "1.0.1" + "graceful-readlink": ">= 1.0.0" } }, "isexe": { @@ -5745,9 +5999,9 @@ "dev": true }, "lodash": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", - "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=", + "version": "4.17.10", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", + "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", "dev": true }, "which": { @@ -5756,19 +6010,19 @@ "integrity": "sha1-FVf5YIBgTlsRs1meufRbUKnv1yI=", "dev": true, "requires": { - "is-absolute": "0.1.7", - "isexe": "1.1.2" + "is-absolute": "^0.1.7", + "isexe": "^1.1.1" } } } }, "gaze": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.2.tgz", - "integrity": "sha1-hHIkZ3rbiHDWeSV+0ziP22HkAQU=", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", + "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", "dev": true, "requires": { - "globule": "1.2.0" + "globule": "^1.0.0" } }, "generate-function": { @@ -5783,7 +6037,7 @@ "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=", "dev": true, "requires": { - "is-property": "1.0.2" + "is-property": "^1.0.0" } }, "get-caller-file": { @@ -5816,6 +6070,20 @@ "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", "dev": true }, + "get-uri": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.2.tgz", + "integrity": "sha512-ZD325dMZOgerGqF/rF6vZXyFGTAay62svjQIT+X/oU2PtxYpFxvSkbsdi+oxIrsNxlZVd4y8wUDqkaExWTI/Cw==", + "dev": true, + "requires": { + "data-uri-to-buffer": "1", + "debug": "2", + "extend": "3", + "file-uri-to-path": "1", + "ftp": "~0.3.10", + "readable-stream": "2" + } + }, "get-value": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", @@ -5834,7 +6102,7 @@ "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", "dev": true, "requires": { - "assert-plus": "1.0.0" + "assert-plus": "^1.0.0" } }, "gettext-parser": { @@ -5843,7 +6111,7 @@ "integrity": "sha1-LFpmONiTk0ubVQN9CtgstwBLJnk=", "dev": true, "requires": { - "encoding": "0.1.12" + "encoding": "^0.1.11" } }, "git-rev-sync": { @@ -5863,9 +6131,9 @@ "integrity": "sha1-svXHfvlxSPS09uImguELuoZnz/E=", "dev": true, "requires": { - "glob": "7.0.6", - "interpret": "1.1.0", - "rechoir": "0.6.2" + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" } } } @@ -5876,12 +6144,12 @@ "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=", "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.2", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "glob-base": { @@ -5890,8 +6158,8 @@ "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", "dev": true, "requires": { - "glob-parent": "2.0.0", - "is-glob": "2.0.1" + "glob-parent": "^2.0.0", + "is-glob": "^2.0.0" } }, "glob-parent": { @@ -5900,7 +6168,7 @@ "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", "dev": true, "requires": { - "is-glob": "2.0.1" + "is-glob": "^2.0.0" } }, "global": { @@ -5909,8 +6177,8 @@ "integrity": "sha1-52mJJopsdMOJCLEwWxD8DjlOnQ8=", "dev": true, "requires": { - "min-document": "2.19.0", - "process": "0.5.2" + "min-document": "^2.19.0", + "process": "~0.5.1" }, "dependencies": { "process": { @@ -5927,7 +6195,7 @@ "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", "dev": true, "requires": { - "ini": "1.3.5" + "ini": "^1.3.4" } }, "globals": { @@ -5942,12 +6210,12 @@ "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", "dev": true, "requires": { - "array-union": "1.0.2", - "arrify": "1.0.1", - "glob": "7.0.6", - "object-assign": "4.1.1", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" }, "dependencies": { "pify": { @@ -5959,14 +6227,14 @@ } }, "globule": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.0.tgz", - "integrity": "sha1-HcScaCLdnoovoAuiopUAboZkvQk=", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.1.tgz", + "integrity": "sha512-g7QtgWF4uYSL5/dn71WxubOrS7JVGCnFPEnoeChJmBnyR9Mw8nGoEwOgJL/RC2Te0WhbsEUCejfH8SZNJ+adYQ==", "dev": true, "requires": { - "glob": "7.1.2", - "lodash": "4.17.5", - "minimatch": "3.0.4" + "glob": "~7.1.1", + "lodash": "~4.17.10", + "minimatch": "~3.0.2" }, "dependencies": { "glob": { @@ -5975,13 +6243,19 @@ "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } + }, + "lodash": { + "version": "4.17.10", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", + "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", + "dev": true } } }, @@ -5991,17 +6265,17 @@ "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", "dev": true, "requires": { - "create-error-class": "3.0.2", - "duplexer3": "0.1.4", - "get-stream": "3.0.0", - "is-redirect": "1.0.0", - "is-retry-allowed": "1.1.0", - "is-stream": "1.1.0", - "lowercase-keys": "1.0.0", - "safe-buffer": "5.1.1", - "timed-out": "4.0.1", - "unzip-response": "2.0.1", - "url-parse-lax": "1.0.0" + "create-error-class": "^3.0.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-redirect": "^1.0.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "lowercase-keys": "^1.0.0", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "unzip-response": "^2.0.1", + "url-parse-lax": "^1.0.0" } }, "graceful-fs": { @@ -6016,6 +6290,15 @@ "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=", "dev": true }, + "graphlib": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.5.tgz", + "integrity": "sha512-XvtbqCcw+EM5SqQrIetIKKD+uZVNQtDPD1goIg7K73RuRZtVI5rYMdcCVSHm/AS1sCBZ7vt0p5WgXouucHQaOA==", + "dev": true, + "requires": { + "lodash": "^4.11.1" + } + }, "growl": { "version": "1.10.3", "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.3.tgz", @@ -6034,22 +6317,22 @@ "integrity": "sha1-TmpeaVtwRy/VME9fqeNCNoNqc7w=", "dev": true, "requires": { - "coffeescript": "1.10.0", - "dateformat": "1.0.12", - "eventemitter2": "0.4.14", - "exit": "0.1.2", - "findup-sync": "0.3.0", - "glob": "7.0.6", - "grunt-cli": "1.2.0", - "grunt-known-options": "1.1.0", - "grunt-legacy-log": "1.0.1", - "grunt-legacy-util": "1.0.0", - "iconv-lite": "0.4.19", - "js-yaml": "3.5.5", - "minimatch": "3.0.4", - "nopt": "3.0.6", - "path-is-absolute": "1.0.1", - "rimraf": "2.2.8" + "coffeescript": "~1.10.0", + "dateformat": "~1.0.12", + "eventemitter2": "~0.4.13", + "exit": "~0.1.1", + "findup-sync": "~0.3.0", + "glob": "~7.0.0", + "grunt-cli": "~1.2.0", + "grunt-known-options": "~1.1.0", + "grunt-legacy-log": "~1.0.0", + "grunt-legacy-util": "~1.0.0", + "iconv-lite": "~0.4.13", + "js-yaml": "~3.5.2", + "minimatch": "~3.0.2", + "nopt": "~3.0.6", + "path-is-absolute": "~1.0.0", + "rimraf": "~2.2.8" } }, "grunt-cli": { @@ -6058,10 +6341,10 @@ "integrity": "sha1-VisRnrsGndtGSs4oRVAb6Xs1tqg=", "dev": true, "requires": { - "findup-sync": "0.3.0", - "grunt-known-options": "1.1.0", - "nopt": "3.0.6", - "resolve": "1.1.7" + "findup-sync": "~0.3.0", + "grunt-known-options": "~1.1.0", + "nopt": "~3.0.6", + "resolve": "~1.1.0" }, "dependencies": { "resolve": { @@ -6078,8 +6361,8 @@ "integrity": "sha1-Vkq/LQN4qYOhW54/MO51tzjEBjg=", "dev": true, "requires": { - "async": "1.5.2", - "rimraf": "2.6.2" + "async": "^1.5.2", + "rimraf": "^2.5.1" }, "dependencies": { "rimraf": { @@ -6088,7 +6371,7 @@ "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", "dev": true, "requires": { - "glob": "7.0.6" + "glob": "^7.0.5" } } } @@ -6099,15 +6382,15 @@ "integrity": "sha1-XPkzuRpnOGBEJzwLJERgPNmIebo=", "dev": true, "requires": { - "async": "1.5.2", - "connect": "3.6.6", - "connect-livereload": "0.5.4", - "http2": "3.3.7", - "morgan": "1.9.0", - "opn": "4.0.2", - "portscanner": "1.2.0", - "serve-index": "1.9.1", - "serve-static": "1.13.1" + "async": "^1.5.2", + "connect": "^3.4.0", + "connect-livereload": "^0.5.0", + "http2": "^3.3.4", + "morgan": "^1.6.1", + "opn": "^4.0.0", + "portscanner": "^1.0.0", + "serve-index": "^1.7.1", + "serve-static": "^1.10.0" } }, "grunt-contrib-copy": { @@ -6116,8 +6399,8 @@ "integrity": "sha1-cGDGWB6QS4qw0A8HbgqPbj58NXM=", "dev": true, "requires": { - "chalk": "1.1.3", - "file-sync-cmp": "0.1.1" + "chalk": "^1.1.1", + "file-sync-cmp": "^0.1.0" }, "dependencies": { "ansi-styles": { @@ -6132,11 +6415,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "supports-color": { @@ -6153,8 +6436,8 @@ "integrity": "sha1-tSWlwK/wRiL3Vw4x+SQQbxb4G0Y=", "dev": true, "requires": { - "chalk": "1.1.3", - "pug": "2.0.0-rc.4" + "chalk": "^1.0.0", + "pug": "^2.0.0-alpha3" }, "dependencies": { "ansi-styles": { @@ -6169,11 +6452,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "supports-color": { @@ -6190,11 +6473,11 @@ "integrity": "sha1-R9RG7wVESW7/naQY0A9XdFQ0crs=", "dev": true, "requires": { - "async": "1.5.2", - "chalk": "1.1.3", - "lodash": "4.17.5", - "nib": "1.1.2", - "stylus": "0.54.5" + "async": "^1.5.2", + "chalk": "^1.0.0", + "lodash": "^4.0.0", + "nib": "^1.1.0", + "stylus": "^0.54.0" }, "dependencies": { "ansi-styles": { @@ -6209,11 +6492,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "supports-color": { @@ -6225,21 +6508,30 @@ } }, "grunt-contrib-watch": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/grunt-contrib-watch/-/grunt-contrib-watch-1.0.0.tgz", - "integrity": "sha1-hKGnodar0m7VaEE0lscxM+mQAY8=", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/grunt-contrib-watch/-/grunt-contrib-watch-1.1.0.tgz", + "integrity": "sha512-yGweN+0DW5yM+oo58fRu/XIRrPcn3r4tQx+nL7eMRwjpvk+rQY6R8o94BPK0i2UhTg9FN21hS+m8vR8v9vXfeg==", "dev": true, "requires": { - "async": "1.5.2", - "gaze": "1.1.2", - "lodash": "3.10.1", - "tiny-lr": "0.2.1" + "async": "^2.6.0", + "gaze": "^1.1.0", + "lodash": "^4.17.10", + "tiny-lr": "^1.1.1" }, "dependencies": { + "async": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", + "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", + "dev": true, + "requires": { + "lodash": "^4.17.10" + } + }, "lodash": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", - "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=", + "version": "4.17.10", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", + "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", "dev": true } } @@ -6250,11 +6542,11 @@ "integrity": "sha1-nU5QHO8WtyF3KmBBxNQdH5KFirU=", "dev": true, "requires": { - "crx": "3.2.1", - "es6-promise": "3.3.1", - "mkdirp": "0.5.1", - "os-homedir": "1.0.2", - "xtend": "4.0.1" + "crx": "^3.0.1", + "es6-promise": "^3.0.0", + "mkdirp": "^0.5.0", + "os-homedir": "^1.0.1", + "xtend": "^4.0.1" } }, "grunt-exec": { @@ -6270,16 +6562,15 @@ "dev": true }, "grunt-legacy-log": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-1.0.1.tgz", - "integrity": "sha512-rwuyqNKlI0IPz0DvxzJjcEiQEBaBNVeb1LFoZKxSmHLETFUwhwUrqOsPIxURTKSwNZHZ4ht1YLBYmVU0YZAzHQ==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-1.0.2.tgz", + "integrity": "sha512-WdedTJ/6zCXnI/coaouzqvkI19uwqbcPkdsXiDRKJyB5rOUlOxnCnTVbpeUdEckKVir2uHF3rDBYppj2p6N3+g==", "dev": true, "requires": { - "colors": "1.1.2", - "grunt-legacy-log-utils": "1.0.0", - "hooker": "0.2.3", - "lodash": "4.17.5", - "underscore.string": "3.3.4" + "colors": "~1.1.2", + "grunt-legacy-log-utils": "~1.0.0", + "hooker": "~0.2.3", + "lodash": "~4.17.5" } }, "grunt-legacy-log-utils": { @@ -6288,8 +6579,8 @@ "integrity": "sha1-p7ji0Ps1taUPSvmG/BEnSevJbz0=", "dev": true, "requires": { - "chalk": "1.1.3", - "lodash": "4.3.0" + "chalk": "~1.1.1", + "lodash": "~4.3.0" }, "dependencies": { "ansi-styles": { @@ -6304,11 +6595,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "lodash": { @@ -6331,13 +6622,13 @@ "integrity": "sha1-OGqnjcbtUJhsKxiVcmWxtIq7m4Y=", "dev": true, "requires": { - "async": "1.5.2", - "exit": "0.1.2", - "getobject": "0.1.0", - "hooker": "0.2.3", - "lodash": "4.3.0", - "underscore.string": "3.2.3", - "which": "1.2.14" + "async": "~1.5.2", + "exit": "~0.1.1", + "getobject": "~0.1.0", + "hooker": "~0.2.3", + "lodash": "~4.3.0", + "underscore.string": "~3.2.3", + "which": "~1.2.1" }, "dependencies": { "lodash": { @@ -6360,8 +6651,8 @@ "integrity": "sha512-zQGEsi3d+ViPPi7/4jcj78afKKAKiAA5n61pknQYi25Ugik+aNOuRmiOkmb8mN2CeG8YxT+YdT1H1Q7B/eNkoQ==", "dev": true, "requires": { - "hooker": "0.2.3", - "mkdirp": "0.5.1" + "hooker": "^0.2.3", + "mkdirp": "^0.5.0" } }, "grunt-webpack": { @@ -6370,8 +6661,8 @@ "integrity": "sha512-ghSkdCdvbF1SpI46qDT9FYqw5ZP5sSYbEQU/DwzoJE1K42xizAZ5Rv3kzpaRdJT4yvu8/6fO5+wne3/y0n74QA==", "dev": true, "requires": { - "deep-for-each": "1.0.6", - "lodash": "4.17.5" + "deep-for-each": "^1.0.5", + "lodash": "^4.7.0" } }, "har-schema": { @@ -6386,8 +6677,8 @@ "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", "dev": true, "requires": { - "ajv": "5.5.2", - "har-schema": "2.0.0" + "ajv": "^5.1.0", + "har-schema": "^2.0.0" }, "dependencies": { "ajv": { @@ -6396,10 +6687,10 @@ "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", "dev": true, "requires": { - "co": "4.6.0", - "fast-deep-equal": "1.1.0", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1" + "co": "^4.6.0", + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0" } } } @@ -6410,7 +6701,7 @@ "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=", "dev": true, "requires": { - "function-bind": "1.1.1" + "function-bind": "^1.0.2" } }, "has-ansi": { @@ -6419,7 +6710,7 @@ "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "has-color": { @@ -6440,9 +6731,9 @@ "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", "dev": true, "requires": { - "get-value": "2.0.6", - "has-values": "1.0.0", - "isobject": "3.0.1" + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" }, "dependencies": { "isobject": { @@ -6459,8 +6750,8 @@ "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", "dev": true, "requires": { - "is-number": "3.0.0", - "kind-of": "4.0.0" + "is-number": "^3.0.0", + "kind-of": "^4.0.0" }, "dependencies": { "is-number": { @@ -6469,7 +6760,7 @@ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -6478,7 +6769,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -6489,18 +6780,28 @@ "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } }, + "hasbin": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/hasbin/-/hasbin-1.2.3.tgz", + "integrity": "sha1-eMWSaJPIAhXCtWiuH9P8q3omlrA=", + "dev": true, + "requires": { + "async": "~1.5" + } + }, "hash-base": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-2.0.2.tgz", - "integrity": "sha1-ZuodhW206KVHDK32/OI65SRO8uE=", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", + "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", "dev": true, "requires": { - "inherits": "2.0.3" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" } }, "hash.js": { @@ -6509,8 +6810,8 @@ "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", "dev": true, "requires": { - "inherits": "2.0.3", - "minimalistic-assert": "1.0.0" + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.0" } }, "hawk": { @@ -6519,10 +6820,10 @@ "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==", "dev": true, "requires": { - "boom": "4.3.1", - "cryptiles": "3.1.2", - "hoek": "4.2.1", - "sntp": "2.1.0" + "boom": "4.x.x", + "cryptiles": "3.x.x", + "hoek": "4.x.x", + "sntp": "2.x.x" } }, "he": { @@ -6543,9 +6844,9 @@ "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", "dev": true, "requires": { - "hash.js": "1.1.3", - "minimalistic-assert": "1.0.0", - "minimalistic-crypto-utils": "1.0.1" + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" } }, "hoek": { @@ -6560,8 +6861,8 @@ "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", "dev": true, "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.1" } }, "hooker": { @@ -6582,12 +6883,12 @@ "integrity": "sha1-G9+HrMoPP55T+k/M6w9LTLsAszg=", "dev": true, "requires": { - "domelementtype": "1.3.0", - "domhandler": "2.4.1", - "domutils": "1.5.1", - "entities": "1.1.1", - "inherits": "2.0.3", - "readable-stream": "2.3.4" + "domelementtype": "^1.3.0", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^2.0.2" } }, "http-errors": { @@ -6598,7 +6899,7 @@ "depd": "1.1.1", "inherits": "2.0.3", "setprototypeof": "1.0.3", - "statuses": "1.3.1" + "statuses": ">= 1.3.1 < 2" }, "dependencies": { "depd": { @@ -6614,20 +6915,41 @@ } }, "http-parser-js": { - "version": "0.4.10", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.10.tgz", - "integrity": "sha1-ksnBN0w1CF912zWexWzCV8u5P6Q=", + "version": "0.4.13", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.13.tgz", + "integrity": "sha1-O9bW/ebjFyyTNMOzO2wZPYD+ETc=", "dev": true }, + "http-proxy-agent": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", + "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", + "dev": true, + "requires": { + "agent-base": "4", + "debug": "3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, "http-signature": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", "dev": true, "requires": { - "assert-plus": "1.0.0", - "jsprim": "1.4.1", - "sshpk": "1.13.1" + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" } }, "http2": { @@ -6643,13 +6965,13 @@ "dev": true }, "https-proxy-agent": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.1.1.tgz", - "integrity": "sha512-LK6tQUR/VOkTI6ygAfWUKKP95I+e6M1h7N3PncGu1CATHCnex+CAv9ttR0lbHu1Uk2PXm/WoAHFo6JCGwMjVMw==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.1.tgz", + "integrity": "sha512-HPCTS1LW51bcyMYbxUIOO4HEOlQ1/1qRaFWcyxvwaqUS9TY88aoEuHUY33kuAh1YhVVaDQhLZsnPd+XNARWZlQ==", "dev": true, "requires": { - "agent-base": "4.2.0", - "debug": "3.1.0" + "agent-base": "^4.1.0", + "debug": "^3.1.0" }, "dependencies": { "debug": { @@ -6669,9 +6991,9 @@ "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" }, "ieee754": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.8.tgz", - "integrity": "sha1-vjPUCsEO8ZJnAfbwii2G+/0a0+Q=", + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.11.tgz", + "integrity": "sha512-VhDzCKN7K8ufStx/CLj5/PDTMgph+qwN5Pkd5i0sGnVwk56zJ0lkT8Qzi1xqWLS0Wp29DgDtNeS7v8/wMoZeHg==", "dev": true }, "iferr": { @@ -6681,9 +7003,9 @@ "dev": true }, "ignore": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.7.tgz", - "integrity": "sha512-YGG3ejvBNHRqu0559EOxxNFihD0AjpvHlC/pdGKd3X3ofe+CoJkYazwNJYTNebqpPKN+VVQbh4ZFn1DivMNuHA==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.8.tgz", + "integrity": "sha512-pUh+xUQQhQzevjRHHFqqcTy0/dP/kS9I8HSrUydhihjuD09W6ldVWFtIrwhXdUJHis3i2rZNqEHpZH/cbinFbg==", "dev": true }, "import-lazy": { @@ -6704,7 +7026,7 @@ "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", "dev": true, "requires": { - "repeating": "2.0.1" + "repeating": "^2.0.0" } }, "indexof": { @@ -6719,8 +7041,8 @@ "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "dev": true, "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" + "once": "^1.3.0", + "wrappy": "1" } }, "inherits": { @@ -6740,7 +7062,7 @@ "integrity": "sha512-0Kd4NqMJUhknG4ECiJ/mgyHJBpfBBWZ3IKHl2BLNQiFtMO7/xiv9mmHl7mGvE0iKrBeQAZdMcQP3sMXZN0cqeg==", "dev": true, "requires": { - "babel-core": "6.26.0" + "babel-core": "~6" } }, "inquirer": { @@ -6749,20 +7071,20 @@ "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", "dev": true, "requires": { - "ansi-escapes": "3.0.0", - "chalk": "2.3.2", - "cli-cursor": "2.1.0", - "cli-width": "2.2.0", - "external-editor": "2.1.0", - "figures": "2.0.0", - "lodash": "4.17.5", + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.0", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^2.0.4", + "figures": "^2.0.0", + "lodash": "^4.3.0", "mute-stream": "0.0.7", - "run-async": "2.3.0", - "rx-lite": "4.0.8", - "rx-lite-aggregates": "4.0.8", - "string-width": "2.1.1", - "strip-ansi": "4.0.0", - "through": "2.3.8" + "run-async": "^2.2.0", + "rx-lite": "^4.0.8", + "rx-lite-aggregates": "^4.0.8", + "string-width": "^2.1.0", + "strip-ansi": "^4.0.0", + "through": "^2.3.6" }, "dependencies": { "ansi-regex": { @@ -6777,7 +7099,7 @@ "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "dev": true, "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } } } @@ -6794,7 +7116,7 @@ "integrity": "sha512-7Z5PPegwDTyjbaeCnV0efcyS6vdKAU51kpEmS7QFib3P4822l8ICYyMn7qvJnc+WzLoDsuI9gPMKbJ8pCu8XtA==", "dev": true, "requires": { - "loose-envify": "1.3.1" + "loose-envify": "^1.0.0" } }, "invert-kv": { @@ -6803,6 +7125,12 @@ "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", "dev": true }, + "ip": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", + "dev": true + }, "ipaddr.js": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.6.0.tgz", @@ -6814,40 +7142,32 @@ "integrity": "sha1-hHSREZ/MtftDYhfMc39/qtUPYD8=", "dev": true, "requires": { - "is-relative": "0.1.3" + "is-relative": "^0.1.0" } }, "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", "dev": true, "requires": { - "kind-of": "6.0.2" - }, - "dependencies": { - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", - "dev": true - } + "kind-of": "^3.0.2" } }, "is-alphabetical": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.1.tgz", - "integrity": "sha1-x3B5zJHU76x3W+EDS/LSQ/lebwg=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.2.tgz", + "integrity": "sha512-V0xN4BYezDHcBSKb1QHUFMlR4as/XEuCZBzMJUU4n7+Cbt33SmUnSol+pnXFvLxSHNq2CemUXNdaXV6Flg7+xg==", "dev": true }, "is-alphanumerical": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.1.tgz", - "integrity": "sha1-37SqTRCF4zvbYcLe6cgOnGwZ9Ts=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.2.tgz", + "integrity": "sha512-pyfU/0kHdISIgslFfZN9nfY1Gk3MquQgUm1mJTjdkEPpkAKNWuBTSqFwewOpR7N351VkErCiyV71zX7mlQQqsg==", "dev": true, "requires": { - "is-alphabetical": "1.0.1", - "is-decimal": "1.0.1" + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0" } }, "is-arrayish": { @@ -6862,7 +7182,7 @@ "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", "dev": true, "requires": { - "binary-extensions": "1.11.0" + "binary-extensions": "^1.0.0" } }, "is-buffer": { @@ -6877,47 +7197,39 @@ "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", "dev": true, "requires": { - "builtin-modules": "1.1.1" + "builtin-modules": "^1.0.0" } }, "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", "dev": true, "requires": { - "kind-of": "6.0.2" - }, - "dependencies": { - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", - "dev": true - } + "kind-of": "^3.0.2" } }, "is-decimal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.1.tgz", - "integrity": "sha1-9ftqlJlq2ejjdh+/vQkfH8qMToI=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.2.tgz", + "integrity": "sha512-TRzl7mOCchnhchN+f3ICUCzYvL9ul7R+TYOsZ8xia++knyZAJfv/uA1FvQXsAnYIl1T3B2X5E/J7Wb1QXiIBXg==", "dev": true }, "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" }, "dependencies": { "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", "dev": true } } @@ -6934,7 +7246,7 @@ "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", "dev": true, "requires": { - "is-primitive": "2.0.0" + "is-primitive": "^2.0.0" } }, "is-expression": { @@ -6943,8 +7255,8 @@ "integrity": "sha1-Oayqa+f9HzRx3ELHQW5hwkMXrJ8=", "dev": true, "requires": { - "acorn": "4.0.13", - "object-assign": "4.1.1" + "acorn": "~4.0.2", + "object-assign": "^4.0.1" }, "dependencies": { "acorn": { @@ -6973,7 +7285,7 @@ "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "is-fullwidth-code-point": { @@ -6988,13 +7300,13 @@ "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", "dev": true, "requires": { - "is-extglob": "1.0.0" + "is-extglob": "^1.0.0" } }, "is-hexadecimal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.1.tgz", - "integrity": "sha1-bghLvJIGH7sJcexYts5tQE4k2mk=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.2.tgz", + "integrity": "sha512-but/G3sapV3MNyqiDBLrOi4x8uCIw0RY3o/Vb5GT0sMFHrVV7731wFSVy41T5FO1og7G0gXLJh0MkgPRouko/A==", "dev": true }, "is-installed-globally": { @@ -7003,10 +7315,16 @@ "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", "dev": true, "requires": { - "global-dirs": "0.1.1", - "is-path-inside": "1.0.1" + "global-dirs": "^0.1.0", + "is-path-inside": "^1.0.0" } }, + "is-mergeable-object": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-mergeable-object/-/is-mergeable-object-1.1.0.tgz", + "integrity": "sha512-JfyDDwUdtS4yHCgUpxOyKB9dnfZ0gecufxB0eytX6BmSXSE+8dbxDGt+V7CNRIRJ9sYFV/WQt2KJG6hNob2sBw==", + "dev": true + }, "is-my-ip-valid": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz", @@ -7019,11 +7337,11 @@ "integrity": "sha512-IBhBslgngMQN8DDSppmgDv7RNrlFotuuDsKcrCP3+HbFaVivIBU7u9oiiErw8sH4ynx3+gOGQ3q2otkgiSi6kg==", "dev": true, "requires": { - "generate-function": "2.0.0", - "generate-object-property": "1.2.0", - "is-my-ip-valid": "1.0.0", - "jsonpointer": "4.0.1", - "xtend": "4.0.1" + "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" } }, "is-npm": { @@ -7038,7 +7356,7 @@ "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } }, "is-obj": { @@ -7053,7 +7371,7 @@ "integrity": "sha512-OTiixgpZAT1M4NHgS5IguFp/Vz2VI3U7Goh4/HA1adtwyLtSBrxYlcSYkhpAE07s4fKEcjrFxyvtQBND4vFQyQ==", "dev": true, "requires": { - "is-number": "4.0.0" + "is-number": "^4.0.0" }, "dependencies": { "is-number": { @@ -7071,12 +7389,12 @@ "dev": true }, "is-path-in-cwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz", - "integrity": "sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz", + "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", "dev": true, "requires": { - "is-path-inside": "1.0.1" + "is-path-inside": "^1.0.0" } }, "is-path-inside": { @@ -7085,7 +7403,7 @@ "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", "dev": true, "requires": { - "path-is-inside": "1.0.2" + "path-is-inside": "^1.0.1" } }, "is-plain-object": { @@ -7094,7 +7412,7 @@ "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "dev": true, "requires": { - "isobject": "3.0.1" + "isobject": "^3.0.1" }, "dependencies": { "isobject": { @@ -7141,7 +7459,7 @@ "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", "dev": true, "requires": { - "has": "1.0.1" + "has": "^1.0.1" } }, "is-relative": { @@ -7186,18 +7504,18 @@ "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", "dev": true }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + }, "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", "dev": true }, - "isemail": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/isemail/-/isemail-1.2.0.tgz", - "integrity": "sha1-vgPfjMPineTSxd9lASY/H6RZXpo=", - "dev": true - }, "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", @@ -7219,11 +7537,11 @@ "integrity": "sha512-qyZXlTaBilCJu5gxATAYskiZVa1LUCpWfs3hJLq/kFeOElLMH7RPMUk3u/+gGAl8QOgERU7zpzBM9jwrg+uEjg==", "dev": true, "requires": { - "desandro-matches-selector": "2.0.2", - "fizzy-ui-utils": "2.0.7", - "get-size": "2.0.2", - "masonry-layout": "4.2.1", - "outlayer": "2.1.1" + "desandro-matches-selector": "^2.0.0", + "fizzy-ui-utils": "^2.0.4", + "get-size": "^2.0.0", + "masonry-layout": "^4.1.0", + "outlayer": "^2.1.0" } }, "isstream": { @@ -7244,26 +7562,6 @@ "integrity": "sha1-LPn7rkbYB0/Ba33gBxyO/rykc6Y=", "dev": true }, - "joi": { - "version": "6.10.1", - "resolved": "https://registry.npmjs.org/joi/-/joi-6.10.1.tgz", - "integrity": "sha1-TVDDGAeRIgAP5fFq8f+OGRe3fgY=", - "dev": true, - "requires": { - "hoek": "2.16.3", - "isemail": "1.2.0", - "moment": "2.21.0", - "topo": "1.1.0" - }, - "dependencies": { - "hoek": { - "version": "2.16.3", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=", - "dev": true - } - } - }, "jquery": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.3.1.tgz", @@ -7277,15 +7575,7 @@ "dev": true, "requires": { "JSONSelect": "0.2.1", - "traverse": "0.4.6" - }, - "dependencies": { - "traverse": { - "version": "0.4.6", - "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.4.6.tgz", - "integrity": "sha1-0EsigOTHkqWBVCnve4tgxkyczDQ=", - "dev": true - } + "traverse": "0.4.x" } }, "js-stringify": { @@ -7306,8 +7596,8 @@ "integrity": "sha1-A3fDgBfKvHMisNH7zSWkkWQfL74=", "dev": true, "requires": { - "argparse": "1.0.10", - "esprima": "2.7.3" + "argparse": "^1.0.2", + "esprima": "^2.6.0" } }, "jsbn": { @@ -7323,25 +7613,19 @@ "integrity": "sha1-5CGiqOINawgZ3yiQj3glJrlt0f4=", "dev": true }, - "json-loader": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/json-loader/-/json-loader-0.5.7.tgz", - "integrity": "sha512-QLPs8Dj7lnf3e3QYS1zkCo+4ZwqOiF9d/nZnYozTISxXWCfNs9yuky5rJw4/W34s7POaNlbZmQGaB5NiXCbP4w==", - "dev": true - }, "json-merge-patch": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/json-merge-patch/-/json-merge-patch-0.2.3.tgz", "integrity": "sha1-+ixrWvh9p3uuKWalidUuI+2B/kA=", "dev": true, "requires": { - "deep-equal": "1.0.1" + "deep-equal": "^1.0.0" } }, "json-parse-better-errors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.1.tgz", - "integrity": "sha512-xyQpxeWWMKyJps9CuGJYeng6ssI5bpqS9ltQpdVQ90t4ql6NdnxFKh95JcRt2cun/DjMVNrdjniLPuMA69xmCw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", "dev": true }, "json-schema": { @@ -7362,7 +7646,7 @@ "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", "dev": true, "requires": { - "jsonify": "0.0.0" + "jsonify": "~0.0.0" } }, "json-stable-stringify-without-jsonify": { @@ -7389,7 +7673,7 @@ "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", "dev": true, "requires": { - "graceful-fs": "4.1.11" + "graceful-fs": "^4.1.6" } }, "jsonify": { @@ -7411,22 +7695,27 @@ "dev": true }, "jsonwebtoken": { - "version": "7.1.9", - "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-7.1.9.tgz", - "integrity": "sha1-hHgE5SWL7FqUmajcSl56O64I1Yo=", - "dev": true, - "requires": { - "joi": "6.10.1", - "jws": "3.1.4", - "lodash.once": "4.1.1", - "ms": "0.7.3", - "xtend": "4.0.1" + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.2.1.tgz", + "integrity": "sha512-l8rUBr0fqYYwPc8/ZGrue7GiW7vWdZtZqelxo4Sd5lMvuEeCK8/wS54sEo6tJhdZ6hqfutsj6COgC0d1XdbHGw==", + "dev": true, + "requires": { + "jws": "^3.1.4", + "lodash.includes": "^4.3.0", + "lodash.isboolean": "^3.0.3", + "lodash.isinteger": "^4.0.4", + "lodash.isnumber": "^3.0.3", + "lodash.isplainobject": "^4.0.6", + "lodash.isstring": "^4.0.1", + "lodash.once": "^4.0.0", + "ms": "^2.1.1", + "xtend": "^4.0.1" }, "dependencies": { "ms": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.3.tgz", - "integrity": "sha1-cIFVpeROM/X9D8U+gdDUCpG+H/8=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", "dev": true } } @@ -7455,8 +7744,8 @@ "integrity": "sha1-7Yvwkh4vPx7U1cGkT2hwntJHIsM=", "dev": true, "requires": { - "is-promise": "2.1.0", - "promise": "7.3.1" + "is-promise": "^2.0.0", + "promise": "^7.0.1" } }, "jstransformer-markdown-it": { @@ -7465,7 +7754,7 @@ "integrity": "sha1-i0Su28lGXck10oC+kDObZxwWzrg=", "dev": true, "requires": { - "markdown-it": "8.4.1" + "markdown-it": "^8.0.0" } }, "jszip": { @@ -7474,7 +7763,7 @@ "integrity": "sha1-uI86ey5noqBIFSmCx6N1bZxIKPA=", "dev": true, "requires": { - "pako": "1.0.6" + "pako": "~1.0.2" } }, "just-extend": { @@ -7484,26 +7773,24 @@ "dev": true }, "jwa": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.1.5.tgz", - "integrity": "sha1-oFUs4CIHQs1S4VN3SjKQXDDnVuU=", + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.1.6.tgz", + "integrity": "sha512-tBO/cf++BUsJkYql/kBbJroKOgHWEigTKBAjjBEmrMGYd1QMBC74Hr4Wo2zCZw6ZrVhlJPvoMrkcOnlWR/DJfw==", "dev": true, "requires": { - "base64url": "2.0.0", "buffer-equal-constant-time": "1.0.1", - "ecdsa-sig-formatter": "1.0.9", - "safe-buffer": "5.1.1" + "ecdsa-sig-formatter": "1.0.10", + "safe-buffer": "^5.0.1" } }, "jws": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/jws/-/jws-3.1.4.tgz", - "integrity": "sha1-+ei5M46KhHJ31kRLFGT2GIDgUKI=", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/jws/-/jws-3.1.5.tgz", + "integrity": "sha512-GsCSexFADNQUr8T5HPJvayTjvPIfoyJPtLQBwn5a4WZQchcrPMPMAWcC1AzJVRDKyD6ZPROPAxgv6rfHViO4uQ==", "dev": true, "requires": { - "base64url": "2.0.0", - "jwa": "1.1.5", - "safe-buffer": "5.1.1" + "jwa": "^1.1.5", + "safe-buffer": "^5.0.1" } }, "kind-of": { @@ -7512,7 +7799,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } }, "latest-version": { @@ -7521,7 +7808,7 @@ "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", "dev": true, "requires": { - "package-json": "4.0.1" + "package-json": "^4.0.0" } }, "lazy-cache": { @@ -7536,7 +7823,7 @@ "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", "dev": true, "requires": { - "readable-stream": "2.3.4" + "readable-stream": "^2.0.5" } }, "lcid": { @@ -7545,17 +7832,23 @@ "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", "dev": true, "requires": { - "invert-kv": "1.0.0" + "invert-kv": "^1.0.0" } }, + "leb": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/leb/-/leb-0.3.0.tgz", + "integrity": "sha1-Mr7p+tFoMo1q6oUi2DP0GA7tHaM=", + "dev": true + }, "levn": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", "dev": true, "requires": { - "prelude-ls": "1.1.2", - "type-check": "0.3.2" + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" } }, "linkify-it": { @@ -7564,7 +7857,7 @@ "integrity": "sha1-2UpGSPmxwXnWT6lykSaL22zpQ08=", "dev": true, "requires": { - "uc.micro": "1.0.5" + "uc.micro": "^1.0.1" } }, "livereload-js": { @@ -7579,11 +7872,11 @@ "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "parse-json": "2.2.0", - "pify": "2.3.0", - "pinkie-promise": "2.0.1", - "strip-bom": "2.0.0" + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" }, "dependencies": { "pify": { @@ -7606,9 +7899,9 @@ "integrity": "sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0=", "dev": true, "requires": { - "big.js": "3.2.0", - "emojis-list": "2.1.0", - "json5": "0.5.1" + "big.js": "^3.1.3", + "emojis-list": "^2.0.0", + "json5": "^0.5.0" } }, "locate-path": { @@ -7617,8 +7910,8 @@ "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "requires": { - "p-locate": "2.0.0", - "path-exists": "3.0.0" + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" } }, "lodash": { @@ -7627,10 +7920,28 @@ "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==", "dev": true }, - "lodash.endswith": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/lodash.endswith/-/lodash.endswith-4.2.1.tgz", - "integrity": "sha1-/tWawXOO0+I27dcGTsRWRIs3vAk=", + "lodash.assign": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", + "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=", + "dev": true + }, + "lodash.assignin": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", + "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=", + "dev": true + }, + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true + }, + "lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", "dev": true }, "lodash.get": { @@ -7639,10 +7950,34 @@ "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", "dev": true }, - "lodash.isfunction": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz", - "integrity": "sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw==", + "lodash.includes": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", + "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8=", + "dev": true + }, + "lodash.isboolean": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", + "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY=", + "dev": true + }, + "lodash.isinteger": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", + "integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M=", + "dev": true + }, + "lodash.isnumber": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", + "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w=", + "dev": true + }, + "lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=", "dev": true }, "lodash.isstring": { @@ -7657,18 +7992,18 @@ "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=", "dev": true }, + "lodash.set": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz", + "integrity": "sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM=", + "dev": true + }, "lodash.sortby": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", "dev": true }, - "lodash.startswith": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/lodash.startswith/-/lodash.startswith-4.2.1.tgz", - "integrity": "sha1-xZjErc4YiiflMUVzHNxsDnF3YAw=", - "dev": true - }, "loglevel": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.1.tgz", @@ -7681,6 +8016,12 @@ "integrity": "sha512-A5pN2tkFj7H0dGIAM6MFvHKMJcPnjZsOMvR7ujCjfgW5TbV6H9vb1PgxLtHvjqNZTHsUolz+6/WEO0N1xNx2ng==", "dev": true }, + "long": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/long/-/long-3.2.0.tgz", + "integrity": "sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s=", + "dev": true + }, "longest": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", @@ -7699,7 +8040,7 @@ "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", "dev": true, "requires": { - "js-tokens": "3.0.2" + "js-tokens": "^3.0.0" } }, "loud-rejection": { @@ -7708,14 +8049,14 @@ "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", "dev": true, "requires": { - "currently-unhandled": "0.4.1", - "signal-exit": "3.0.2" + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" } }, "lowercase-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", - "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", "dev": true }, "lru-cache": { @@ -7724,19 +8065,31 @@ "integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==", "dev": true, "requires": { - "pseudomap": "1.0.2", - "yallist": "2.1.2" + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" } }, + "macos-release": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/macos-release/-/macos-release-1.1.0.tgz", + "integrity": "sha512-mmLbumEYMi5nXReB9js3WGsB8UE6cDBWyIO62Z4DNx6GbRhDxHNjA1MlzSpJ2S2KM1wyiPRA0d19uHWYYvMHjA==", + "dev": true + }, "make-dir": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.2.0.tgz", "integrity": "sha512-aNUAa4UMg/UougV25bbrU4ZaaKNjJ/3/xnvg/twpmKROPdKZPZ9wGgI0opdZzO8q/zUFawoUuixuOv33eZ61Iw==", "dev": true, "requires": { - "pify": "3.0.0" + "pify": "^3.0.0" } }, + "mamacro": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/mamacro/-/mamacro-0.0.3.tgz", + "integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==", + "dev": true + }, "map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", @@ -7755,7 +8108,7 @@ "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", "dev": true, "requires": { - "object-visit": "1.0.1" + "object-visit": "^1.0.0" } }, "markdown-it": { @@ -7764,11 +8117,11 @@ "integrity": "sha512-CzzqSSNkFRUf9vlWvhK1awpJreMRqdCrBvZ8DIoDWTOkESMIF741UPAhuAmbyWmdiFPA6WARNhnu2M6Nrhwa+A==", "dev": true, "requires": { - "argparse": "1.0.10", - "entities": "1.1.1", - "linkify-it": "2.0.3", - "mdurl": "1.0.1", - "uc.micro": "1.0.5" + "argparse": "^1.0.7", + "entities": "~1.1.1", + "linkify-it": "^2.0.0", + "mdurl": "^1.0.1", + "uc.micro": "^1.0.5" } }, "markdown-table": { @@ -7783,10 +8136,18 @@ "integrity": "sha1-Diy6gTkLBUmpFT7DsNkVthwWS+c=", "dev": true, "requires": { - "debug": "2.6.9", - "remark": "5.1.0", - "structured-source": "3.0.2", - "traverse": "0.6.6" + "debug": "^2.1.3", + "remark": "^5.0.1", + "structured-source": "^3.0.2", + "traverse": "^0.6.6" + }, + "dependencies": { + "traverse": { + "version": "0.6.6", + "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.6.6.tgz", + "integrity": "sha1-y99WD9e5r2MlAv7UD5GMFX6pcTc=", + "dev": true + } } }, "masonry-layout": { @@ -7795,8 +8156,8 @@ "integrity": "sha512-ngJmxszn+JSKreNnrwkjks9OUuwVL2JR8T4iVeE3+g+sJjyoxTLdUNRbYONA25y+nWZn+WZI2GvThRAV+z5Duw==", "dev": true, "requires": { - "get-size": "2.0.2", - "outlayer": "2.1.1" + "get-size": "^2.0.2", + "outlayer": "^2.1.0" } }, "md5.js": { @@ -7805,20 +8166,8 @@ "integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=", "dev": true, "requires": { - "hash-base": "3.0.4", - "inherits": "2.0.3" - }, - "dependencies": { - "hash-base": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", - "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", - "dev": true, - "requires": { - "inherits": "2.0.3", - "safe-buffer": "5.1.1" - } - } + "hash-base": "^3.0.0", + "inherits": "^2.0.1" } }, "mdurl": { @@ -7838,7 +8187,7 @@ "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", "dev": true, "requires": { - "mimic-fn": "1.2.0" + "mimic-fn": "^1.0.0" } }, "memory-fs": { @@ -7847,8 +8196,8 @@ "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", "dev": true, "requires": { - "errno": "0.1.7", - "readable-stream": "2.3.4" + "errno": "^0.1.3", + "readable-stream": "^2.0.1" } }, "meow": { @@ -7857,16 +8206,16 @@ "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", "dev": true, "requires": { - "camelcase-keys": "2.1.0", - "decamelize": "1.2.0", - "loud-rejection": "1.6.0", - "map-obj": "1.0.1", - "minimist": "1.2.0", - "normalize-package-data": "2.4.0", - "object-assign": "4.1.1", - "read-pkg-up": "1.0.1", - "redent": "1.0.0", - "trim-newlines": "1.0.0" + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" }, "dependencies": { "minimist": { @@ -7893,19 +8242,19 @@ "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", "dev": true, "requires": { - "arr-diff": "2.0.0", - "array-unique": "0.2.1", - "braces": "1.8.5", - "expand-brackets": "0.1.5", - "extglob": "0.3.2", - "filename-regex": "2.0.1", - "is-extglob": "1.0.0", - "is-glob": "2.0.1", - "kind-of": "3.2.2", - "normalize-path": "2.1.1", - "object.omit": "2.0.1", - "parse-glob": "3.0.4", - "regex-cache": "0.4.4" + "arr-diff": "^2.0.0", + "array-unique": "^0.2.1", + "braces": "^1.8.2", + "expand-brackets": "^0.1.4", + "extglob": "^0.3.1", + "filename-regex": "^2.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.1", + "kind-of": "^3.0.2", + "normalize-path": "^2.0.1", + "object.omit": "^2.0.0", + "parse-glob": "^3.0.4", + "regex-cache": "^0.4.2" } }, "miller-rabin": { @@ -7914,8 +8263,8 @@ "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", "dev": true, "requires": { - "bn.js": "4.11.8", - "brorand": "1.1.0" + "bn.js": "^4.0.0", + "brorand": "^1.0.1" } }, "mime": { @@ -7933,7 +8282,7 @@ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", "requires": { - "mime-db": "1.33.0" + "mime-db": "~1.33.0" } }, "mimic-fn": { @@ -7948,13 +8297,13 @@ "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", "dev": true, "requires": { - "dom-walk": "0.1.1" + "dom-walk": "^0.1.0" } }, "minimalistic-assert": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz", - "integrity": "sha1-cCvi3aazf0g2vLP121ZkG2Sh09M=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", "dev": true }, "minimalistic-crypto-utils": { @@ -7969,7 +8318,7 @@ "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, "requires": { - "brace-expansion": "1.1.11" + "brace-expansion": "^1.1.7" } }, "minimist": { @@ -7984,16 +8333,16 @@ "integrity": "sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==", "dev": true, "requires": { - "concat-stream": "1.6.0", - "duplexify": "3.5.4", - "end-of-stream": "1.4.1", - "flush-write-stream": "1.0.2", - "from2": "2.3.0", - "parallel-transform": "1.1.0", - "pump": "2.0.1", - "pumpify": "1.4.0", - "stream-each": "1.2.2", - "through2": "2.0.3" + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^2.0.1", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" } }, "mixin-deep": { @@ -8002,8 +8351,8 @@ "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", "dev": true, "requires": { - "for-in": "1.0.2", - "is-extendable": "1.0.1" + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" }, "dependencies": { "is-extendable": { @@ -8012,11 +8361,29 @@ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "dev": true, "requires": { - "is-plain-object": "2.0.4" + "is-plain-object": "^2.0.4" } } } }, + "mixin-object": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", + "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", + "dev": true, + "requires": { + "for-in": "^0.1.3", + "is-extendable": "^0.1.1" + }, + "dependencies": { + "for-in": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", + "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=", + "dev": true + } + } + }, "mkdirp": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", @@ -8065,12 +8432,12 @@ "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "has-flag": { @@ -8085,7 +8452,7 @@ "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", "dev": true, "requires": { - "has-flag": "2.0.0" + "has-flag": "^2.0.0" } } } @@ -8102,11 +8469,11 @@ "integrity": "sha1-0B+mxlhZt2/PMbPLU6OCGjEdgFE=", "dev": true, "requires": { - "basic-auth": "2.0.0", + "basic-auth": "~2.0.0", "debug": "2.6.9", - "depd": "1.1.2", - "on-finished": "2.3.0", - "on-headers": "1.0.1" + "depd": "~1.1.1", + "on-finished": "~2.3.0", + "on-headers": "~1.0.1" } }, "move-concurrently": { @@ -8115,12 +8482,12 @@ "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", "dev": true, "requires": { - "aproba": "1.2.0", - "copy-concurrently": "1.0.5", - "fs-write-stream-atomic": "1.0.10", - "mkdirp": "0.5.1", - "rimraf": "2.6.2", - "run-queue": "1.0.3" + "aproba": "^1.1.1", + "copy-concurrently": "^1.0.0", + "fs-write-stream-atomic": "^1.0.8", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.3" }, "dependencies": { "rimraf": { @@ -8129,7 +8496,7 @@ "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", "dev": true, "requires": { - "glob": "7.0.6" + "glob": "^7.0.5" } } } @@ -8152,9 +8519,9 @@ "dev": true, "optional": true, "requires": { - "mkdirp": "0.5.1", - "ncp": "2.0.0", - "rimraf": "2.4.5" + "mkdirp": "~0.5.1", + "ncp": "~2.0.0", + "rimraf": "~2.4.0" }, "dependencies": { "glob": { @@ -8164,11 +8531,11 @@ "dev": true, "optional": true, "requires": { - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "rimraf": { @@ -8178,7 +8545,7 @@ "dev": true, "optional": true, "requires": { - "glob": "6.0.4" + "glob": "^6.0.1" } } } @@ -8189,15 +8556,15 @@ "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", "dev": true, "requires": { - "any-promise": "1.3.0", - "object-assign": "4.1.1", - "thenify-all": "1.6.0" + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" } }, "nan": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.9.2.tgz", - "integrity": "sha512-ltW65co7f3PQWBDbqVvaU1WtFJUsNW7sWWm4HINhbMQIyVyzIeyZ8toX5TC5eeooE6piZoaEh4cZkueSKG3KYw==", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz", + "integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==", "dev": true, "optional": true }, @@ -8207,18 +8574,18 @@ "integrity": "sha512-n8R9bS8yQ6eSXaV6jHUpKzD8gLsin02w1HSFiegwrs9E098Ylhw5jdyKPaYqvHknHaSCKTPp7C8dGCQ0q9koXA==", "dev": true, "requires": { - "arr-diff": "4.0.0", - "array-unique": "0.3.2", - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "fragment-cache": "0.2.1", - "is-odd": "2.0.0", - "is-windows": "1.0.2", - "kind-of": "6.0.2", - "object.pick": "1.3.0", - "regex-not": "1.0.2", - "snapdragon": "0.8.1", - "to-regex": "3.0.2" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "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", + "to-regex": "^3.0.1" }, "dependencies": { "arr-diff": { @@ -8253,6 +8620,87 @@ "integrity": "sha1-F7CVgZiJef3a/gIB6TG6kzyWy7Q=", "dev": true }, + "nconf": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/nconf/-/nconf-0.10.0.tgz", + "integrity": "sha512-fKiXMQrpP7CYWJQzKkPPx9hPgmq+YLDyxcG9N8RpiE9FoCkCbzD0NyW0YhE3xn3Aupe7nnDeIx4PFzYehpHT9Q==", + "dev": true, + "requires": { + "async": "^1.4.0", + "ini": "^1.3.0", + "secure-keys": "^1.0.0", + "yargs": "^3.19.0" + }, + "dependencies": { + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "dev": true, + "requires": { + "lcid": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "window-size": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.4.tgz", + "integrity": "sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY=", + "dev": true + }, + "y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "dev": true + }, + "yargs": { + "version": "3.32.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.32.0.tgz", + "integrity": "sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU=", + "dev": true, + "requires": { + "camelcase": "^2.0.1", + "cliui": "^3.0.3", + "decamelize": "^1.1.1", + "os-locale": "^1.4.0", + "string-width": "^1.0.1", + "window-size": "^0.1.4", + "y18n": "^3.2.0" + } + } + } + }, "ncp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ncp/-/ncp-2.0.0.tgz", @@ -8260,15 +8708,40 @@ "dev": true, "optional": true }, + "needle": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/needle/-/needle-2.2.1.tgz", + "integrity": "sha512-t/ZswCM9JTWjAdXS9VpvqhI2Ct2sL2MdY4fUXqGJaGBk13ge99ObqRksRTbBE56K+wxUXwwfZYOuZHifFW9q+Q==", + "dev": true, + "requires": { + "debug": "^2.1.2", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + }, + "dependencies": { + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + } + } + }, "negotiator": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" }, "neo-async": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.5.0.tgz", - "integrity": "sha512-nJmSswG4As/MkRq7QZFuH/sf/yuv8ODdMZrY4Bedjp77a5MK4A6s7YbBB64c9u79EBUOfXUXBvArmvzTD0X+6g==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.5.1.tgz", + "integrity": "sha512-3KL3fvuRkZ7s4IFOMfztb7zJp3QaVWnBeGoJlgB38XnCRPj/0tLzzLG5IB8NYOHbJ8g8UGrgZv44GLDk6CxTxA==", + "dev": true + }, + "netmask": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-1.0.6.tgz", + "integrity": "sha1-ICl+idhvb2QA8lDZ9Pa0wZRfzTU=", "dev": true }, "next-tick": { @@ -8292,11 +8765,11 @@ "integrity": "sha512-U+Krdzhsw4losPP/Rij5UGTLQgS9gaWmXdRIbZQIQWVsUGDBo+N0m9mrY9CCEnmwssgswwydxLJUZtFfouC0gA==", "dev": true, "requires": { - "@sinonjs/formatio": "2.0.0", - "just-extend": "1.1.27", - "lolex": "2.3.2", - "path-to-regexp": "1.7.0", - "text-encoding": "0.6.4" + "@sinonjs/formatio": "^2.0.0", + "just-extend": "^1.1.27", + "lolex": "^2.3.2", + "path-to-regexp": "^1.7.0", + "text-encoding": "^0.6.4" }, "dependencies": { "isarray": { @@ -8316,28 +8789,10 @@ } } }, - "node-firefox-connect": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/node-firefox-connect/-/node-firefox-connect-1.2.0.tgz", - "integrity": "sha1-QkA4SDEyQMmFFO8UszAoFv47hOE=", - "dev": true, - "requires": { - "es6-promise": "2.3.0", - "firefox-client": "0.3.0" - }, - "dependencies": { - "es6-promise": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-2.3.0.tgz", - "integrity": "sha1-lu258v2wGZWCKyY92KratnSBgbw=", - "dev": true - } - } - }, "node-forge": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.2.tgz", - "integrity": "sha512-XTBoBY8NoeGAqQywTM8BjBz/Ro37eTmVF657yf6JumfOhxW9eET43Hve5+6L4+lo3hTDx7kTbC1WfasTHinDpg==", + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.5.tgz", + "integrity": "sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ==", "dev": true }, "node-libs-browser": { @@ -8346,28 +8801,28 @@ "integrity": "sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg==", "dev": true, "requires": { - "assert": "1.4.1", - "browserify-zlib": "0.2.0", - "buffer": "4.9.1", - "console-browserify": "1.1.0", - "constants-browserify": "1.0.0", - "crypto-browserify": "3.12.0", - "domain-browser": "1.2.0", - "events": "1.1.1", - "https-browserify": "1.0.0", - "os-browserify": "0.3.0", + "assert": "^1.1.1", + "browserify-zlib": "^0.2.0", + "buffer": "^4.3.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.11.0", + "domain-browser": "^1.1.1", + "events": "^1.0.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", "path-browserify": "0.0.0", - "process": "0.11.10", - "punycode": "1.4.1", - "querystring-es3": "0.2.1", - "readable-stream": "2.3.4", - "stream-browserify": "2.0.1", - "stream-http": "2.8.0", - "string_decoder": "1.0.3", - "timers-browserify": "2.0.6", + "process": "^0.11.10", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.3.3", + "stream-browserify": "^2.0.1", + "stream-http": "^2.7.2", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", "tty-browserify": "0.0.0", - "url": "0.11.0", - "util": "0.10.3", + "url": "^0.11.0", + "util": "^0.10.3", "vm-browserify": "0.0.4" } }, @@ -8377,19 +8832,19 @@ "integrity": "sha512-MIBs+AAd6dJ2SklbbE8RUDRlIVhU8MaNLh1A9SUZDUHPiZkWLFde6UNwG41yQHZEToHgJMXqyVZ9UcS/ReOVTg==", "dev": true, "requires": { - "growly": "1.3.0", - "semver": "5.5.0", - "shellwords": "0.1.1", - "which": "1.3.0" + "growly": "^1.3.0", + "semver": "^5.4.1", + "shellwords": "^0.1.1", + "which": "^1.3.0" }, "dependencies": { "which": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", - "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, "requires": { - "isexe": "2.0.0" + "isexe": "^2.0.0" } } } @@ -8418,8 +8873,8 @@ "integrity": "sha1-IVH3Ikcrp55Qp2/BJbuMjy5Nwqc=", "dev": true, "requires": { - "chalk": "0.4.0", - "underscore": "1.6.0" + "chalk": "~0.4.0", + "underscore": "~1.6.0" }, "dependencies": { "ansi-styles": { @@ -8434,9 +8889,9 @@ "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", "dev": true, "requires": { - "ansi-styles": "1.0.0", - "has-color": "0.1.7", - "strip-ansi": "0.1.1" + "ansi-styles": "~1.0.0", + "has-color": "~0.1.0", + "strip-ansi": "~0.1.0" } }, "strip-ansi": { @@ -8459,7 +8914,7 @@ "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", "dev": true, "requires": { - "abbrev": "1.1.1" + "abbrev": "1" } }, "normalize-package-data": { @@ -8468,10 +8923,10 @@ "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", "dev": true, "requires": { - "hosted-git-info": "2.5.0", - "is-builtin-module": "1.0.0", - "semver": "5.5.0", - "validate-npm-package-license": "3.0.3" + "hosted-git-info": "^2.1.4", + "is-builtin-module": "^1.0.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, "normalize-path": { @@ -8480,7 +8935,7 @@ "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", "dev": true, "requires": { - "remove-trailing-separator": "1.1.0" + "remove-trailing-separator": "^1.0.1" } }, "npm-run-path": { @@ -8489,7 +8944,7 @@ "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", "dev": true, "requires": { - "path-key": "2.0.1" + "path-key": "^2.0.0" } }, "nth-check": { @@ -8498,7 +8953,7 @@ "integrity": "sha1-mSms32KPwsQQmN6rgqxYDPFJquQ=", "dev": true, "requires": { - "boolbase": "1.0.0" + "boolbase": "~1.0.0" } }, "number-is-nan": { @@ -8525,9 +8980,9 @@ "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", "dev": true, "requires": { - "copy-descriptor": "0.1.1", - "define-property": "0.2.5", - "kind-of": "3.2.2" + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" }, "dependencies": { "define-property": { @@ -8536,44 +8991,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, - "requires": { - "kind-of": "3.2.2" - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dev": true, - "requires": { - "kind-of": "3.2.2" - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - } + "is-descriptor": "^0.1.0" } } } @@ -8584,7 +9002,7 @@ "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", "dev": true, "requires": { - "isobject": "3.0.1" + "isobject": "^3.0.0" }, "dependencies": { "isobject": { @@ -8601,8 +9019,8 @@ "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", "dev": true, "requires": { - "for-own": "0.1.5", - "is-extendable": "0.1.1" + "for-own": "^0.1.4", + "is-extendable": "^0.1.1" } }, "object.pick": { @@ -8611,7 +9029,7 @@ "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", "dev": true, "requires": { - "isobject": "3.0.1" + "isobject": "^3.0.1" }, "dependencies": { "isobject": { @@ -8642,7 +9060,7 @@ "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, "requires": { - "wrappy": "1.0.2" + "wrappy": "1" } }, "onetime": { @@ -8651,23 +9069,17 @@ "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", "dev": true, "requires": { - "mimic-fn": "1.2.0" + "mimic-fn": "^1.0.0" } }, - "open": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/open/-/open-0.0.5.tgz", - "integrity": "sha1-QsPhjslUZra/DcQvOilFw/DK2Pw=", - "dev": true - }, "opn": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/opn/-/opn-4.0.2.tgz", "integrity": "sha1-erwi5kTf9jsKltWrfyeQwPAavJU=", "dev": true, "requires": { - "object-assign": "4.1.1", - "pinkie-promise": "2.0.1" + "object-assign": "^4.0.1", + "pinkie-promise": "^2.0.0" } }, "optionator": { @@ -8676,12 +9088,12 @@ "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", "dev": true, "requires": { - "deep-is": "0.1.3", - "fast-levenshtein": "2.0.6", - "levn": "0.3.0", - "prelude-ls": "1.1.2", - "type-check": "0.3.2", - "wordwrap": "1.0.0" + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.4", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "wordwrap": "~1.0.0" }, "dependencies": { "wordwrap": { @@ -8710,9 +9122,19 @@ "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", "dev": true, "requires": { - "execa": "0.7.0", - "lcid": "1.0.0", - "mem": "1.1.0" + "execa": "^0.7.0", + "lcid": "^1.0.0", + "mem": "^1.1.0" + } + }, + "os-name": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/os-name/-/os-name-2.0.1.tgz", + "integrity": "sha1-uaOGNhwXrjohc27wWZQFyajF3F4=", + "dev": true, + "requires": { + "macos-release": "^1.0.0", + "win-release": "^1.0.0" } }, "os-shim": { @@ -8733,9 +9155,9 @@ "integrity": "sha1-KYY7beEOpdrf/8rfoNcokHOH6aI=", "dev": true, "requires": { - "ev-emitter": "1.1.1", - "fizzy-ui-utils": "2.0.7", - "get-size": "2.0.2" + "ev-emitter": "^1.0.0", + "fizzy-ui-utils": "^2.0.0", + "get-size": "^2.0.2" } }, "p-finally": { @@ -8750,7 +9172,7 @@ "integrity": "sha512-Y/OtIaXtUPr4/YpMv1pCL5L5ed0rumAaAeBSj12F+bSlMdys7i8oQF/GUJmfpTS/QoaRrS/k6pma29haJpsMng==", "dev": true, "requires": { - "p-try": "1.0.0" + "p-try": "^1.0.0" } }, "p-locate": { @@ -8759,7 +9181,7 @@ "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "requires": { - "p-limit": "1.2.0" + "p-limit": "^1.1.0" } }, "p-try": { @@ -8768,16 +9190,56 @@ "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true }, - "package-json": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", - "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", - "dev": true, + "pac-proxy-agent": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-2.0.2.tgz", + "integrity": "sha512-cDNAN1Ehjbf5EHkNY5qnRhGPUCp6SnpyVof5fRzN800QV1Y2OkzbH9rmjZkbBRa8igof903yOnjIl6z0SlAhxA==", + "dev": true, + "requires": { + "agent-base": "^4.2.0", + "debug": "^3.1.0", + "get-uri": "^2.0.0", + "http-proxy-agent": "^2.1.0", + "https-proxy-agent": "^2.2.1", + "pac-resolver": "^3.0.0", + "raw-body": "^2.2.0", + "socks-proxy-agent": "^3.0.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "pac-resolver": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-3.0.0.tgz", + "integrity": "sha512-tcc38bsjuE3XZ5+4vP96OfhOugrX+JcnpUbhfuc4LuXBLQhoTthOstZeoQJBDnQUDYzYmdImKsbz0xSl1/9qeA==", + "dev": true, "requires": { - "got": "6.7.1", - "registry-auth-token": "3.3.2", - "registry-url": "3.1.0", - "semver": "5.5.0" + "co": "^4.6.0", + "degenerator": "^1.0.4", + "ip": "^1.1.5", + "netmask": "^1.0.6", + "thunkify": "^2.1.2" + } + }, + "package-json": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", + "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", + "dev": true, + "requires": { + "got": "^6.7.1", + "registry-auth-token": "^3.0.1", + "registry-url": "^3.0.3", + "semver": "^5.1.0" } }, "pako": { @@ -8792,36 +9254,36 @@ "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=", "dev": true, "requires": { - "cyclist": "0.2.2", - "inherits": "2.0.3", - "readable-stream": "2.3.4" + "cyclist": "~0.2.2", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" } }, "parse-asn1": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.0.tgz", - "integrity": "sha1-N8T5t+06tlx0gXtfJICTf7+XxxI=", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz", + "integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==", "dev": true, "requires": { - "asn1.js": "4.10.1", - "browserify-aes": "1.1.1", - "create-hash": "1.1.3", - "evp_bytestokey": "1.0.3", - "pbkdf2": "3.0.14" + "asn1.js": "^4.0.0", + "browserify-aes": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3" } }, "parse-entities": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-1.1.1.tgz", - "integrity": "sha1-gRLYhHExnyerrk1klksSL+ThuJA=", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-1.1.2.tgz", + "integrity": "sha512-5N9lmQ7tmxfXf+hO3X6KRG6w7uYO/HL9fHalSySTdyn63C3WNvTM/1R8tn1u1larNcEbo3Slcy2bsVDQqvEpUg==", "dev": true, "requires": { - "character-entities": "1.2.1", - "character-entities-legacy": "1.1.1", - "character-reference-invalid": "1.1.1", - "is-alphanumerical": "1.0.1", - "is-decimal": "1.0.1", - "is-hexadecimal": "1.0.1" + "character-entities": "^1.0.0", + "character-entities-legacy": "^1.0.0", + "character-reference-invalid": "^1.0.0", + "is-alphanumerical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-hexadecimal": "^1.0.0" } }, "parse-glob": { @@ -8830,10 +9292,10 @@ "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", "dev": true, "requires": { - "glob-base": "0.3.0", - "is-dotfile": "1.0.3", - "is-extglob": "1.0.0", - "is-glob": "2.0.1" + "glob-base": "^0.3.0", + "is-dotfile": "^1.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.0" } }, "parse-json": { @@ -8842,7 +9304,7 @@ "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", "dev": true, "requires": { - "error-ex": "1.3.1" + "error-ex": "^1.2.0" } }, "parse5": { @@ -8851,7 +9313,7 @@ "integrity": "sha512-rgO9Zg5LLLkfJF9E6CCmXlSE4UVceloys8JrFqCcHloC3usd/kJCyPDwH2SOlzix2j3xaP9sUX3e8+kvkuleAA==", "dev": true, "requires": { - "@types/node": "9.4.6" + "@types/node": "*" } }, "parseurl": { @@ -8865,6 +9327,16 @@ "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", "dev": true }, + "path": { + "version": "0.12.7", + "resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz", + "integrity": "sha1-1NwqUGxM4hl+tIHr/NWzbAFAsQ8=", + "dev": true, + "requires": { + "process": "^0.11.1", + "util": "^0.10.3" + } + }, "path-browserify": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", @@ -8918,9 +9390,9 @@ "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" }, "dependencies": { "pify": { @@ -8938,16 +9410,16 @@ "dev": true }, "pbkdf2": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.14.tgz", - "integrity": "sha512-gjsZW9O34fm0R7PaLHRJmLLVfSoesxztjPjE9o6R+qtVJij90ltg1joIovN9GKrRW3t1PzhDDG3UMEMFfZ+1wA==", + "version": "3.0.16", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.16.tgz", + "integrity": "sha512-y4CXP3thSxqf7c0qmOF+9UeOTrifiVTIM+u7NWlq+PRsHbr7r7dpCmvzrZxa96JJUNi0Y5w9VqG5ZNeCVMoDcA==", "dev": true, "requires": { - "create-hash": "1.1.3", - "create-hmac": "1.1.6", - "ripemd160": "2.0.1", - "safe-buffer": "5.1.1", - "sha.js": "2.4.10" + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" } }, "pend": { @@ -8980,31 +9452,50 @@ "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", "dev": true, "requires": { - "pinkie": "2.0.4" + "pinkie": "^2.0.0" } }, "pino": { - "version": "4.10.3", - "resolved": "https://registry.npmjs.org/pino/-/pino-4.10.3.tgz", - "integrity": "sha512-IKXK0dcFQYITgOJBEvy1RCI5gUz+VVERXMhIvk5Ie+k9zzrbwXDs38M3H6JhoCHR58exyNpNcEKBrW4JC2P0pg==", - "dev": true, - "requires": { - "chalk": "2.3.2", - "fast-json-parse": "1.0.3", - "fast-safe-stringify": "1.2.3", - "flatstr": "1.0.5", - "pump": "2.0.1", - "quick-format-unescaped": "1.1.2", - "split2": "2.2.0" + "version": "4.16.1", + "resolved": "https://registry.npmjs.org/pino/-/pino-4.16.1.tgz", + "integrity": "sha512-ST/IC5RMyqrOZL+Hq6LDwz5h4fGKABXzx2/5Ze7rz5TjuPvE8uI72dzj409xkq9JjyWsKoOOApgXn8kEjJ73yg==", + "dev": true, + "requires": { + "chalk": "^2.3.2", + "fast-json-parse": "^1.0.3", + "fast-safe-stringify": "^1.2.3", + "flatstr": "^1.0.5", + "pino-std-serializers": "^2.0.0", + "pump": "^3.0.0", + "quick-format-unescaped": "^1.1.2", + "split2": "^2.2.0" + }, + "dependencies": { + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + } } }, + "pino-std-serializers": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-2.1.0.tgz", + "integrity": "sha512-NqWvrQD/GpY78ybiNBzi/dg8ylERhDo6nB33j5sfCKpUmWLc3lYzeoBjyRoCMvEpDpL9lmH6ufRd0jw6rcd1pQ==", + "dev": true + }, "pkg-dir": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", "dev": true, "requires": { - "find-up": "2.1.0" + "find-up": "^2.1.0" } }, "pluralize": { @@ -9045,36 +9536,21 @@ "dev": true }, "postcss": { - "version": "6.0.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.14.tgz", - "integrity": "sha512-NJ1z0f+1offCgadPhz+DvGm5Mkci+mmV5BqD13S992o0Xk9eElxUfPPF+t2ksH5R/17gz4xVK8KWocUQ5o3Rog==", + "version": "6.0.19", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.19.tgz", + "integrity": "sha512-f13HRz0HtVwVaEuW6J6cOUCBLFtymhgyLPV7t4QEk2UD3twRI9IluDcQNdzQdBpiixkXj2OmzejhhTbSbDxNTg==", "dev": true, "requires": { - "chalk": "2.3.2", - "source-map": "0.6.1", - "supports-color": "4.5.0" + "chalk": "^2.3.1", + "source-map": "^0.6.1", + "supports-color": "^5.2.0" }, "dependencies": { - "has-flag": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", - "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", - "dev": true - }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true - }, - "supports-color": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", - "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", - "dev": true, - "requires": { - "has-flag": "2.0.0" - } } } }, @@ -9103,17 +9579,17 @@ "dev": true }, "probe-image-size": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/probe-image-size/-/probe-image-size-3.2.0.tgz", - "integrity": "sha512-LE7mIvfDoEeOgIH9TbMNv5txJh+K0/UVandiXHk+Hm4VKqNV5qxoeDzdW3QiMIlqXsIEm3K+SzeAedT6fZKjtQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/probe-image-size/-/probe-image-size-4.0.0.tgz", + "integrity": "sha512-nm7RvWUxps+2+jZKNLkd04mNapXNariS6G5WIEVzvAqjx7EUuKcY1Dp3e6oUK7GLwzJ+3gbSbPLFAASHFQrPcQ==", "dev": true, "requires": { - "any-promise": "1.3.0", - "deepmerge": "1.5.2", - "got": "6.7.1", - "inherits": "2.0.3", - "next-tick": "1.0.0", - "stream-parser": "0.3.1" + "any-promise": "^1.3.0", + "deepmerge": "^2.0.1", + "inherits": "^2.0.3", + "next-tick": "^1.0.0", + "request": "^2.83.0", + "stream-parser": "~0.3.1" } }, "process": { @@ -9140,7 +9616,7 @@ "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", "dev": true, "requires": { - "asap": "2.0.6" + "asap": "~2.0.3" } }, "promise-inflight": { @@ -9154,10 +9630,47 @@ "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.3.tgz", "integrity": "sha512-jQTChiCJteusULxjBp8+jftSQE5Obdl3k4cnmLA6WXtK6XFuWRnvVL7aCiBqaLPM8c4ph0S4tKna8XvmIwEnXQ==", "requires": { - "forwarded": "0.1.2", + "forwarded": "~0.1.2", "ipaddr.js": "1.6.0" } }, + "proxy-agent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-3.0.0.tgz", + "integrity": "sha512-g6n6vnk8fRf705ShN+FEXFG/SDJaW++lSs0d9KaJh4uBWW/wi7en4Cpo5VYQW3SZzAE121lhB/KLQrbURoubZw==", + "dev": true, + "requires": { + "agent-base": "^4.2.0", + "debug": "^3.1.0", + "http-proxy-agent": "^2.1.0", + "https-proxy-agent": "^2.2.1", + "lru-cache": "^4.1.2", + "pac-proxy-agent": "^2.0.1", + "proxy-from-env": "^1.0.0", + "socks-proxy-agent": "^3.0.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "lru-cache": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz", + "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + } + } + }, "proxy-from-env": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.0.0.tgz", @@ -9177,16 +9690,16 @@ "dev": true }, "public-encrypt": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.0.tgz", - "integrity": "sha1-OfaZ86RlYN1eusvKaTyvfGXBjMY=", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.2.tgz", + "integrity": "sha512-4kJ5Esocg8X3h8YgJsKAuoesBgB7mqH3eowiDzMUPKiRDDE7E/BqqZD1hnTByIaAFiwAw246YEltSq7tdrOH0Q==", "dev": true, "requires": { - "bn.js": "4.11.8", - "browserify-rsa": "4.0.1", - "create-hash": "1.1.3", - "parse-asn1": "5.1.0", - "randombytes": "2.0.6" + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1" } }, "pug": { @@ -9195,14 +9708,14 @@ "integrity": "sha512-SL7xovj6E2Loq9N0UgV6ynjMLW4urTFY/L/Fprhvz13Xc5vjzkjZjI1QHKq31200+6PSD8PyU6MqrtCTJj6/XA==", "dev": true, "requires": { - "pug-code-gen": "2.0.0", - "pug-filters": "2.1.5", - "pug-lexer": "3.1.0", - "pug-linker": "3.0.3", - "pug-load": "2.0.9", - "pug-parser": "4.0.0", - "pug-runtime": "2.0.3", - "pug-strip-comments": "1.0.2" + "pug-code-gen": "^2.0.0", + "pug-filters": "^2.1.5", + "pug-lexer": "^3.1.0", + "pug-linker": "^3.0.3", + "pug-load": "^2.0.9", + "pug-parser": "^4.0.0", + "pug-runtime": "^2.0.3", + "pug-strip-comments": "^1.0.2" } }, "pug-attrs": { @@ -9211,9 +9724,9 @@ "integrity": "sha1-i+KyIlVo/6ddG4Zpgr/59BEa/8s=", "dev": true, "requires": { - "constantinople": "3.1.2", - "js-stringify": "1.0.2", - "pug-runtime": "2.0.3" + "constantinople": "^3.0.1", + "js-stringify": "^1.0.1", + "pug-runtime": "^2.0.3" } }, "pug-code-gen": { @@ -9222,14 +9735,14 @@ "integrity": "sha512-E4oiJT+Jn5tyEIloj8dIJQognbiNNp0i0cAJmYtQTFS0soJ917nlIuFtqVss3IXMEyQKUew3F4gIkBpn18KbVg==", "dev": true, "requires": { - "constantinople": "3.1.2", - "doctypes": "1.1.0", - "js-stringify": "1.0.2", - "pug-attrs": "2.0.2", - "pug-error": "1.3.2", - "pug-runtime": "2.0.3", - "void-elements": "2.0.1", - "with": "5.1.1" + "constantinople": "^3.0.1", + "doctypes": "^1.1.0", + "js-stringify": "^1.0.1", + "pug-attrs": "^2.0.2", + "pug-error": "^1.3.2", + "pug-runtime": "^2.0.3", + "void-elements": "^2.0.1", + "with": "^5.0.0" } }, "pug-error": { @@ -9244,13 +9757,13 @@ "integrity": "sha512-xkw71KtrC4sxleKiq+cUlQzsiLn8pM5+vCgkChW2E6oNOzaqTSIBKIQ5cl4oheuDzvJYCTSYzRaVinMUrV4YLQ==", "dev": true, "requires": { - "clean-css": "3.4.28", - "constantinople": "3.1.2", + "clean-css": "^3.3.0", + "constantinople": "^3.0.1", "jstransformer": "1.0.0", - "pug-error": "1.3.2", - "pug-walk": "1.1.5", - "resolve": "1.5.0", - "uglify-js": "2.8.29" + "pug-error": "^1.3.2", + "pug-walk": "^1.1.5", + "resolve": "^1.1.6", + "uglify-js": "^2.6.1" } }, "pug-lexer": { @@ -9259,9 +9772,9 @@ "integrity": "sha1-/QhzdtSmdbT1n4/vQiiDQ06VgaI=", "dev": true, "requires": { - "character-parser": "2.2.0", - "is-expression": "3.0.0", - "pug-error": "1.3.2" + "character-parser": "^2.1.1", + "is-expression": "^3.0.0", + "pug-error": "^1.3.2" } }, "pug-linker": { @@ -9270,8 +9783,8 @@ "integrity": "sha512-DCKczglCXOzJ1lr4xUj/lVHYvS+lGmR2+KTCjZjtIpdwaN7lNOoX2SW6KFX5X4ElvW+6ThwB+acSUg08UJFN5A==", "dev": true, "requires": { - "pug-error": "1.3.2", - "pug-walk": "1.1.5" + "pug-error": "^1.3.2", + "pug-walk": "^1.1.5" } }, "pug-load": { @@ -9280,8 +9793,8 @@ "integrity": "sha512-BDdZOCru4mg+1MiZwRQZh25+NTRo/R6/qArrdWIf308rHtWA5N9kpoUskRe4H6FslaQujC+DigH9LqlBA4gf6Q==", "dev": true, "requires": { - "object-assign": "4.1.1", - "pug-walk": "1.1.5" + "object-assign": "^4.1.0", + "pug-walk": "^1.1.5" } }, "pug-parser": { @@ -9290,7 +9803,7 @@ "integrity": "sha512-ocEUFPdLG9awwFj0sqi1uiZLNvfoodCMULZzkRqILryIWc/UUlDlxqrKhKjAIIGPX/1SNsvxy63+ayEGocGhQg==", "dev": true, "requires": { - "pug-error": "1.3.2", + "pug-error": "^1.3.2", "token-stream": "0.0.1" } }, @@ -9306,7 +9819,7 @@ "integrity": "sha1-0xOvoBvMN0mA4TmeI+vy65vchRM=", "dev": true, "requires": { - "pug-error": "1.3.2" + "pug-error": "^1.3.2" } }, "pug-walk": { @@ -9321,8 +9834,8 @@ "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", "dev": true, "requires": { - "end-of-stream": "1.4.1", - "once": "1.4.0" + "end-of-stream": "^1.1.0", + "once": "^1.3.1" } }, "pumpify": { @@ -9331,9 +9844,9 @@ "integrity": "sha512-2kmNR9ry+Pf45opRVirpNuIFotsxUGLaYqxIwuR77AYrYRMuFCz9eryHBS52L360O+NcR383CL4QYlMKPq4zYA==", "dev": true, "requires": { - "duplexify": "3.5.4", - "inherits": "2.0.3", - "pump": "2.0.1" + "duplexify": "^3.5.3", + "inherits": "^2.0.3", + "pump": "^2.0.0" } }, "punycode": { @@ -9348,14 +9861,14 @@ "integrity": "sha1-rb8l5J9e8DRDwQq44JqVTKDHv+4=", "dev": true, "requires": { - "debug": "2.6.9", - "extract-zip": "1.6.6", - "https-proxy-agent": "2.1.1", - "mime": "1.4.1", - "progress": "2.0.0", - "proxy-from-env": "1.0.0", - "rimraf": "2.6.2", - "ws": "3.3.3" + "debug": "^2.6.8", + "extract-zip": "^1.6.5", + "https-proxy-agent": "^2.1.0", + "mime": "^1.3.4", + "progress": "^2.0.0", + "proxy-from-env": "^1.0.0", + "rimraf": "^2.6.1", + "ws": "^3.0.0" }, "dependencies": { "rimraf": { @@ -9364,7 +9877,7 @@ "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", "dev": true, "requires": { - "glob": "7.0.6" + "glob": "^7.0.5" } } } @@ -9391,7 +9904,7 @@ "integrity": "sha1-DKWB3jF0vs7yWsPC6JVjQjgdtpg=", "dev": true, "requires": { - "fast-safe-stringify": "1.2.3" + "fast-safe-stringify": "^1.0.8" } }, "randomatic": { @@ -9400,8 +9913,8 @@ "integrity": "sha512-D5JUjPyJbaJDkuAazpVnSfVkLlpeO3wDlPROTMLGKG1zMFNFRgrciKo1ltz/AzNTkqE0HzDx655QOL51N06how==", "dev": true, "requires": { - "is-number": "3.0.0", - "kind-of": "4.0.0" + "is-number": "^3.0.0", + "kind-of": "^4.0.0" }, "dependencies": { "is-number": { @@ -9410,7 +9923,7 @@ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -9419,7 +9932,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -9430,7 +9943,7 @@ "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -9441,7 +9954,7 @@ "integrity": "sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A==", "dev": true, "requires": { - "safe-buffer": "5.1.1" + "safe-buffer": "^5.1.0" } }, "randomfill": { @@ -9450,8 +9963,8 @@ "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", "dev": true, "requires": { - "randombytes": "2.0.6", - "safe-buffer": "5.1.1" + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" } }, "range-parser": { @@ -9471,15 +9984,15 @@ } }, "rc": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.5.tgz", - "integrity": "sha1-J1zWh/bjs2zHVrqibf7oCnkDAf0=", + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", "dev": true, "requires": { - "deep-extend": "0.4.2", - "ini": "1.3.5", - "minimist": "1.2.0", - "strip-json-comments": "2.0.1" + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" }, "dependencies": { "minimist": { @@ -9496,9 +10009,9 @@ "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", "dev": true, "requires": { - "load-json-file": "1.1.0", - "normalize-package-data": "2.4.0", - "path-type": "1.1.0" + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" } }, "read-pkg-up": { @@ -9507,8 +10020,8 @@ "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", "dev": true, "requires": { - "find-up": "1.1.2", - "read-pkg": "1.1.0" + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" }, "dependencies": { "find-up": { @@ -9517,8 +10030,8 @@ "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", "dev": true, "requires": { - "path-exists": "2.1.0", - "pinkie-promise": "2.0.1" + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" } }, "path-exists": { @@ -9527,7 +10040,7 @@ "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", "dev": true, "requires": { - "pinkie-promise": "2.0.1" + "pinkie-promise": "^2.0.0" } } } @@ -9538,13 +10051,13 @@ "integrity": "sha512-vuYxeWYM+fde14+rajzqgeohAI7YoJcHE7kXDAc4Nk0EbuKnJfqtY9YtRkLo/tqkuF7MsBQRhPnPeyjYITp3ZQ==", "dev": true, "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "2.0.0", - "safe-buffer": "5.1.1", - "string_decoder": "1.0.3", - "util-deprecate": "1.0.2" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.0.3", + "util-deprecate": "~1.0.1" } }, "readdirp": { @@ -9553,10 +10066,10 @@ "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "minimatch": "3.0.4", - "readable-stream": "2.3.4", - "set-immediate-shim": "1.0.1" + "graceful-fs": "^4.1.2", + "minimatch": "^3.0.2", + "readable-stream": "^2.0.2", + "set-immediate-shim": "^1.0.1" } }, "readline2": { @@ -9565,8 +10078,8 @@ "integrity": "sha1-QQWWCP/BVHV7cV2ZidGZ/783LjU=", "dev": true, "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", "mute-stream": "0.0.5" }, "dependencies": { @@ -9576,7 +10089,7 @@ "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "mute-stream": { @@ -9593,7 +10106,16 @@ "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", "dev": true, "requires": { - "resolve": "1.5.0" + "resolve": "^1.1.6" + } + }, + "recursive-readdir": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz", + "integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==", + "dev": true, + "requires": { + "minimatch": "3.0.4" } }, "redent": { @@ -9602,8 +10124,8 @@ "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", "dev": true, "requires": { - "indent-string": "2.1.0", - "strip-indent": "1.0.1" + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" } }, "regenerate": { @@ -9618,7 +10140,7 @@ "integrity": "sha512-Yjy6t7jFQczDhYE+WVm7pg6gWYE258q4sUkk9qDErwXJIqx7jU9jGrMFHutJK/SRfcg7MEkXjGaYiVlOZyev/A==", "dev": true, "requires": { - "regenerate": "1.3.3" + "regenerate": "^1.3.3" } }, "regenerator-runtime": { @@ -9633,7 +10155,7 @@ "integrity": "sha512-y2uxO/6u+tVmtEDIKo+tLCtI0GcbQr0OreosKgCd7HP4VypGjtTrw79DezuwT+W5QX0YWuvpeBOgumrepwM1kA==", "dev": true, "requires": { - "private": "0.1.8" + "private": "^0.1.6" } }, "regex-cache": { @@ -9642,7 +10164,7 @@ "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", "dev": true, "requires": { - "is-equal-shallow": "0.1.3" + "is-equal-shallow": "^0.1.3" } }, "regex-not": { @@ -9651,22 +10173,28 @@ "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", "dev": true, "requires": { - "extend-shallow": "3.0.2", - "safe-regex": "1.1.0" + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" } }, + "regexpp": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-1.1.0.tgz", + "integrity": "sha512-LOPw8FpgdQF9etWMaAfG/WRthIdXJGYp4mJ2Jgn/2lpkbod9jPn0t9UqN7AxBOKNfzRbYyVfgc7Vk4t/MpnXgw==", + "dev": true + }, "regexpu-core": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.1.3.tgz", "integrity": "sha512-mB+njEzO7oezA57IbQxxd6fVPOeWKDmnGvJ485CwmfNchjHe5jWwqKepapmzUEj41yxIAqOg+C4LbXuJlkiO8A==", "dev": true, "requires": { - "regenerate": "1.3.3", - "regenerate-unicode-properties": "5.1.3", - "regjsgen": "0.3.0", - "regjsparser": "0.2.1", - "unicode-match-property-ecmascript": "1.0.3", - "unicode-match-property-value-ecmascript": "1.0.1" + "regenerate": "^1.3.3", + "regenerate-unicode-properties": "^5.1.1", + "regjsgen": "^0.3.0", + "regjsparser": "^0.2.1", + "unicode-match-property-ecmascript": "^1.0.3", + "unicode-match-property-value-ecmascript": "^1.0.1" } }, "registry-auth-token": { @@ -9675,8 +10203,8 @@ "integrity": "sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==", "dev": true, "requires": { - "rc": "1.2.5", - "safe-buffer": "5.1.1" + "rc": "^1.1.6", + "safe-buffer": "^5.0.1" } }, "registry-url": { @@ -9685,7 +10213,7 @@ "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", "dev": true, "requires": { - "rc": "1.2.5" + "rc": "^1.0.1" } }, "regjsgen": { @@ -9700,7 +10228,7 @@ "integrity": "sha1-w3h1U/rwTndcMCEC7zRtmVAA7Bw=", "dev": true, "requires": { - "jsesc": "0.5.0" + "jsesc": "~0.5.0" }, "dependencies": { "jsesc": { @@ -9717,8 +10245,8 @@ "integrity": "sha1-fI1KovCVcEzQIOMugJm8rhA/C9Q=", "dev": true, "requires": { - "chalk": "1.1.3", - "commander": "2.8.1" + "chalk": "^1.0.0", + "commander": "^2.6.0" }, "dependencies": { "ansi-styles": { @@ -9733,11 +10261,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "supports-color": { @@ -9754,9 +10282,9 @@ "integrity": "sha1-y0Y709vLS5l5STXu4c9x16jjBow=", "dev": true, "requires": { - "remark-parse": "1.1.0", - "remark-stringify": "1.1.0", - "unified": "4.2.1" + "remark-parse": "^1.1.0", + "remark-stringify": "^1.1.0", + "unified": "^4.1.1" } }, "remark-parse": { @@ -9765,15 +10293,15 @@ "integrity": "sha1-w8oQ+ajaBGFcKPCapOMEUQUm7CE=", "dev": true, "requires": { - "collapse-white-space": "1.0.3", - "extend": "3.0.1", - "parse-entities": "1.1.1", - "repeat-string": "1.6.1", + "collapse-white-space": "^1.0.0", + "extend": "^3.0.0", + "parse-entities": "^1.0.2", + "repeat-string": "^1.5.4", "trim": "0.0.1", - "trim-trailing-lines": "1.1.0", - "unherit": "1.1.0", - "unist-util-remove-position": "1.1.1", - "vfile-location": "2.0.2" + "trim-trailing-lines": "^1.0.0", + "unherit": "^1.0.4", + "unist-util-remove-position": "^1.0.0", + "vfile-location": "^2.0.0" } }, "remark-stringify": { @@ -9782,14 +10310,14 @@ "integrity": "sha1-pxBeJbnuK/mkm3XSxCPxGwauIJI=", "dev": true, "requires": { - "ccount": "1.0.2", - "extend": "3.0.1", - "longest-streak": "1.0.0", - "markdown-table": "0.4.0", - "parse-entities": "1.1.1", - "repeat-string": "1.6.1", - "stringify-entities": "1.3.1", - "unherit": "1.1.0" + "ccount": "^1.0.0", + "extend": "^3.0.0", + "longest-streak": "^1.0.0", + "markdown-table": "^0.4.0", + "parse-entities": "^1.0.2", + "repeat-string": "^1.5.4", + "stringify-entities": "^1.0.1", + "unherit": "^1.0.4" } }, "remove-trailing-separator": { @@ -9816,37 +10344,37 @@ "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", "dev": true, "requires": { - "is-finite": "1.0.2" + "is-finite": "^1.0.0" } }, "request": { - "version": "2.83.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.83.0.tgz", - "integrity": "sha512-lR3gD69osqm6EYLk9wB/G1W/laGWjzH90t1vEa2xuxHD5KUrSzp9pUSfTm+YC5Nxt2T8nMPEvKlhbQayU7bgFw==", - "dev": true, - "requires": { - "aws-sign2": "0.7.0", - "aws4": "1.6.0", - "caseless": "0.12.0", - "combined-stream": "1.0.6", - "extend": "3.0.1", - "forever-agent": "0.6.1", - "form-data": "2.3.2", - "har-validator": "5.0.3", - "hawk": "6.0.2", - "http-signature": "1.2.0", - "is-typedarray": "1.0.0", - "isstream": "0.1.2", - "json-stringify-safe": "5.0.1", - "mime-types": "2.1.18", - "oauth-sign": "0.8.2", - "performance-now": "2.1.0", - "qs": "6.5.1", - "safe-buffer": "5.1.1", - "stringstream": "0.0.5", - "tough-cookie": "2.3.4", - "tunnel-agent": "0.6.0", - "uuid": "3.2.1" + "version": "2.85.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.85.0.tgz", + "integrity": "sha512-8H7Ehijd4js+s6wuVPLjwORxD4zeuyjYugprdOXlPSqaApmL/QOy+EB/beICHVCHkGMKNh5rvihb5ov+IDw4mg==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.6.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.5", + "extend": "~3.0.1", + "forever-agent": "~0.6.1", + "form-data": "~2.3.1", + "har-validator": "~5.0.3", + "hawk": "~6.0.2", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.17", + "oauth-sign": "~0.8.2", + "performance-now": "^2.1.0", + "qs": "~6.5.1", + "safe-buffer": "^5.1.1", + "stringstream": "~0.0.5", + "tough-cookie": "~2.3.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.1.0" } }, "request-promise-core": { @@ -9855,7 +10383,7 @@ "integrity": "sha1-Pu4AssWqgyOc+wTFcA2jb4HNCLY=", "dev": true, "requires": { - "lodash": "4.17.5" + "lodash": "^4.13.1" } }, "request-promise-native": { @@ -9865,8 +10393,8 @@ "dev": true, "requires": { "request-promise-core": "1.1.1", - "stealthy-require": "1.1.1", - "tough-cookie": "2.3.4" + "stealthy-require": "^1.1.0", + "tough-cookie": ">=2.3.3" } }, "require-directory": { @@ -9887,8 +10415,8 @@ "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", "dev": true, "requires": { - "caller-path": "0.1.0", - "resolve-from": "1.0.1" + "caller-path": "^0.1.0", + "resolve-from": "^1.0.0" } }, "resolve": { @@ -9897,7 +10425,7 @@ "integrity": "sha512-hgoSGrc3pjzAPHNBg+KnFcK2HwlHTs/YrAGUr6qgTVUZmXv1UEXXl0bZNBKMA9fud6lRYFdPGz0xXxycPzmmiw==", "dev": true, "requires": { - "path-parse": "1.0.5" + "path-parse": "^1.0.5" } }, "resolve-from": { @@ -9918,8 +10446,8 @@ "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", "dev": true, "requires": { - "onetime": "2.0.1", - "signal-exit": "3.0.2" + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" } }, "ret": { @@ -9934,7 +10462,7 @@ "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", "dev": true, "requires": { - "align-text": "0.1.4" + "align-text": "^0.1.1" } }, "rimraf": { @@ -9944,13 +10472,13 @@ "dev": true }, "ripemd160": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.1.tgz", - "integrity": "sha1-D0WEKVxTo2KK9+bXmsohzlfRxuc=", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", "dev": true, "requires": { - "hash-base": "2.0.2", - "inherits": "2.0.3" + "hash-base": "^3.0.0", + "inherits": "^2.0.1" } }, "run-async": { @@ -9959,7 +10487,7 @@ "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", "dev": true, "requires": { - "is-promise": "2.1.0" + "is-promise": "^2.1.0" } }, "run-queue": { @@ -9968,7 +10496,7 @@ "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", "dev": true, "requires": { - "aproba": "1.2.0" + "aproba": "^1.1.1" } }, "rx-lite": { @@ -9983,7 +10511,7 @@ "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", "dev": true, "requires": { - "rx-lite": "4.0.8" + "rx-lite": "*" } }, "safe-buffer": { @@ -9991,10 +10519,16 @@ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" }, + "safe-json-parse": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/safe-json-parse/-/safe-json-parse-1.0.1.tgz", + "integrity": "sha1-PnZyPjjf3aE8mx0poeB//uSzC1c=", + "dev": true + }, "safe-json-stringify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-json-stringify/-/safe-json-stringify-1.1.0.tgz", - "integrity": "sha512-EzBtUaFH9bHYPc69wqjp0efJI/DPNHdFbGE3uIMn4sVbO0zx8vZ8cG4WKxQfOpUOKsQyGBiT2mTqnCw+6nLswA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz", + "integrity": "sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg==", "dev": true, "optional": true }, @@ -10004,7 +10538,7 @@ "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", "dev": true, "requires": { - "ret": "0.1.15" + "ret": "~0.1.10" } }, "samsam": { @@ -10025,10 +10559,16 @@ "integrity": "sha512-yYrjb9TX2k/J1Y5UNy3KYdZq10xhYcF8nMpAW6o3hy6Q8WSIEf9lJHG/ePnOBfziPM3fvQwfOwa13U/Fh8qTfA==", "dev": true, "requires": { - "ajv": "6.2.0", - "ajv-keywords": "3.1.0" + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0" } }, + "secure-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/secure-keys/-/secure-keys-1.0.0.tgz", + "integrity": "sha1-8MgtmKOxOah3aogIBQuCRDEIf8o=", + "dev": true + }, "semver": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", @@ -10041,7 +10581,7 @@ "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", "dev": true, "requires": { - "semver": "5.5.0" + "semver": "^5.0.3" } }, "send": { @@ -10050,18 +10590,18 @@ "integrity": "sha512-ElCLJdJIKPk6ux/Hocwhk7NFHpI3pVm/IZOYWqUmoxcgeyM+MpxHHKhb8QmlJDX1pU6WrgaHBkVNm73Sv7uc2A==", "requires": { "debug": "2.6.9", - "depd": "1.1.2", - "destroy": "1.0.4", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "etag": "1.8.1", + "depd": "~1.1.1", + "destroy": "~1.0.4", + "encodeurl": "~1.0.1", + "escape-html": "~1.0.3", + "etag": "~1.8.1", "fresh": "0.5.2", - "http-errors": "1.6.2", + "http-errors": "~1.6.2", "mime": "1.4.1", "ms": "2.0.0", - "on-finished": "2.3.0", - "range-parser": "1.2.0", - "statuses": "1.3.1" + "on-finished": "~2.3.0", + "range-parser": "~1.2.0", + "statuses": "~1.3.1" } }, "serialize-javascript": { @@ -10076,13 +10616,13 @@ "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", "dev": true, "requires": { - "accepts": "1.3.5", + "accepts": "~1.3.4", "batch": "0.6.1", "debug": "2.6.9", - "escape-html": "1.0.3", - "http-errors": "1.6.2", - "mime-types": "2.1.18", - "parseurl": "1.3.2" + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" } }, "serve-static": { @@ -10090,9 +10630,9 @@ "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.1.tgz", "integrity": "sha512-hSMUZrsPa/I09VYFJwa627JJkNs0NrfL1Uzuup+GqHfToR2KcsXFymXSV90hoyw3M+msjFuQly+YzIH/q0MGlQ==", "requires": { - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "parseurl": "1.3.2", + "encodeurl": "~1.0.1", + "escape-html": "~1.0.3", + "parseurl": "~1.3.2", "send": "0.16.1" } }, @@ -10102,15 +10642,6 @@ "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", "dev": true }, - "set-getter": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/set-getter/-/set-getter-0.1.0.tgz", - "integrity": "sha1-12nBgsnVpR9AkUXy+6guXoboA3Y=", - "dev": true, - "requires": { - "to-object-path": "0.3.0" - } - }, "set-immediate-shim": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", @@ -10123,10 +10654,10 @@ "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-extendable": "0.1.1", - "is-plain-object": "2.0.4", - "split-string": "3.1.0" + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" }, "dependencies": { "extend-shallow": { @@ -10135,7 +10666,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -10152,13 +10683,42 @@ "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" }, "sha.js": { - "version": "2.4.10", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.10.tgz", - "integrity": "sha512-vnwmrFDlOExK4Nm16J2KMWHLrp14lBrjxMxBJpu++EnsuBmpiYaM/MEs46Vxxm/4FvdP5yTwuCTO9it5FSjrqA==", + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", "dev": true, "requires": { - "inherits": "2.0.3", - "safe-buffer": "5.1.1" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "shallow-clone": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-0.1.2.tgz", + "integrity": "sha1-WQnodLp3EG1zrEFM/sH/yofZcGA=", + "dev": true, + "requires": { + "is-extendable": "^0.1.1", + "kind-of": "^2.0.1", + "lazy-cache": "^0.2.3", + "mixin-object": "^2.0.1" + }, + "dependencies": { + "kind-of": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-2.0.1.tgz", + "integrity": "sha1-AY7HpM5+OobLkUG+UZ0kyPqpgbU=", + "dev": true, + "requires": { + "is-buffer": "^1.0.2" + } + }, + "lazy-cache": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-0.2.7.tgz", + "integrity": "sha1-f+3fLctu23fRHvHRF6tf/fCrG2U=", + "dev": true + } } }, "shebang-command": { @@ -10167,7 +10727,7 @@ "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", "dev": true, "requires": { - "shebang-regex": "1.0.0" + "shebang-regex": "^1.0.0" } }, "shebang-regex": { @@ -10182,10 +10742,10 @@ "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=", "dev": true, "requires": { - "array-filter": "0.0.1", - "array-map": "0.0.0", - "array-reduce": "0.0.0", - "jsonify": "0.0.0" + "array-filter": "~0.0.0", + "array-map": "~0.0.0", + "array-reduce": "~0.0.0", + "jsonify": "~0.0.0" } }, "shelljs": { @@ -10194,9 +10754,9 @@ "integrity": "sha512-YA/iYtZpzFe5HyWVGrb02FjPxc4EMCfpoU/Phg9fQoyMC72u9598OUBrsU8IrtwAKG0tO8IYaqbaLIw+k3IRGA==", "dev": true, "requires": { - "glob": "7.0.6", - "interpret": "1.1.0", - "rechoir": "0.6.2" + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" } }, "shellwords": { @@ -10206,93 +10766,32 @@ "dev": true }, "sign-addon": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/sign-addon/-/sign-addon-0.2.2.tgz", - "integrity": "sha512-f6EzJaysErGx7a4jmccspkpM37j6bfTS+6aeo/i0F3GmS9ruv1m3CgERn3VMBQgz69kNbzE63toVFmhcbvta9g==", + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/sign-addon/-/sign-addon-0.3.1.tgz", + "integrity": "sha512-feaoG7+8IXr9SymOEd8VTZCSlVZArWcBDZ33IIdfXlU5NWWzXdCxCjPDqAkLQplFa7RRZr1S4lSmgMPn80Ze1A==", "dev": true, "requires": { "babel-polyfill": "6.16.0", "deepcopy": "0.6.3", "es6-error": "4.0.0", "es6-promisify": "5.0.0", - "jsonwebtoken": "7.1.9", + "jsonwebtoken": "8.2.1", "mz": "2.5.0", - "request": "2.79.0", + "request": "2.87.0", "source-map-support": "0.4.6", "stream-to-promise": "2.2.0", "when": "3.7.7" }, "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "assert-plus": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", - "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=", - "dev": true - }, - "aws-sign2": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", - "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=", - "dev": true - }, "babel-polyfill": { "version": "6.16.0", "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.16.0.tgz", "integrity": "sha1-LUUCHfh+JqN0ttTRqcZZZNF/JCI=", "dev": true, "requires": { - "babel-runtime": "6.26.0", - "core-js": "2.5.3", - "regenerator-runtime": "0.9.6" - } - }, - "boom": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", - "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", - "dev": true, - "requires": { - "hoek": "2.16.3" - } - }, - "caseless": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz", - "integrity": "sha1-cVuW6phBWTzDMGeSP17GDr2k99c=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" - } - }, - "commander": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.14.1.tgz", - "integrity": "sha512-+YR16o3rK53SmWHU3rEM3tPAh2rwb1yPcQX5irVn7mb0gXbwuCCrnkbV5+PBfETdfg1vui07nM6PCG1zndcjQw==", - "dev": true - }, - "cryptiles": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", - "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", - "dev": true, - "requires": { - "boom": "2.10.1" + "babel-runtime": "^6.9.1", + "core-js": "^2.4.0", + "regenerator-runtime": "^0.9.5" } }, "es6-error": { @@ -10301,75 +10800,17 @@ "integrity": "sha1-8JTHBB9mJZm7EnINoFnWucf/D0A=", "dev": true }, - "form-data": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz", - "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=", - "dev": true, - "requires": { - "asynckit": "0.4.0", - "combined-stream": "1.0.6", - "mime-types": "2.1.18" - } - }, - "har-validator": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz", - "integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=", - "dev": true, - "requires": { - "chalk": "1.1.3", - "commander": "2.14.1", - "is-my-json-valid": "2.17.2", - "pinkie-promise": "2.0.1" - } - }, - "hawk": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", - "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", - "dev": true, - "requires": { - "boom": "2.10.1", - "cryptiles": "2.0.5", - "hoek": "2.16.3", - "sntp": "1.0.9" - } - }, - "hoek": { - "version": "2.16.3", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=", - "dev": true - }, - "http-signature": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", - "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", - "dev": true, - "requires": { - "assert-plus": "0.2.0", - "jsprim": "1.4.1", - "sshpk": "1.13.1" - } - }, "mz": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/mz/-/mz-2.5.0.tgz", "integrity": "sha1-KFkCXfA9RrV7sxcXSxlkd85kzsE=", "dev": true, "requires": { - "any-promise": "1.3.0", - "object-assign": "4.1.1", - "thenify-all": "1.6.0" + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" } }, - "qs": { - "version": "6.3.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.3.2.tgz", - "integrity": "sha1-51vV9uJoEioqDgvaYwslUMFmUCw=", - "dev": true - }, "regenerator-runtime": { "version": "0.9.6", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.9.6.tgz", @@ -10377,40 +10818,31 @@ "dev": true }, "request": { - "version": "2.79.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.79.0.tgz", - "integrity": "sha1-Tf5b9r6LjNw3/Pk+BLZVd3InEN4=", - "dev": true, - "requires": { - "aws-sign2": "0.6.0", - "aws4": "1.6.0", - "caseless": "0.11.0", - "combined-stream": "1.0.6", - "extend": "3.0.1", - "forever-agent": "0.6.1", - "form-data": "2.1.4", - "har-validator": "2.0.6", - "hawk": "3.1.3", - "http-signature": "1.1.1", - "is-typedarray": "1.0.0", - "isstream": "0.1.2", - "json-stringify-safe": "5.0.1", - "mime-types": "2.1.18", - "oauth-sign": "0.8.2", - "qs": "6.3.2", - "stringstream": "0.0.5", - "tough-cookie": "2.3.4", - "tunnel-agent": "0.4.3", - "uuid": "3.2.1" - } - }, - "sntp": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", - "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", - "dev": true, - "requires": { - "hoek": "2.16.3" + "version": "2.87.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", + "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.6.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.5", + "extend": "~3.0.1", + "forever-agent": "~0.6.1", + "form-data": "~2.3.1", + "har-validator": "~5.0.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.17", + "oauth-sign": "~0.8.2", + "performance-now": "^2.1.0", + "qs": "~6.5.1", + "safe-buffer": "^5.1.1", + "tough-cookie": "~2.3.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.1.0" } }, "source-map-support": { @@ -10419,20 +10851,8 @@ "integrity": "sha1-MlUqpktFg5KoXqs7C17mFScWeus=", "dev": true, "requires": { - "source-map": "0.5.7" + "source-map": "^0.5.3" } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - }, - "tunnel-agent": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz", - "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=", - "dev": true } } }, @@ -10448,13 +10868,13 @@ "integrity": "sha512-cpOHpnRyY3Dk9dTHBYMfVBB0HUCSKIpxW07X6OGW2NiYPovs4AkcL8Q8MzecbAROjbfRA9esJCmlZgikxDz7DA==", "dev": true, "requires": { - "@sinonjs/formatio": "2.0.0", - "diff": "3.3.1", - "lodash.get": "4.4.2", - "lolex": "2.3.2", - "nise": "1.3.0", - "supports-color": "5.3.0", - "type-detect": "4.0.8" + "@sinonjs/formatio": "^2.0.0", + "diff": "^3.1.0", + "lodash.get": "^4.4.2", + "lolex": "^2.2.0", + "nise": "^1.2.0", + "supports-color": "^5.1.0", + "type-detect": "^4.0.5" } }, "sinon-chai": { @@ -10475,23 +10895,29 @@ "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", "dev": true, "requires": { - "is-fullwidth-code-point": "2.0.0" + "is-fullwidth-code-point": "^2.0.0" } }, + "smart-buffer": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-1.1.15.tgz", + "integrity": "sha1-fxFLW2X6s+KjWqd1uxLw0cZJvxY=", + "dev": true + }, "snapdragon": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.1.tgz", - "integrity": "sha1-4StUh/re0+PeoKyR6UAL91tAE3A=", - "dev": true, - "requires": { - "base": "0.11.2", - "debug": "2.6.9", - "define-property": "0.2.5", - "extend-shallow": "2.0.1", - "map-cache": "0.2.2", - "source-map": "0.5.7", - "source-map-resolve": "0.5.1", - "use": "2.0.2" + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" }, "dependencies": { "define-property": { @@ -10500,7 +10926,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "extend-shallow": { @@ -10509,112 +10935,440 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" + } + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" } }, "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "1.1.6" - } - } + "kind-of": "^6.0.0" } }, "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, + "requires": { + "kind-of": "^3.2.0" + } + }, + "sntp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz", + "integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==", + "dev": true, + "requires": { + "hoek": "4.x.x" + } + }, + "snyk": { + "version": "1.82.0", + "resolved": "https://registry.npmjs.org/snyk/-/snyk-1.82.0.tgz", + "integrity": "sha512-UZuGBdh3PSK6Va9Sos+hFUnLImIShluHfOSvF3UdM0jmjOaIRvIywkUrqT7J38xQ0VRmbVCoJlrYA1g7vD1CeA==", + "dev": true, + "requires": { + "abbrev": "^1.1.1", + "ansi-escapes": "^3.1.0", + "chalk": "^2.4.1", + "configstore": "^3.1.2", + "debug": "^3.1.0", + "hasbin": "^1.2.3", + "inquirer": "^3.0.0", + "lodash": "^4.17.5", + "needle": "^2.0.1", + "opn": "^5.2.0", + "os-name": "^2.0.1", + "proxy-agent": "^3.0.0", + "proxy-from-env": "^1.0.0", + "recursive-readdir": "^2.2.2", + "semver": "^5.5.0", + "snyk-config": "2.1.0", + "snyk-go-plugin": "1.5.1", + "snyk-gradle-plugin": "1.3.0", + "snyk-module": "1.8.2", + "snyk-mvn-plugin": "1.2.0", + "snyk-nuget-plugin": "1.6.2", + "snyk-php-plugin": "1.5.1", + "snyk-policy": "1.12.0", + "snyk-python-plugin": "1.6.1", + "snyk-resolve": "1.0.1", + "snyk-resolve-deps": "3.1.0", + "snyk-sbt-plugin": "1.3.0", + "snyk-tree": "^1.0.0", + "snyk-try-require": "1.3.0", + "tempfile": "^2.0.0", + "then-fs": "^2.0.0", + "undefsafe": "^2.0.0", + "uuid": "^3.2.1" + }, + "dependencies": { + "chalk": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "opn": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.3.0.tgz", + "integrity": "sha512-bYJHo/LOmoTd+pfiYhfZDnf9zekVJrY+cnS2a5F2x+w5ppvTqObojTP7WiFG+kVZs9Inw+qQ/lw7TroWwhdd2g==", + "dev": true, + "requires": { + "is-wsl": "^1.1.0" + } + } + } + }, + "snyk-config": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/snyk-config/-/snyk-config-2.1.0.tgz", + "integrity": "sha512-D1Xz1pZa9lwA9AHogmAigyJGo/iuEGH+rcPB77mFsneVfnuiK9c6IjnsHbEBUf1cePtZvWdGBjs6e75Cvc2AMg==", + "dev": true, + "requires": { + "debug": "^3.1.0", + "nconf": "^0.10.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "snyk-go-plugin": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/snyk-go-plugin/-/snyk-go-plugin-1.5.1.tgz", + "integrity": "sha512-8OPJOT05Z/UL5fFSXV6b/A6KjlS1Ahr2gpup1bhXtAGXlUUPyWidqkCIER9fexDXqYWgAoDAdn9YHIvmL/5bfw==", + "dev": true, + "requires": { + "graphlib": "^2.1.1", + "tmp": "0.0.33", + "toml": "^2.3.2" + } + }, + "snyk-gradle-plugin": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/snyk-gradle-plugin/-/snyk-gradle-plugin-1.3.0.tgz", + "integrity": "sha512-rKZcPwbDM9zk3pFcO0w77MIKOZTkk5ZBVBkBlTlUiFg+eNOKqPTmw2hBGF5NB4ASQmMnx3uB1C8+hrQ405CthA==", + "dev": true, + "requires": { + "clone-deep": "^0.3.0" + } + }, + "snyk-module": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/snyk-module/-/snyk-module-1.8.2.tgz", + "integrity": "sha512-XqhdbZ/CUuJ5gSaYdYfapLqx9qm2Mp6nyRMBCLXe9tJSiohOJsc9fQuUDbdOiRCqpA4BD6WLl+qlwOJmJoszBg==", + "dev": true, + "requires": { + "debug": "^3.1.0", + "hosted-git-info": "^2.1.4" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "snyk-mvn-plugin": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/snyk-mvn-plugin/-/snyk-mvn-plugin-1.2.0.tgz", + "integrity": "sha512-ieTWhn1MB88gEQ6nUtGCeUKQ6Xoxm+u+QmD9u3zfP1QS5ep9fWt3YYDUQjgUiDTJJy7QyVQdZ/fsz3RECnOA7w==", + "dev": true + }, + "snyk-nuget-plugin": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/snyk-nuget-plugin/-/snyk-nuget-plugin-1.6.2.tgz", + "integrity": "sha512-8l8hS85esXyweTFgUFdwnGT94Ts42KcG5fdBX2wYosQkpUMePd+GTT9+64k/GvdH5hqcNt2OvtzW+Uf8JF+pbA==", + "dev": true, + "requires": { + "debug": "^3.1.0", + "es6-promise": "^4.1.1", + "lodash": "^4.17.10", + "xml2js": "^0.4.17", + "zip": "^1.2.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "es6-promise": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.4.tgz", + "integrity": "sha512-/NdNZVJg+uZgtm9eS3O6lrOLYmQag2DjdEXuPaHlZ6RuVqgqaVZfgYCepEIKsLqwdQArOPtC3XzRLqGGfT8KQQ==", + "dev": true + }, + "lodash": { + "version": "4.17.10", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", + "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", + "dev": true + } + } + }, + "snyk-php-plugin": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/snyk-php-plugin/-/snyk-php-plugin-1.5.1.tgz", + "integrity": "sha512-g5QSHBsRJ2O4cNxKC4zlWwnQYiSgQ77Y6QgGmo3ihPX3VLZrc1amaZIpPsNe1jwXirnGj2rvR5Xw+jDjbzvHFw==", + "dev": true, + "requires": { + "debug": "^3.1.0", + "lodash": "^4.17.5", + "path": "0.12.7" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "snyk-policy": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/snyk-policy/-/snyk-policy-1.12.0.tgz", + "integrity": "sha512-CEioNnDzccHyid7UIVl3bJ1dnG4co4ofI+KxuC1mo0IUXy64gxnBTeVoZF5gVLWbAyxGxSeW8f0+8GmWMHVb7w==", + "dev": true, + "requires": { + "debug": "^3.1.0", + "email-validator": "^2.0.3", + "js-yaml": "^3.5.3", + "lodash.clonedeep": "^4.3.1", + "semver": "^5.5.0", + "snyk-module": "^1.8.2", + "snyk-resolve": "^1.0.1", + "snyk-try-require": "^1.1.1", + "then-fs": "^2.0.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "snyk-python-plugin": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/snyk-python-plugin/-/snyk-python-plugin-1.6.1.tgz", + "integrity": "sha512-6zr5jAB3p/bwMZQxZpdj+aPmioTgHB4DI6JMLInhZupss0x8Ome5YqzVzBbOvUKNrc3KaLtjGrJWcAuxDL6M/g==", + "dev": true, + "requires": { + "tmp": "0.0.33" + } + }, + "snyk-resolve": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/snyk-resolve/-/snyk-resolve-1.0.1.tgz", + "integrity": "sha512-7+i+LLhtBo1Pkth01xv+RYJU8a67zmJ8WFFPvSxyCjdlKIcsps4hPQFebhz+0gC5rMemlaeIV6cqwqUf9PEDpw==", + "dev": true, + "requires": { + "debug": "^3.1.0", + "then-fs": "^2.0.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", "dev": true, "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "1.1.6" - } - } + "ms": "2.0.0" } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + } + } + }, + "snyk-resolve-deps": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/snyk-resolve-deps/-/snyk-resolve-deps-3.1.0.tgz", + "integrity": "sha512-YVAelR+dTpqLgfk6lf6WgOlw+MGmGI0r3/Dny8tUbJJ9uVTHTRAOdZCbUyTFqJG7oEmEZxUwmfjqgAuniYwx8Q==", + "dev": true, + "requires": { + "ansicolors": "^0.3.2", + "debug": "^3.1.0", + "lodash.assign": "^4.2.0", + "lodash.assignin": "^4.2.0", + "lodash.flatten": "^4.4.0", + "lodash.get": "^4.4.2", + "lodash.set": "^4.3.2", + "lru-cache": "^4.0.0", + "semver": "^5.1.0", + "snyk-module": "^1.6.0", + "snyk-resolve": "^1.0.0", + "snyk-tree": "^1.0.0", + "snyk-try-require": "^1.1.1", + "then-fs": "^2.0.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", "dev": true, "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" + "ms": "2.0.0" } - }, - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true } } }, - "snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "snyk-sbt-plugin": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/snyk-sbt-plugin/-/snyk-sbt-plugin-1.3.0.tgz", + "integrity": "sha512-SRxPB16392dvN3Qv2RfUcHe0XETLWx2kNIOuoNXvc2Gl6DuPW+X+meDJY7xC/yQhU7bSPPKoM2B7awYaj9i2Bg==", + "dev": true, + "requires": { + "debug": "^2.2.0" + } + }, + "snyk-tree": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/snyk-tree/-/snyk-tree-1.0.0.tgz", + "integrity": "sha1-D7cxdtvzLngvGRAClBYESPkRHMg=", + "dev": true, + "requires": { + "archy": "^1.0.0" + } + }, + "snyk-try-require": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/snyk-try-require/-/snyk-try-require-1.3.0.tgz", + "integrity": "sha1-81cGrPkciveI1Y4fGta/D89sVJM=", "dev": true, "requires": { - "define-property": "1.0.0", - "isobject": "3.0.1", - "snapdragon-util": "3.0.1" + "debug": "^3.1.0", + "lodash.clonedeep": "^4.3.0", + "lru-cache": "^4.0.0", + "then-fs": "^2.0.0" }, "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", "dev": true, "requires": { - "is-descriptor": "1.0.2" + "ms": "2.0.0" } - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true } } }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "socks": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/socks/-/socks-1.1.10.tgz", + "integrity": "sha1-W4t/x8jzQcU+0FbpKbe/Tei6e1o=", "dev": true, "requires": { - "kind-of": "3.2.2" + "ip": "^1.1.4", + "smart-buffer": "^1.0.13" } }, - "sntp": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz", - "integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==", + "socks-proxy-agent": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-3.0.1.tgz", + "integrity": "sha512-ZwEDymm204mTzvdqyUqOdovVr2YRd2NYskrYrF2LXyZ9qDiMAoFESGK8CRphiO7rtbo2Y757k2Nia3x2hGtalA==", "dev": true, "requires": { - "hoek": "4.2.1" + "agent-base": "^4.1.0", + "socks": "^1.1.10" } }, "source-list-map": { @@ -10630,16 +11384,16 @@ "dev": true }, "source-map-resolve": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.1.tgz", - "integrity": "sha512-0KW2wvzfxm8NCTb30z0LMNyPqWCdDGE2viwzUaucqJdkTRXtZiSY3I+2A6nVAjmdOy0I4gU8DwnVVGsk9jvP2A==", + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", + "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", "dev": true, "requires": { - "atob": "2.0.3", - "decode-uri-component": "0.2.0", - "resolve-url": "0.2.1", - "source-map-url": "0.4.0", - "urix": "0.1.0" + "atob": "^2.1.1", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" } }, "source-map-support": { @@ -10648,7 +11402,7 @@ "integrity": "sha512-eKkTgWYeBOQqFGXRfKabMFdnWepo51vWqEdoeikaEPFiJC7MCU5j2h4+6Q8npkZTeLGbSyecZvRxiSoWl3rh+w==", "dev": true, "requires": { - "source-map": "0.6.1" + "source-map": "^0.6.0" }, "dependencies": { "source-map": { @@ -10671,8 +11425,8 @@ "integrity": "sha1-sAeZVX63+wyDdsKdROih6mfldHY=", "dev": true, "requires": { - "concat-stream": "1.6.0", - "os-shim": "0.1.3" + "concat-stream": "^1.4.7", + "os-shim": "^0.1.2" } }, "spdx-correct": { @@ -10681,8 +11435,8 @@ "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==", "dev": true, "requires": { - "spdx-expression-parse": "3.0.0", - "spdx-license-ids": "3.0.0" + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" } }, "spdx-exceptions": { @@ -10697,8 +11451,8 @@ "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", "dev": true, "requires": { - "spdx-exceptions": "2.1.0", - "spdx-license-ids": "3.0.0" + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" } }, "spdx-license-ids": { @@ -10713,7 +11467,7 @@ "integrity": "sha1-zQ7qXmOiEd//frDwkcQTPi0N0o8=", "dev": true, "requires": { - "through": "2.3.8" + "through": "2" } }, "split-string": { @@ -10722,7 +11476,7 @@ "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", "dev": true, "requires": { - "extend-shallow": "3.0.2" + "extend-shallow": "^3.0.0" } }, "split2": { @@ -10731,29 +11485,23 @@ "integrity": "sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw==", "dev": true, "requires": { - "through2": "2.0.3" + "through2": "^2.0.2" } }, - "sprintf-js": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.1.tgz", - "integrity": "sha1-Nr54Mgr+WAH2zqPueLblqrlA6gw=", - "dev": true - }, "sshpk": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz", - "integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.1.tgz", + "integrity": "sha1-Ew9Zde3a2WPx1W+SuaxsUfqfg+s=", "dev": true, "requires": { - "asn1": "0.2.3", - "assert-plus": "1.0.0", - "bcrypt-pbkdf": "1.0.1", - "dashdash": "1.14.1", - "ecc-jsbn": "0.1.1", - "getpass": "0.1.7", - "jsbn": "0.1.1", - "tweetnacl": "0.14.5" + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "tweetnacl": "~0.14.0" } }, "ssri": { @@ -10762,7 +11510,7 @@ "integrity": "sha512-UnEAgMZa15973iH7cUi0AHjJn1ACDIkaMyZILoqwN6yzt+4P81I8tBc5Hl+qwi5auMplZtPQsHrPBR5vJLcQtQ==", "dev": true, "requires": { - "safe-buffer": "5.1.1" + "safe-buffer": "^5.1.1" } }, "static-extend": { @@ -10771,8 +11519,8 @@ "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", "dev": true, "requires": { - "define-property": "0.2.5", - "object-copy": "0.1.0" + "define-property": "^0.2.5", + "object-copy": "^0.1.0" }, "dependencies": { "define-property": { @@ -10781,65 +11529,8 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, - "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "1.1.6" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dev": true, - "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "1.1.6" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" + "is-descriptor": "^0.1.0" } - }, - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true } } }, @@ -10860,8 +11551,8 @@ "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", "dev": true, "requires": { - "inherits": "2.0.3", - "readable-stream": "2.3.4" + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" } }, "stream-each": { @@ -10870,21 +11561,47 @@ "integrity": "sha512-mc1dbFhGBxvTM3bIWmAAINbqiuAk9TATcfIQC8P+/+HJefgaiTlMn2dHvkX8qlI12KeYKSQ1Ua9RrIqrn1VPoA==", "dev": true, "requires": { - "end-of-stream": "1.4.1", - "stream-shift": "1.0.0" + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" } }, "stream-http": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.0.tgz", - "integrity": "sha512-sZOFxI/5xw058XIRHl4dU3dZ+TTOIGJR78Dvo0oEAejIt4ou27k+3ne1zYmCV+v7UucbxIFQuOgnkTVHh8YPnw==", + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.2.tgz", + "integrity": "sha512-QllfrBhqF1DPcz46WxKTs6Mz1Bpc+8Qm6vbqOpVav5odAXwbyzwnEczoWqtxrsmlO+cJqtPrp/8gWKWjaKLLlA==", "dev": true, "requires": { - "builtin-status-codes": "3.0.0", - "inherits": "2.0.3", - "readable-stream": "2.3.4", - "to-arraybuffer": "1.0.1", - "xtend": "4.0.1" + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "stream-parser": { @@ -10893,7 +11610,7 @@ "integrity": "sha1-FhhUhpRCACGhGC/wrxkRwSl2F3M=", "dev": true, "requires": { - "debug": "2.6.9" + "debug": "2" } }, "stream-shift": { @@ -10908,7 +11625,7 @@ "integrity": "sha1-u/azn19D7DC8cbq8s3VXrOzzQ1M=", "dev": true, "requires": { - "any-promise": "1.3.0" + "any-promise": "^1.1.0" } }, "stream-to-promise": { @@ -10917,9 +11634,9 @@ "integrity": "sha1-se2y4cjLESidG1A8CNPyrvUeZQ8=", "dev": true, "requires": { - "any-promise": "1.3.0", - "end-of-stream": "1.1.0", - "stream-to-array": "2.3.0" + "any-promise": "~1.3.0", + "end-of-stream": "~1.1.0", + "stream-to-array": "~2.3.0" }, "dependencies": { "end-of-stream": { @@ -10928,7 +11645,7 @@ "integrity": "sha1-6TUyWLqpEIll78QcsO+K3i88+wc=", "dev": true, "requires": { - "once": "1.3.3" + "once": "~1.3.0" } }, "once": { @@ -10937,19 +11654,25 @@ "integrity": "sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA=", "dev": true, "requires": { - "wrappy": "1.0.2" + "wrappy": "1" } } } }, + "string-template": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz", + "integrity": "sha1-QpMuWYo1LQH8IuwzZ9nYTuxsmt0=", + "dev": true + }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dev": true, "requires": { - "is-fullwidth-code-point": "2.0.0", - "strip-ansi": "4.0.0" + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" }, "dependencies": { "ansi-regex": { @@ -10964,7 +11687,7 @@ "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "dev": true, "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } } } @@ -10975,25 +11698,25 @@ "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", "dev": true, "requires": { - "safe-buffer": "5.1.1" + "safe-buffer": "~5.1.0" } }, "stringify-entities": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-1.3.1.tgz", - "integrity": "sha1-sVDsLXKsTBtfMktR+2soyc3/BYw=", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-1.3.2.tgz", + "integrity": "sha512-nrBAQClJAPN2p+uGCVJRPIPakKeKWZ9GtBCmormE7pWOSlHat7+x5A8gx85M7HM5Dt0BP3pP5RhVW77WdbJJ3A==", "dev": true, "requires": { - "character-entities-html4": "1.1.1", - "character-entities-legacy": "1.1.1", - "is-alphanumerical": "1.0.1", - "is-hexadecimal": "1.0.1" + "character-entities-html4": "^1.0.0", + "character-entities-legacy": "^1.0.0", + "is-alphanumerical": "^1.0.0", + "is-hexadecimal": "^1.0.0" } }, "stringstream": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", - "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=", + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.6.tgz", + "integrity": "sha512-87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA==", "dev": true }, "strip-ansi": { @@ -11002,7 +11725,7 @@ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "strip-bom": { @@ -11011,7 +11734,7 @@ "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", "dev": true, "requires": { - "is-utf8": "0.2.1" + "is-utf8": "^0.2.0" } }, "strip-bom-buf": { @@ -11020,7 +11743,7 @@ "integrity": "sha1-HLRar1dTD0yvhsf3UXnSyaUd1XI=", "dev": true, "requires": { - "is-utf8": "0.2.1" + "is-utf8": "^0.2.1" } }, "strip-bom-stream": { @@ -11029,8 +11752,8 @@ "integrity": "sha1-lWvMXYRDD2klapDtgjdlzYWOFZw=", "dev": true, "requires": { - "first-chunk-stream": "2.0.0", - "strip-bom-buf": "1.0.0" + "first-chunk-stream": "^2.0.0", + "strip-bom-buf": "^1.0.0" } }, "strip-eof": { @@ -11045,7 +11768,7 @@ "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", "dev": true, "requires": { - "get-stdin": "4.0.1" + "get-stdin": "^4.0.1" } }, "strip-json-comments": { @@ -11060,7 +11783,7 @@ "integrity": "sha1-3YAkJeD1PcSm56yjdSkBoczaevU=", "dev": true, "requires": { - "boundary": "1.0.1" + "boundary": "^1.0.1" } }, "stylus": { @@ -11069,12 +11792,12 @@ "integrity": "sha1-QrlWCTHKcJDOhRWnmLqeaqPW3Hk=", "dev": true, "requires": { - "css-parse": "1.7.0", - "debug": "2.6.9", - "glob": "7.0.6", - "mkdirp": "0.5.1", - "sax": "0.5.8", - "source-map": "0.1.43" + "css-parse": "1.7.x", + "debug": "*", + "glob": "7.0.x", + "mkdirp": "0.5.x", + "sax": "0.5.x", + "source-map": "0.1.x" }, "dependencies": { "source-map": { @@ -11083,7 +11806,7 @@ "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", "dev": true, "requires": { - "amdefine": "1.0.1" + "amdefine": ">=0.0.4" } } } @@ -11094,27 +11817,47 @@ "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==", "dev": true, "requires": { - "has-flag": "3.0.0" + "has-flag": "^3.0.0" } }, "table": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/table/-/table-4.0.3.tgz", - "integrity": "sha512-S7rnFITmBH1EnyKcvxBh1LjYeQMmnZtCXSEbHcH6S0NoKit24ZuFO/T1vDcLdYsLQkM188PVVhQmzKIuThNkKg==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/table/-/table-4.0.2.tgz", + "integrity": "sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA==", "dev": true, "requires": { - "ajv": "6.2.0", - "ajv-keywords": "3.1.0", - "chalk": "2.3.2", - "lodash": "4.17.5", + "ajv": "^5.2.3", + "ajv-keywords": "^2.1.0", + "chalk": "^2.1.0", + "lodash": "^4.17.4", "slice-ansi": "1.0.0", - "string-width": "2.1.1" + "string-width": "^2.1.1" + }, + "dependencies": { + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "dev": true, + "requires": { + "co": "^4.6.0", + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0" + } + }, + "ajv-keywords": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-2.1.1.tgz", + "integrity": "sha1-YXmX/F9gV2iUxDX5QNgZ4TW4B2I=", + "dev": true + } } }, "tapable": { - "version": "0.2.8", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-0.2.8.tgz", - "integrity": "sha1-mTcqXJmb8t8WCvwNdL7U9HlIzSI=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.0.0.tgz", + "integrity": "sha512-dQRhbNQkRnaqauC7WqSJ21EEksgT0fYZX2lqXzGkpo8JNig9zGZTYoMGvyI2nWmXlE2VSVXVDu7wLVGu/mQEsg==", "dev": true }, "tar-stream": { @@ -11123,10 +11866,26 @@ "integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==", "dev": true, "requires": { - "bl": "1.2.1", - "end-of-stream": "1.4.1", - "readable-stream": "2.3.4", - "xtend": "4.0.1" + "bl": "^1.0.0", + "end-of-stream": "^1.0.0", + "readable-stream": "^2.0.0", + "xtend": "^4.0.0" + } + }, + "temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", + "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "dev": true + }, + "tempfile": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-2.0.0.tgz", + "integrity": "sha1-awRGhWqbERTRhW/8vlCczLCXcmU=", + "dev": true, + "requires": { + "temp-dir": "^1.0.0", + "uuid": "^3.0.1" } }, "term-size": { @@ -11135,7 +11894,7 @@ "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", "dev": true, "requires": { - "execa": "0.7.0" + "execa": "^0.7.0" } }, "text-encoding": { @@ -11150,13 +11909,22 @@ "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", "dev": true }, + "then-fs": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/then-fs/-/then-fs-2.0.0.tgz", + "integrity": "sha1-cveS3Z0xcFqRrhnr/Piz+WjIHaI=", + "dev": true, + "requires": { + "promise": ">=3.2 <8" + } + }, "thenify": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.0.tgz", "integrity": "sha1-5p44obq+lpsBCCB5eLn2K4hgSDk=", "dev": true, "requires": { - "any-promise": "1.3.0" + "any-promise": "^1.0.0" } }, "thenify-all": { @@ -11165,7 +11933,7 @@ "integrity": "sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY=", "dev": true, "requires": { - "thenify": "3.3.0" + "thenify": ">= 3.1.0 < 4" } }, "through": { @@ -11180,10 +11948,16 @@ "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", "dev": true, "requires": { - "readable-stream": "2.3.4", - "xtend": "4.0.1" + "readable-stream": "^2.1.5", + "xtend": "~4.0.1" } }, + "thunkify": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/thunkify/-/thunkify-2.1.2.tgz", + "integrity": "sha1-+qDp0jDFGsyVyhOjYawFyn4EVT0=", + "dev": true + }, "timed-out": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", @@ -11191,114 +11965,35 @@ "dev": true }, "timers-browserify": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.6.tgz", - "integrity": "sha512-HQ3nbYRAowdVd0ckGFvmJPPCOH/CHleFN/Y0YQCX1DVaB7t+KFvisuyN09fuP8Jtp1CpfSh8O8bMkHbdbPe6Pw==", + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.10.tgz", + "integrity": "sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg==", "dev": true, "requires": { - "setimmediate": "1.0.5" + "setimmediate": "^1.0.4" } }, "tiny-lr": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tiny-lr/-/tiny-lr-0.2.1.tgz", - "integrity": "sha1-s/26gC5dVqM8L28QeUsy5Hescp0=", - "dev": true, - "requires": { - "body-parser": "1.14.2", - "debug": "2.2.0", - "faye-websocket": "0.10.0", - "livereload-js": "2.3.0", - "parseurl": "1.3.2", - "qs": "5.1.0" - }, - "dependencies": { - "body-parser": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.14.2.tgz", - "integrity": "sha1-EBXLH+LEQ4WCWVgdtTMy+NDPUPk=", - "dev": true, - "requires": { - "bytes": "2.2.0", - "content-type": "1.0.4", - "debug": "2.2.0", - "depd": "1.1.2", - "http-errors": "1.3.1", - "iconv-lite": "0.4.13", - "on-finished": "2.3.0", - "qs": "5.2.0", - "raw-body": "2.1.7", - "type-is": "1.6.16" - }, - "dependencies": { - "qs": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-5.2.0.tgz", - "integrity": "sha1-qfMRQq9GjLcrJbMBNrokVoNJFr4=", - "dev": true - } - } - }, - "bytes": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-2.2.0.tgz", - "integrity": "sha1-/TVGSkA/b5EXwt42Cez/nK4ABYg=", - "dev": true - }, + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/tiny-lr/-/tiny-lr-1.1.1.tgz", + "integrity": "sha512-44yhA3tsaRoMOjQQ+5v5mVdqef+kH6Qze9jTpqtVufgYjYt08zyZAwNwwVBj3i1rJMnR52IxOW0LK0vBzgAkuA==", + "dev": true, + "requires": { + "body": "^5.1.0", + "debug": "^3.1.0", + "faye-websocket": "~0.10.0", + "livereload-js": "^2.3.0", + "object-assign": "^4.1.0", + "qs": "^6.4.0" + }, + "dependencies": { "debug": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", - "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=", - "dev": true, - "requires": { - "ms": "0.7.1" - } - }, - "http-errors": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.3.1.tgz", - "integrity": "sha1-GX4izevUGYWF6GlO9nhhl7ke2UI=", - "dev": true, - "requires": { - "inherits": "2.0.3", - "statuses": "1.3.1" - } - }, - "iconv-lite": { - "version": "0.4.13", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.13.tgz", - "integrity": "sha1-H4irpKsLFQjoMSrMOTRfNumS4vI=", - "dev": true - }, - "ms": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", - "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=", - "dev": true - }, - "qs": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-5.1.0.tgz", - "integrity": "sha1-TZMuXH6kEcynajEtOaYGIA/VDNk=", - "dev": true - }, - "raw-body": { - "version": "2.1.7", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.1.7.tgz", - "integrity": "sha1-rf6s4uT7MJgFgBTQjActzFl1h3Q=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", "dev": true, "requires": { - "bytes": "2.4.0", - "iconv-lite": "0.4.13", - "unpipe": "1.0.0" - }, - "dependencies": { - "bytes": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-2.4.0.tgz", - "integrity": "sha1-fZcZb51br39pNeJZhVSe3SpsIzk=", - "dev": true - } + "ms": "2.0.0" } } } @@ -11309,7 +12004,7 @@ "integrity": "sha512-F1frIYVNJlXcl5M4dJrsonTqB19rXP8jj3CB/2K6EIKYszLtYAczGQNTtinNlCvZnS2/wiGo6zv9ex46KibrGA==", "dev": true, "requires": { - "popper.js": "1.14.1" + "popper.js": "^1.13.0" } }, "tmp": { @@ -11318,7 +12013,7 @@ "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", "dev": true, "requires": { - "os-tmpdir": "1.0.2" + "os-tmpdir": "~1.0.2" } }, "to-arraybuffer": { @@ -11339,7 +12034,7 @@ "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } }, "to-regex": { @@ -11348,10 +12043,10 @@ "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", "dev": true, "requires": { - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "regex-not": "1.0.2", - "safe-regex": "1.1.0" + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" } }, "to-regex-range": { @@ -11360,8 +12055,8 @@ "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", "dev": true, "requires": { - "is-number": "3.0.0", - "repeat-string": "1.6.1" + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" }, "dependencies": { "is-number": { @@ -11370,33 +12065,28 @@ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } } } }, + "to-utf8": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/to-utf8/-/to-utf8-0.0.1.tgz", + "integrity": "sha1-0Xrqcv8vujm55DYBvns/9y4ImFI=", + "dev": true + }, "token-stream": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-0.0.1.tgz", "integrity": "sha1-zu78cXp2xDFvEm0LnbqlXX598Bo=", "dev": true }, - "topo": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/topo/-/topo-1.1.0.tgz", - "integrity": "sha1-6ddRYV0buH3IZdsYL6HKCl71NtU=", - "dev": true, - "requires": { - "hoek": "2.16.3" - }, - "dependencies": { - "hoek": { - "version": "2.16.3", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=", - "dev": true - } - } + "toml": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/toml/-/toml-2.3.3.tgz", + "integrity": "sha512-O7L5hhSQHxuufWUdcTRPfuTh3phKfAZ/dqfxZFoxPCj2RYmpaSGLEIs016FCXItQwNr08yefUB5TSjzRYnajTA==", + "dev": true }, "tosource": { "version": "1.0.0", @@ -11410,7 +12100,7 @@ "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", "dev": true, "requires": { - "punycode": "1.4.1" + "punycode": "^1.4.1" } }, "tr46": { @@ -11419,21 +12109,21 @@ "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", "dev": true, "requires": { - "punycode": "2.1.0" + "punycode": "^2.1.0" }, "dependencies": { "punycode": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.0.tgz", - "integrity": "sha1-X4Y+3Im5bbCQdLrXlHvwkFbKTn0=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", "dev": true } } }, "traverse": { - "version": "0.6.6", - "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.6.6.tgz", - "integrity": "sha1-y99WD9e5r2MlAv7UD5GMFX6pcTc=", + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.4.6.tgz", + "integrity": "sha1-0EsigOTHkqWBVCnve4tgxkyczDQ=", "dev": true }, "trim": { @@ -11455,15 +12145,15 @@ "dev": true }, "trim-trailing-lines": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.0.tgz", - "integrity": "sha1-eu+7eAjfnWafbaLkOMrIxGradoQ=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.1.tgz", + "integrity": "sha512-bWLv9BbWbbd7mlqqs2oQYnLD/U/ZqeJeJwbO0FG2zA1aTq+HTvxfHNKFa/HGCVyJpDiioUYaBhfiT6rgk+l4mg==", "dev": true }, "trough": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.1.tgz", - "integrity": "sha1-qf2LA5Swro//guBjOgo2zK1bX4Y=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.2.tgz", + "integrity": "sha512-FHkoUZvG6Egrv9XZAyYGKEyb1JMsFphgPjoczkZC2y6W93U1jswcVURB8MUvtsahEPEVACyxD47JAL63vF4JsQ==", "dev": true }, "tty-browserify": { @@ -11478,7 +12168,7 @@ "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", "dev": true, "requires": { - "safe-buffer": "5.1.1" + "safe-buffer": "^5.0.1" } }, "tv4": { @@ -11493,8 +12183,8 @@ "integrity": "sha1-a3l43S3IqjnQrCWU3dtvbAy/2SE=", "dev": true, "requires": { - "moment": "2.21.0", - "validator": "8.2.0" + "moment": "^2.10.6", + "validator": "^8.2.0" } }, "tweetnacl": { @@ -11510,7 +12200,7 @@ "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", "dev": true, "requires": { - "prelude-ls": "1.1.2" + "prelude-ls": "~1.1.2" } }, "type-detect": { @@ -11525,7 +12215,7 @@ "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", "requires": { "media-typer": "0.3.0", - "mime-types": "2.1.18" + "mime-types": "~2.1.18" } }, "typedarray": { @@ -11546,9 +12236,9 @@ "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", "dev": true, "requires": { - "source-map": "0.5.7", - "uglify-to-browserify": "1.0.2", - "yargs": "3.10.0" + "source-map": "~0.5.1", + "uglify-to-browserify": "~1.0.0", + "yargs": "~3.10.0" } }, "uglify-to-browserify": { @@ -11564,14 +12254,14 @@ "integrity": "sha512-CG/NvzXfemUAm5Y4Guh5eEaJYHtkG7kKNpXEJHp9QpxsFVB5/qKvYWoMaq4sa99ccZ0hM3MK8vQV9XPZB4357A==", "dev": true, "requires": { - "cacache": "10.0.4", - "find-cache-dir": "1.0.0", - "schema-utils": "0.4.5", - "serialize-javascript": "1.4.0", - "source-map": "0.6.1", - "uglify-es": "3.3.9", - "webpack-sources": "1.1.0", - "worker-farm": "1.5.4" + "cacache": "^10.0.1", + "find-cache-dir": "^1.0.0", + "schema-utils": "^0.4.2", + "serialize-javascript": "^1.4.0", + "source-map": "^0.6.1", + "uglify-es": "^3.3.4", + "webpack-sources": "^1.1.0", + "worker-farm": "^1.5.2" }, "dependencies": { "commander": { @@ -11592,8 +12282,8 @@ "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", "dev": true, "requires": { - "commander": "2.13.0", - "source-map": "0.6.1" + "commander": "~2.13.0", + "source-map": "~0.6.1" } } } @@ -11604,30 +12294,29 @@ "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==", "dev": true }, + "undefsafe": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.2.tgz", + "integrity": "sha1-Il9rngM3Zj4Njnz9aG/Cg2zKznY=", + "dev": true, + "requires": { + "debug": "^2.2.0" + } + }, "underscore": { "version": "1.8.3", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=", "dev": true }, - "underscore.string": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.4.tgz", - "integrity": "sha1-LCo/n4PmR2L9xF5s6sZRQoZCE9s=", - "dev": true, - "requires": { - "sprintf-js": "1.1.1", - "util-deprecate": "1.0.2" - } - }, "unherit": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.0.tgz", - "integrity": "sha1-a5qu379z3xdWrZ4xbdmBiFhAzX0=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.1.tgz", + "integrity": "sha512-+XZuV691Cn4zHsK0vkKYwBEwB74T3IZIcxrgn2E4rKwTfFyI1zCh7X7grwh9Re08fdPlarIdyWgI8aVB3F5A5g==", "dev": true, "requires": { - "inherits": "2.0.3", - "xtend": "4.0.1" + "inherits": "^2.0.1", + "xtend": "^4.0.1" } }, "unicode-canonical-property-names-ecmascript": { @@ -11642,8 +12331,8 @@ "integrity": "sha512-nFcaBFcr08UQNF15ZgI5ISh3yUnQm7SJRRxwYrL5VYX46pS+6Q7TCTv4zbK+j6/l7rQt0mMiTL2zpmeygny6rA==", "dev": true, "requires": { - "unicode-canonical-property-names-ecmascript": "1.0.3", - "unicode-property-aliases-ecmascript": "1.0.3" + "unicode-canonical-property-names-ecmascript": "^1.0.2", + "unicode-property-aliases-ecmascript": "^1.0.3" } }, "unicode-match-property-value-ecmascript": { @@ -11664,12 +12353,12 @@ "integrity": "sha1-dv9Dqo2kMPbn5KVchOusKtLPzS4=", "dev": true, "requires": { - "bail": "1.0.2", - "extend": "3.0.1", - "has": "1.0.1", - "once": "1.4.0", - "trough": "1.0.1", - "vfile": "1.4.0" + "bail": "^1.0.0", + "extend": "^3.0.0", + "has": "^1.0.1", + "once": "^1.3.3", + "trough": "^1.0.0", + "vfile": "^1.0.0" } }, "union-value": { @@ -11678,10 +12367,10 @@ "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", "dev": true, "requires": { - "arr-union": "3.1.0", - "get-value": "2.0.6", - "is-extendable": "0.1.1", - "set-value": "0.4.3" + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^0.4.3" }, "dependencies": { "extend-shallow": { @@ -11690,7 +12379,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "set-value": { @@ -11699,10 +12388,10 @@ "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-extendable": "0.1.1", - "is-plain-object": "2.0.4", - "to-object-path": "0.3.0" + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.1", + "to-object-path": "^0.3.0" } } } @@ -11713,7 +12402,7 @@ "integrity": "sha1-0F8v5AMlYIcfMOk8vnNe6iAVFPM=", "dev": true, "requires": { - "unique-slug": "2.0.0" + "unique-slug": "^2.0.0" } }, "unique-slug": { @@ -11722,7 +12411,7 @@ "integrity": "sha1-22Z258fMBimHj/GWCXx4hVrp9Ks=", "dev": true, "requires": { - "imurmurhash": "0.1.4" + "imurmurhash": "^0.1.4" } }, "unique-string": { @@ -11731,31 +12420,31 @@ "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", "dev": true, "requires": { - "crypto-random-string": "1.0.0" + "crypto-random-string": "^1.0.0" } }, "unist-util-is": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-2.1.1.tgz", - "integrity": "sha1-DDEmKeP5YMZukx6BLT2A53AQlHs=", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-2.1.2.tgz", + "integrity": "sha512-YkXBK/H9raAmG7KXck+UUpnKiNmUdB+aBGrknfQ4EreE1banuzrKABx3jP6Z5Z3fMSPMQQmeXBlKpCbMwBkxVw==", "dev": true }, "unist-util-remove-position": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-1.1.1.tgz", - "integrity": "sha1-WoXBVV/BugwQG4ZwfRXlD6TIcbs=", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-1.1.2.tgz", + "integrity": "sha512-XxoNOBvq1WXRKXxgnSYbtCF76TJrRoe5++pD4cCBsssSiWSnPEktyFrFLE8LTk3JW5mt9hB0Sk5zn4x/JeWY7Q==", "dev": true, "requires": { - "unist-util-visit": "1.3.0" + "unist-util-visit": "^1.1.0" } }, "unist-util-visit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-1.3.0.tgz", - "integrity": "sha512-9ntYcxPFtl44gnwXrQKZ5bMqXMY0ZHzUpqMFiU4zcc8mmf/jzYm8GhYgezuUlX4cJIM1zIDYaO6fG/fI+L6iiQ==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-1.3.1.tgz", + "integrity": "sha512-0fdB9EQJU0tho5tK0VzOJzAQpPv2LyLZ030b10GxuzAWEfvd54mpY7BMjQ1L69k2YNvL+SvxRzH0yUIehOO8aA==", "dev": true, "requires": { - "unist-util-is": "2.1.1" + "unist-util-is": "^2.1.1" } }, "universalify": { @@ -11775,8 +12464,8 @@ "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", "dev": true, "requires": { - "has-value": "0.3.1", - "isobject": "3.0.1" + "has-value": "^0.3.1", + "isobject": "^3.0.0" }, "dependencies": { "has-value": { @@ -11785,9 +12474,9 @@ "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", "dev": true, "requires": { - "get-value": "2.0.6", - "has-values": "0.1.4", - "isobject": "2.1.0" + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" }, "dependencies": { "isobject": { @@ -11822,16 +12511,10 @@ "dev": true }, "upath": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.0.2.tgz", - "integrity": "sha512-fCmij7T5LnwUme3dbnVSejvOHHlARjB3ikJFwgZfz386pHmf/gueuTLRFU94FZEaeCLlbQrweiUU700gG41tUw==", - "dev": true, - "requires": { - "lodash.endswith": "4.2.1", - "lodash.isfunction": "3.0.9", - "lodash.isstring": "4.0.1", - "lodash.startswith": "4.2.1" - } + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.0.5.tgz", + "integrity": "sha512-qbKn90aDQ0YEwvXoLqj0oiuUYroLX2lVHZ+b+xwjozFasAOC4GneDq5+OaIG5Zj+jFmbz/uO+f7a9qxjktJQww==", + "dev": true }, "update-notifier": { "version": "2.3.0", @@ -11839,15 +12522,15 @@ "integrity": "sha1-TognpruRUUCrCTVZ1wFOPruDdFE=", "dev": true, "requires": { - "boxen": "1.3.0", - "chalk": "2.3.2", - "configstore": "3.1.1", - "import-lazy": "2.1.0", - "is-installed-globally": "0.1.0", - "is-npm": "1.0.0", - "latest-version": "3.1.0", - "semver-diff": "2.1.0", - "xdg-basedir": "3.0.0" + "boxen": "^1.2.1", + "chalk": "^2.0.1", + "configstore": "^3.0.0", + "import-lazy": "^2.1.0", + "is-installed-globally": "^0.1.0", + "is-npm": "^1.0.0", + "latest-version": "^3.0.0", + "semver-diff": "^2.0.0", + "xdg-basedir": "^3.0.0" } }, "update-section": { @@ -11856,6 +12539,23 @@ "integrity": "sha1-RY8Xgg03gg3GDiC4bZQ5GwASMVg=", "dev": true }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + }, + "dependencies": { + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + } + } + }, "urix": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", @@ -11886,100 +12586,23 @@ "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", "dev": true, "requires": { - "prepend-http": "1.0.4" + "prepend-http": "^1.0.1" } }, "use": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/use/-/use-2.0.2.tgz", - "integrity": "sha1-riig1y+TvyJCKhii43mZMRLeyOg=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.0.tgz", + "integrity": "sha512-6UJEQM/L+mzC3ZJNM56Q4DFGLX/evKGRg15UJHGB9X5j5Z3AFbgZvjUh2yq/UJUY4U5dh7Fal++XbNg1uzpRAw==", "dev": true, "requires": { - "define-property": "0.2.5", - "isobject": "3.0.1", - "lazy-cache": "2.0.2" + "kind-of": "^6.0.2" }, "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "0.1.6" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, - "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "1.1.6" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dev": true, - "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "1.1.6" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" - } - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - }, "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", "dev": true - }, - "lazy-cache": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-2.0.2.tgz", - "integrity": "sha1-uRkKT5EzVGlIQIWfio9whNiCImQ=", - "dev": true, - "requires": { - "set-getter": "0.1.0" - } } } }, @@ -11989,7 +12612,7 @@ "integrity": "sha1-nHC/2Babwdy/SGBODwS4tJzenp8=", "dev": true, "requires": { - "os-homedir": "1.0.2" + "os-homedir": "^1.0.0" } }, "util": { @@ -12032,8 +12655,8 @@ "integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==", "dev": true, "requires": { - "spdx-correct": "3.0.0", - "spdx-expression-parse": "3.0.0" + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" } }, "validator": { @@ -12053,9 +12676,9 @@ "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", "dev": true, "requires": { - "assert-plus": "1.0.0", + "assert-plus": "^1.0.0", "core-util-is": "1.0.2", - "extsprintf": "1.3.0" + "extsprintf": "^1.2.0" } }, "vfile": { @@ -12065,9 +12688,9 @@ "dev": true }, "vfile-location": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-2.0.2.tgz", - "integrity": "sha1-02dcWch3SY5JK0dW/2Xkrxp1IlU=", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-2.0.3.tgz", + "integrity": "sha512-zM5/l4lfw1CBoPx3Jimxoc5RNDAHHpk6AM6LM0pTIkm5SUSsx8ZekZ0PVdf0WEZ7kjlhSt7ZlqbRL6Cd6dBs6A==", "dev": true }, "vm-browserify": { @@ -12092,25 +12715,14 @@ "dev": true }, "watchpack": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.4.0.tgz", - "integrity": "sha1-ShRyvLuVK9Cpu0A2gB+VTfs5+qw=", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.5.0.tgz", + "integrity": "sha512-RSlipNQB1u48cq0wH/BNfCu1tD/cJ8ydFIkNYhp9o+3d+8unClkIovpW5qpFPgmL9OE48wfAnlZydXByWP82AA==", "dev": true, "requires": { - "async": "2.6.0", - "chokidar": "1.7.0", - "graceful-fs": "4.1.11" - }, - "dependencies": { - "async": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", - "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", - "dev": true, - "requires": { - "lodash": "4.17.5" - } - } + "chokidar": "^2.0.2", + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0" } }, "wcwidth": { @@ -12119,17 +12731,19 @@ "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", "dev": true, "requires": { - "defaults": "1.0.3" + "defaults": "^1.0.3" } }, "web-ext": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/web-ext/-/web-ext-2.4.0.tgz", - "integrity": "sha1-QQPnNxlusqn+gwh3UjV9Hf5hgpQ=", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/web-ext/-/web-ext-2.7.0.tgz", + "integrity": "sha512-hXj/MV/x6G0oxplOirV4/j7BJ5MZJ2yZHml0gulBr7mH2BMNyTJHdRi+qzVBNPFdBMLV0/PS05YGZ7xr2YmwVA==", "dev": true, "requires": { + "@cliqz-oss/firefox-client": "0.3.1", + "@cliqz-oss/node-firefox-connect": "1.2.1", "adbkit": "2.11.0", - "addons-linter": "0.35.0", + "addons-linter": "1.0.0", "babel-polyfill": "6.26.0", "babel-runtime": "6.26.0", "bunyan": "1.8.12", @@ -12140,23 +12754,23 @@ "es6-promisify": "5.0.0", "event-to-promise": "0.8.0", "firefox-profile": "1.1.0", - "fx-runner": "1.0.8", + "fx-runner": "1.0.9", "git-rev-sync": "1.9.1", "minimatch": "3.0.4", "mkdirp": "0.5.1", "mz": "2.7.0", - "node-firefox-connect": "1.2.0", "node-notifier": "5.2.1", - "open": "0.0.5", + "opn": "5.3.0", "parse-json": "4.0.0", "regenerator-runtime": "0.11.1", "require-uncached": "1.0.3", - "sign-addon": "0.2.2", + "sign-addon": "0.3.1", "source-map-support": "0.5.3", "stream-to-promise": "2.2.0", + "strip-json-comments": "2.0.1", "tmp": "0.0.33", "update-notifier": "2.3.0", - "watchpack": "1.4.0", + "watchpack": "1.5.0", "yargs": "6.6.0", "zip-dir": "1.0.2" }, @@ -12173,9 +12787,9 @@ "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", "dev": true, "requires": { - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wrap-ansi": "2.1.0" + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" } }, "decamelize": { @@ -12193,7 +12807,16 @@ "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" + } + }, + "opn": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.3.0.tgz", + "integrity": "sha512-bYJHo/LOmoTd+pfiYhfZDnf9zekVJrY+cnS2a5F2x+w5ppvTqObojTP7WiFG+kVZs9Inw+qQ/lw7TroWwhdd2g==", + "dev": true, + "requires": { + "is-wsl": "^1.1.0" } }, "os-locale": { @@ -12202,7 +12825,7 @@ "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", "dev": true, "requires": { - "lcid": "1.0.0" + "lcid": "^1.0.0" } }, "parse-json": { @@ -12211,8 +12834,8 @@ "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", "dev": true, "requires": { - "error-ex": "1.3.1", - "json-parse-better-errors": "1.0.1" + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" } }, "string-width": { @@ -12221,9 +12844,9 @@ "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "dev": true, "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "which-module": { @@ -12232,6 +12855,12 @@ "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", "dev": true }, + "xregexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", + "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", + "dev": true + }, "y18n": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", @@ -12244,19 +12873,19 @@ "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=", "dev": true, "requires": { - "camelcase": "3.0.0", - "cliui": "3.2.0", - "decamelize": "1.2.0", - "get-caller-file": "1.0.2", - "os-locale": "1.4.0", - "read-pkg-up": "1.0.1", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "1.0.2", - "which-module": "1.0.0", - "y18n": "3.2.1", - "yargs-parser": "4.2.1" + "camelcase": "^3.0.0", + "cliui": "^3.2.0", + "decamelize": "^1.1.1", + "get-caller-file": "^1.0.1", + "os-locale": "^1.4.0", + "read-pkg-up": "^1.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^1.0.2", + "which-module": "^1.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^4.2.0" }, "dependencies": { "camelcase": { @@ -12279,7 +12908,7 @@ "integrity": "sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=", "dev": true, "requires": { - "camelcase": "3.0.0" + "camelcase": "^3.0.0" }, "dependencies": { "camelcase": { @@ -12299,57 +12928,43 @@ "dev": true }, "webpack": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.1.0.tgz", - "integrity": "sha512-ZFYcAZ44kOT+xsS5MS2H1fQr0PJkwQdYem/d17wacDkkupzsAkBJ3hDShWHdPVvWluFs6pfhHWw/dVso1m0rsA==", - "dev": true, - "requires": { - "acorn": "5.5.0", - "acorn-dynamic-import": "3.0.0", - "ajv": "6.2.0", - "ajv-keywords": "3.1.0", - "chrome-trace-event": "0.1.2", - "enhanced-resolve": "4.0.0", - "eslint-scope": "3.7.1", - "loader-runner": "2.3.0", - "loader-utils": "1.1.0", - "memory-fs": "0.4.1", - "micromatch": "3.1.9", - "mkdirp": "0.5.1", - "neo-async": "2.5.0", - "node-libs-browser": "2.1.0", - "schema-utils": "0.4.5", - "tapable": "1.0.0", - "uglifyjs-webpack-plugin": "1.2.2", - "watchpack": "1.5.0", - "webpack-sources": "1.1.0" + "version": "4.10.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.10.2.tgz", + "integrity": "sha512-S4yIBevM7DFSAOAvWSBgvuH5mtJ3HgjAS6tCGsTxxHtrVdbntdRVaPey2u9sCns6KV859Vwd2DwkvBLTcs6t6g==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.5.9", + "@webassemblyjs/wasm-edit": "1.5.9", + "@webassemblyjs/wasm-opt": "1.5.9", + "@webassemblyjs/wasm-parser": "1.5.9", + "acorn": "^5.0.0", + "acorn-dynamic-import": "^3.0.0", + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0", + "chrome-trace-event": "^0.1.1", + "enhanced-resolve": "^4.0.0", + "eslint-scope": "^3.7.1", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^2.3.0", + "loader-utils": "^1.1.0", + "memory-fs": "~0.4.1", + "micromatch": "^3.1.8", + "mkdirp": "~0.5.0", + "neo-async": "^2.5.0", + "node-libs-browser": "^2.0.0", + "schema-utils": "^0.4.4", + "tapable": "^1.0.0", + "uglifyjs-webpack-plugin": "^1.2.4", + "watchpack": "^1.5.0", + "webpack-sources": "^1.0.1" }, "dependencies": { "acorn": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.5.0.tgz", - "integrity": "sha512-arn53F07VXmls4o4pUhSzBa4fvaagPRe7AVZ8l7NHxFWUie2DsuFSBMMNAkgzRlOhEhzAnxeKyaWVzOH4xqp/g==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.6.0.tgz", + "integrity": "sha512-QatFQ4C0n+PLqemyC6zXEv04tSqRR0hRqe+uGKPEVgKe2G8kl8wJvHzRYWwz6vqqEqt6idPVMFojZ4P1zlyAzQ==", "dev": true }, - "acorn-dynamic-import": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-3.0.0.tgz", - "integrity": "sha512-zVWV8Z8lislJoOKKqdNMOB+s6+XV5WERty8MnKBeFgwA+19XJjJHs2RP5dzM57FftIs+jQnRToLiWazKr6sSWg==", - "dev": true, - "requires": { - "acorn": "5.5.0" - } - }, - "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, - "requires": { - "micromatch": "3.1.9", - "normalize-path": "2.1.1" - } - }, "arr-diff": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", @@ -12363,75 +12978,39 @@ "dev": true }, "braces": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.1.tgz", - "integrity": "sha512-SO5lYHA3vO6gz66erVvedSCkp7AKWdv6VcQ2N4ysXfPxdAlxAMMAdwegGGcv1Bqwm7naF1hNdk5d6AAIEHV2nQ==", - "dev": true, - "requires": { - "arr-flatten": "1.1.0", - "array-unique": "0.3.2", - "define-property": "1.0.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.1.1", - "split-string": "3.1.0", - "to-regex": "3.0.2" + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" }, "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "1.0.2" - } - }, "extend-shallow": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } }, - "chokidar": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.2.tgz", - "integrity": "sha512-l32Hw3wqB0L2kGVmSbK/a+xXLDrUEsc84pSgMkmwygHvD7ubRsP/vxxHa5BtB6oix1XLLVCHyYMsckRXxThmZw==", - "dev": true, - "requires": { - "anymatch": "2.0.0", - "async-each": "1.0.1", - "braces": "2.3.1", - "fsevents": "1.1.3", - "glob-parent": "3.1.0", - "inherits": "2.0.3", - "is-binary-path": "1.0.1", - "is-glob": "4.0.0", - "normalize-path": "2.1.1", - "path-is-absolute": "1.0.1", - "readdirp": "2.1.0", - "upath": "1.0.2" - } - }, - "enhanced-resolve": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.0.0.tgz", - "integrity": "sha512-jox/62b2GofV1qTUQTMPEJSDIGycS43evqYzD/KVtEb9OCoki9cnacUPxCrZa7JfPzZSYOCZhu9O9luaMxAX8g==", - "dev": true, - "requires": { - "graceful-fs": "4.1.11", - "memory-fs": "0.4.1", - "tapable": "1.0.0" - } + "commander": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", + "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==", + "dev": true }, "expand-brackets": { "version": "2.1.4", @@ -12439,13 +13018,13 @@ "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", "dev": true, "requires": { - "debug": "2.6.9", - "define-property": "0.2.5", - "extend-shallow": "2.0.1", - "posix-character-classes": "0.1.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.1", - "to-regex": "3.0.2" + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { @@ -12454,7 +13033,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "extend-shallow": { @@ -12463,7 +13042,47 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } } }, "is-descriptor": { @@ -12472,9 +13091,9 @@ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "dev": true, "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" } }, "kind-of": { @@ -12491,14 +13110,14 @@ "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", "dev": true, "requires": { - "array-unique": "0.3.2", - "define-property": "1.0.0", - "expand-brackets": "2.1.4", - "extend-shallow": "2.0.1", - "fragment-cache": "0.2.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.1", - "to-regex": "3.0.2" + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { @@ -12507,7 +13126,7 @@ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "extend-shallow": { @@ -12516,7 +13135,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -12527,10 +13146,10 @@ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-number": "3.0.0", - "repeat-string": "1.6.1", - "to-regex-range": "2.1.1" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" }, "dependencies": { "extend-shallow": { @@ -12539,85 +13158,38 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" - } - } - } - }, - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, - "requires": { - "is-glob": "3.1.0", - "path-dirname": "1.0.2" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "2.1.1" + "is-extendable": "^0.1.0" } } } }, "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "1.1.6" - } - } + "kind-of": "^6.0.0" } }, "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "1.1.6" - } - } + "kind-of": "^6.0.0" } }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true - }, - "is-glob": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz", - "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-extglob": "2.1.1" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "is-number": { @@ -12626,7 +13198,7 @@ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { @@ -12635,7 +13207,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -12653,41 +13225,56 @@ "dev": true }, "micromatch": { - "version": "3.1.9", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.9.tgz", - "integrity": "sha512-SlIz6sv5UPaAVVFRKodKjCg48EbNoIhgetzfK/Cy0v5U52Z6zB136M8tp0UC9jM53LYbmIRihJszvvqpKkfm9g==", - "dev": true, - "requires": { - "arr-diff": "4.0.0", - "array-unique": "0.3.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.2", - "nanomatch": "1.2.9", - "object.pick": "1.3.0", - "regex-not": "1.0.2", - "snapdragon": "0.8.1", - "to-regex": "3.0.2" - } - }, - "tapable": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.0.0.tgz", - "integrity": "sha512-dQRhbNQkRnaqauC7WqSJ21EEksgT0fYZX2lqXzGkpo8JNig9zGZTYoMGvyI2nWmXlE2VSVXVDu7wLVGu/mQEsg==", + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.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.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true }, - "watchpack": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.5.0.tgz", - "integrity": "sha512-RSlipNQB1u48cq0wH/BNfCu1tD/cJ8ydFIkNYhp9o+3d+8unClkIovpW5qpFPgmL9OE48wfAnlZydXByWP82AA==", + "uglify-es": { + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", + "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "dev": true, + "requires": { + "commander": "~2.13.0", + "source-map": "~0.6.1" + } + }, + "uglifyjs-webpack-plugin": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.5.tgz", + "integrity": "sha512-hIQJ1yxAPhEA2yW/i7Fr+SXZVMp+VEI3d42RTHBgQd2yhp/1UdBcR3QEWPV5ahBxlqQDMEMTuTEvDHSFINfwSw==", "dev": true, "requires": { - "chokidar": "2.0.2", - "graceful-fs": "4.1.11", - "neo-async": "2.5.0" + "cacache": "^10.0.4", + "find-cache-dir": "^1.0.0", + "schema-utils": "^0.4.5", + "serialize-javascript": "^1.4.0", + "source-map": "^0.6.1", + "uglify-es": "^3.3.4", + "webpack-sources": "^1.1.0", + "worker-farm": "^1.5.2" } } } @@ -12698,7 +13285,7 @@ "integrity": "sha512-/0QYwW/H1N/CdXYA2PNPVbsxO3u2Fpz34vs72xm03SRfg6bMNGfMJIQEpQjKRvkG2JvT6oRJFpDtSrwbX8Jzvw==", "dev": true, "requires": { - "lodash": "4.17.5" + "lodash": "^4.17.5" } }, "webpack-sources": { @@ -12707,8 +13294,8 @@ "integrity": "sha512-aqYp18kPphgoO5c/+NaUvEeACtZjMESmDChuD3NBciVpah3XpMEU9VAAtIaB1BsfJWWTSdv8Vv1m3T0aRk2dUw==", "dev": true, "requires": { - "source-list-map": "2.0.0", - "source-map": "0.6.1" + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" }, "dependencies": { "source-map": { @@ -12725,8 +13312,8 @@ "integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=", "dev": true, "requires": { - "http-parser-js": "0.4.10", - "websocket-extensions": "0.1.3" + "http-parser-js": ">=0.4.0", + "websocket-extensions": ">=0.1.1" } }, "websocket-extensions": { @@ -12736,14 +13323,14 @@ "dev": true }, "whatwg-url": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.3.0.tgz", - "integrity": "sha512-rM+hE5iYKGPAOu05mIdJR47pYSR2vDzfrTEFRc/S8D3L60yW8BuXmUJ7Kog7x/DrokFN7JNaHKadpzjouKRRAw==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.4.1.tgz", + "integrity": "sha512-FwygsxsXx27x6XXuExA/ox3Ktwcbf+OAvrKmLulotDAiO1Q6ixchPFaHYsis2zZBZSJTR0+dR+JVtf7MlbqZjw==", "dev": true, "requires": { - "lodash.sortby": "4.7.0", - "tr46": "1.0.1", - "webidl-conversions": "4.0.2" + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" } }, "when": { @@ -12758,7 +13345,7 @@ "integrity": "sha1-mofEN48D6CfOyvGs31bHNsAcFOU=", "dev": true, "requires": { - "isexe": "2.0.0" + "isexe": "^2.0.0" } }, "which-module": { @@ -12773,7 +13360,16 @@ "integrity": "sha1-AUKk6KJD+IgsAjOqDgKBqnYVInM=", "dev": true, "requires": { - "string-width": "2.1.1" + "string-width": "^2.1.1" + } + }, + "win-release": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/win-release/-/win-release-1.1.1.tgz", + "integrity": "sha1-X6VeAr58qTTt/BJmVjLoSbcuUgk=", + "dev": true, + "requires": { + "semver": "^5.0.1" } }, "window-size": { @@ -12794,8 +13390,8 @@ "integrity": "sha1-+k2qktrzLE6pTtRTyB8EaGtXXf4=", "dev": true, "requires": { - "acorn": "3.3.0", - "acorn-globals": "3.1.0" + "acorn": "^3.1.0", + "acorn-globals": "^3.0.0" } }, "wordwrap": { @@ -12810,8 +13406,8 @@ "integrity": "sha512-ITyClEvcfv0ozqJl1vmWFWhvI+OIrkbInYqkEPE50wFPXj8J9Gd3FYf8+CkZJXJJsQBYe+2DvmoK9Zhx5w8W+w==", "dev": true, "requires": { - "errno": "0.1.7", - "xtend": "4.0.1" + "errno": "~0.1.7", + "xtend": "~4.0.1" } }, "wrap-ansi": { @@ -12820,8 +13416,8 @@ "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", "dev": true, "requires": { - "string-width": "1.0.2", - "strip-ansi": "3.0.1" + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" }, "dependencies": { "is-fullwidth-code-point": { @@ -12830,7 +13426,7 @@ "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "string-width": { @@ -12839,9 +13435,9 @@ "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "dev": true, "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } } } @@ -12858,7 +13454,7 @@ "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", "dev": true, "requires": { - "mkdirp": "0.5.1" + "mkdirp": "^0.5.1" } }, "write-file-atomic": { @@ -12867,9 +13463,9 @@ "integrity": "sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "imurmurhash": "0.1.4", - "signal-exit": "3.0.2" + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" } }, "ws": { @@ -12878,9 +13474,9 @@ "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", "dev": true, "requires": { - "async-limiter": "1.0.0", - "safe-buffer": "5.1.1", - "ultron": "1.1.1" + "async-limiter": "~1.0.0", + "safe-buffer": "~5.1.0", + "ultron": "~1.1.0" } }, "xdg-basedir": { @@ -12895,8 +13491,8 @@ "integrity": "sha1-TfIzjszRSRT62wHP4ieo+FrXvjU=", "dev": true, "requires": { - "global": "4.3.2", - "url": "0.11.0" + "global": "^4.3.0", + "url": "^0.11.0" } }, "xml2js": { @@ -12905,8 +13501,8 @@ "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", "dev": true, "requires": { - "sax": "1.2.4", - "xmlbuilder": "9.0.7" + "sax": ">=0.6.0", + "xmlbuilder": "~9.0.1" }, "dependencies": { "sax": { @@ -12930,9 +13526,9 @@ "dev": true }, "xregexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", - "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz", + "integrity": "sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM=", "dev": true }, "xtend": { @@ -12959,9 +13555,9 @@ "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", "dev": true, "requires": { - "camelcase": "1.2.1", - "cliui": "2.1.0", - "decamelize": "1.2.0", + "camelcase": "^1.0.2", + "cliui": "^2.1.0", + "decamelize": "^1.0.0", "window-size": "0.1.0" }, "dependencies": { @@ -12974,12 +13570,12 @@ } }, "yargs-parser": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-8.1.0.tgz", - "integrity": "sha512-yP+6QqN8BmrgW2ggLtTbdrOyBNSI7zBa4IykmiV5R1wl1JWNxQvWhMfMdmzIYtKU7oP3OOInY/tl2ov3BDjnJQ==", + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-9.0.2.tgz", + "integrity": "sha1-nM9qQ0YP5O1Aqbto9I1DuKaMwHc=", "dev": true, "requires": { - "camelcase": "4.1.0" + "camelcase": "^4.1.0" }, "dependencies": { "camelcase": { @@ -12996,7 +13592,16 @@ "integrity": "sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU=", "dev": true, "requires": { - "fd-slicer": "1.0.1" + "fd-slicer": "~1.0.1" + } + }, + "zip": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/zip/-/zip-1.2.0.tgz", + "integrity": "sha1-rQrUImUwm+QutW/IYZThfCTmapw=", + "dev": true, + "requires": { + "bops": "~0.1.1" } }, "zip-dir": { @@ -13005,8 +13610,8 @@ "integrity": "sha1-JT+QeurWKiGs2HIdi4gDKyQRwFE=", "dev": true, "requires": { - "async": "1.5.2", - "jszip": "2.6.1" + "async": "^1.5.2", + "jszip": "^2.4.0" } }, "zip-stream": { @@ -13015,10 +13620,10 @@ "integrity": "sha1-qLxF9MG0lpnGuQGYuqyqzbzUugQ=", "dev": true, "requires": { - "archiver-utils": "1.3.0", - "compress-commons": "1.2.2", - "lodash": "4.17.5", - "readable-stream": "2.3.4" + "archiver-utils": "^1.3.0", + "compress-commons": "^1.2.0", + "lodash": "^4.8.0", + "readable-stream": "^2.0.0" } } } diff --git a/package.json b/package.json index 507ecec3..4d4c92b4 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,7 @@ "grunt-contrib-copy": "^1.0.0", "grunt-contrib-pug": "^1.0.0", "grunt-contrib-stylus": "^1.2.0", - "grunt-contrib-watch": "^1.0.0", + "grunt-contrib-watch": "^1.1.0", "grunt-crx": "^1.0.5", "grunt-exec": "^3.0.0", "grunt-mocha-test": "^0.13.3", @@ -55,8 +55,8 @@ "tippy.js": "^2.3.0", "tv4-formats": "^3.0.3", "uglifyjs-webpack-plugin": "^1.1.6", - "web-ext": "^2.4.0", - "webpack": "^4.1.0", + "web-ext": "^2.7.0", + "webpack": "^4.10.2", "webpack-merge": "^4.1.1", "xhr-mock": "^2.0.3" }, From c7ee13dcbacbacbdefde9340dbb1af6eff4fa595 Mon Sep 17 00:00:00 2001 From: Sunny Sharma Date: Sat, 2 Jun 2018 17:41:59 +0530 Subject: [PATCH 061/456] fixed a typo --- views/token-editor-common.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/token-editor-common.pug b/views/token-editor-common.pug index 7c5bc138..93e3a32d 100644 --- a/views/token-editor-common.pug +++ b/views/token-editor-common.pug @@ -35,5 +35,5 @@ base64UrlEncode(header) + "." + base64UrlEncode(payload), , - + ) From 923d1a61dc1061ec4261b9ed5dbbed4bb0e3bed6 Mon Sep 17 00:00:00 2001 From: ZiHang Gao Date: Mon, 4 Jun 2018 14:13:47 +0800 Subject: [PATCH 062/456] New: PHP implementation --- views/website/libraries/24-PHP.json | 30 ++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/24-PHP.json b/views/website/libraries/24-PHP.json index f5a520c1..cb0c069d 100644 --- a/views/website/libraries/24-PHP.json +++ b/views/website/libraries/24-PHP.json @@ -227,6 +227,34 @@ "gitHubRepoPath": "lindelius/php-jwt", "repoUrl": "https://github.com/lindelius/php-jwt", "installCommandHtml": "composer require lindelius/php-jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true + }, + "authorUrl": "https://github.com/cdoco", + "authorName": "ZiHang Gao", + "gitHubRepoPath": "cdoco/php-jwt", + "repoUrl": "https://github.com/cdoco/php-jwt", + "installCommandHtml": "git clone https://github.com/cdoco/php-jwt" } ] -} \ No newline at end of file +} From ae2833adf50fc447d01995717289295b5636a704 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 6 Jun 2018 01:12:21 -0300 Subject: [PATCH 063/456] Improved selection of browsers to support. --- webpack.common.js | 14 +++++++++++--- webpack.website-unit-tests.js | 14 +++++++++++--- 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/webpack.common.js b/webpack.common.js index e9bd0487..25e40aa0 100644 --- a/webpack.common.js +++ b/webpack.common.js @@ -1,7 +1,7 @@ const webpack = require('webpack'); module.exports = { - devtool: 'source-map', + devtool: 'source-map', module: { rules: [{ test: /\.js$/, @@ -12,9 +12,17 @@ module.exports = { presets: [[ '@babel/preset-env', { targets: { - browsers: ["last 5 versions", "safari >= 7"] + browsers: [ + '> 0.25%', + 'not dead', + ], + android: 7, + ios: 10, + ie: 11, }, - modules: false + modules: 'commonjs', + "useBuiltIns": 'usage', + "debug": false } ]] } diff --git a/webpack.website-unit-tests.js b/webpack.website-unit-tests.js index 8900ff4d..91ac6e30 100644 --- a/webpack.website-unit-tests.js +++ b/webpack.website-unit-tests.js @@ -25,11 +25,19 @@ module.exports = merge(common, { presets: [[ '@babel/preset-env', { targets: { - browsers: ["last 5 versions", "safari >= 7"] + browsers: [ + '> 0.25%', + 'not dead', + ], + android: 7, + ios: 10, + ie: 11, }, - modules: 'commonjs' + modules: 'commonjs', + "useBuiltIns": 'usage', + "debug": false } - ]] + ]], } } }] From 6554276d34a817daf27bb95df678160db84893e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 6 Jun 2018 01:12:44 -0300 Subject: [PATCH 064/456] Removed jsrsasign in favor of node-jose. --- LICENSE.txt | 140 -------- package-lock.json | 190 +++++++++-- package.json | 5 +- src/editor/default-tokens.js | 70 ++-- src/editor/index.js | 103 +++--- src/editor/jwt.js | 126 ++++--- src/editor/secret-length-tooltip.js | 10 +- src/utils.js | 10 +- test/functional/default-tokens.js | 101 ------ test/functional/editor.js | 493 ++++++++++++++++------------ test/functional/tokens.js | 27 +- test/functional/utils.js | 8 +- test/unit/editor/jwt.js | 200 +++++------ test/unit/utils.js | 3 +- views/token-editor-algorithms.pug | 6 +- 15 files changed, 777 insertions(+), 715 deletions(-) delete mode 100644 test/functional/default-tokens.js diff --git a/LICENSE.txt b/LICENSE.txt index 3278f02f..e39bd6be 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -27,143 +27,3 @@ libraries. Additional licenses from these libraries can be found below. ---- -The 'jsrsasign'(RSA-Sign JavaScript Library) License - -Copyright (c) 2010-2018 Kenji Urushima - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - -LICENSE: BSD License -Files: node_modules/jsrsasign/** ----- - -RSA and ECC in JavaScript - -Copyright (c) 2003-2005 Tom Wu All Rights Reserved. - -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, -EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY -WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. - -IN NO EVENT SHALL TOM WU BE LIABLE FOR ANY SPECIAL, INCIDENTAL, -INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER -RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF -THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT -OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - -In addition, the following condition applies: - -All redistributions must retain an intact copy of this copyright notice -and disclaimer. - -http://www-cs-students.stanford.edu/~tjw/jsbn/ -LICENSE: BSD License -FILES: node_modules/jsrsasign/ext/{base64,jsbn,jsbn2,prgn4,rng,rsa,rsa2}.js ----- - -CryptoJS - -Copyright (c) 2009-2013 Jeff Mott - -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -https://code.google.com/p/crypto-js/wiki/License -FILES: node_modules/jsrsasign/ext/cryptojs-*.js ----- - -YUI Library - -Software License Agreement (BSD License) - -Copyright c 2013 Yahoo! Inc. All rights reserved. - -Redistribution and use of this software in source and binary forms, -with or without modification, are permitted provided that the -following conditions are met: - -- Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - -- Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - -- Neither the name of Yahoo! Inc. nor the names of YUI's contributors - may be used to endorse or promote products derived from this - software without specific prior written permission of Yahoo! Inc. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -http://yuilibrary.com/license/ -LICENSE: BSD License -FILES: node_modules/jsrsasign/ext/yui*.js ----- - -Bitcoin JS - -Copyright (c) 2011 Stefan Thomas - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -https://github.com/bitcoinjs/bitcoinjs-lib -LICENSE: MIT License -FILES: node_modules/jsrsasign/src/ecdsa-modified.js node_modules/jsrsasign/src/ec-patch.js ----- diff --git a/package-lock.json b/package-lock.json index 1d3c539f..cbed9e88 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1962,6 +1962,42 @@ } } }, + "babel-helper-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", + "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", + "dev": true, + "requires": { + "babel-helper-get-function-arity": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helper-get-function-arity": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", + "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-helper-remap-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", + "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", + "dev": true, + "requires": { + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, "babel-helpers": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", @@ -1992,6 +2028,23 @@ "babel-runtime": "^6.22.0" } }, + "babel-plugin-syntax-async-functions": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", + "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", + "dev": true + }, + "babel-plugin-transform-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", + "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", + "dev": true, + "requires": { + "babel-helper-remap-async-to-generator": "^6.24.1", + "babel-plugin-syntax-async-functions": "^6.8.0", + "babel-runtime": "^6.22.0" + } + }, "babel-polyfill": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", @@ -2210,6 +2263,12 @@ "integrity": "sha1-Ak8Pcq+iW3X5wO5zzU9V7Bvtl4Q=", "dev": true }, + "base64url": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.0.tgz", + "integrity": "sha512-LIVmqIrIWuiqTvn4RzcrwCOuHo2DD6tKmKBPXXlr4p4n4l6BZBkwFTIa3zu1XkX5MbZgro4a6BvPi+n2Mns5Gg==", + "dev": true + }, "basic-auth": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.0.tgz", @@ -4746,6 +4805,12 @@ "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", "dev": true }, + "esm": { + "version": "3.0.47", + "resolved": "https://registry.npmjs.org/esm/-/esm-3.0.47.tgz", + "integrity": "sha512-SkYEU0ZR/4hj9QxMAIk1oU2Y20bJOby8QvCgQMHVBwWSNFXbB7z8q1I7lp4ppn1Nwbx9xLKbB+atRbMSMd7ICQ==", + "dev": true + }, "espree": { "version": "3.5.4", "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz", @@ -5418,14 +5483,12 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, - "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -5440,20 +5503,17 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "core-util-is": { "version": "1.0.2", @@ -5570,8 +5630,7 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "ini": { "version": "1.3.5", @@ -5583,7 +5642,6 @@ "version": "1.0.0", "bundled": true, "dev": true, - "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -5598,7 +5656,6 @@ "version": "3.0.4", "bundled": true, "dev": true, - "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -5606,14 +5663,12 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "minipass": { "version": "2.2.4", "bundled": true, "dev": true, - "optional": true, "requires": { "safe-buffer": "^5.1.1", "yallist": "^3.0.0" @@ -5632,7 +5687,6 @@ "version": "0.5.1", "bundled": true, "dev": true, - "optional": true, "requires": { "minimist": "0.0.8" } @@ -5713,8 +5767,7 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "object-assign": { "version": "4.1.1", @@ -5726,7 +5779,6 @@ "version": "1.4.0", "bundled": true, "dev": true, - "optional": true, "requires": { "wrappy": "1" } @@ -5848,7 +5900,6 @@ "version": "1.0.2", "bundled": true, "dev": true, - "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -7732,12 +7783,6 @@ "verror": "1.10.0" } }, - "jsrsasign": { - "version": "8.0.6", - "resolved": "https://registry.npmjs.org/jsrsasign/-/jsrsasign-8.0.6.tgz", - "integrity": "sha1-RYbwCCPjAuWZokSke+IMYardD88=", - "dev": true - }, "jstransformer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", @@ -7932,12 +7977,24 @@ "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=", "dev": true }, + "lodash.clone": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clone/-/lodash.clone-4.5.0.tgz", + "integrity": "sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y=", + "dev": true + }, "lodash.clonedeep": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", "dev": true }, + "lodash.fill": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/lodash.fill/-/lodash.fill-3.4.0.tgz", + "integrity": "sha1-o8dK5kDQU63w3CB5+HIHiOi/74U=", + "dev": true + }, "lodash.flatten": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", @@ -7956,6 +8013,12 @@ "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8=", "dev": true }, + "lodash.intersection": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.intersection/-/lodash.intersection-4.4.0.tgz", + "integrity": "sha1-ChG6Yx0OlcI8fy9Mu5ppLtF45wU=", + "dev": true + }, "lodash.isboolean": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", @@ -7986,12 +8049,36 @@ "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=", "dev": true }, + "lodash.merge": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.1.tgz", + "integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==", + "dev": true + }, + "lodash.omit": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.omit/-/lodash.omit-4.5.0.tgz", + "integrity": "sha1-brGa5aHuHdnfC5aeZs4Lf6MLXmA=", + "dev": true + }, "lodash.once": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=", "dev": true }, + "lodash.partialright": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/lodash.partialright/-/lodash.partialright-4.2.1.tgz", + "integrity": "sha1-ATDYDoM2MmTUAHTzKbij56ihzEs=", + "dev": true + }, + "lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=", + "dev": true + }, "lodash.set": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz", @@ -8004,6 +8091,12 @@ "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", "dev": true }, + "lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", + "dev": true + }, "loglevel": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.1.tgz", @@ -8795,6 +8888,43 @@ "integrity": "sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ==", "dev": true }, + "node-jose": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-jose/-/node-jose-1.0.0.tgz", + "integrity": "sha512-RE3P8l60Rj9ELrpPmvw6sOQ1hSyYfmQdNUMCa4EN7nCE1ux5JVX+GfXv+mfUTEMhZwNMwxBtI0+X1CKKeukSVQ==", + "dev": true, + "requires": { + "base64url": "^3.0.0", + "es6-promise": "^4.0.5", + "lodash.assign": "^4.0.8", + "lodash.clone": "^4.3.2", + "lodash.fill": "^3.2.2", + "lodash.flatten": "^4.2.0", + "lodash.intersection": "^4.1.2", + "lodash.merge": "^4.3.5", + "lodash.omit": "^4.2.1", + "lodash.partialright": "^4.1.3", + "lodash.pick": "^4.2.0", + "lodash.uniq": "^4.2.1", + "long": "^4.0.0", + "node-forge": "^0.7.1", + "uuid": "^3.0.1" + }, + "dependencies": { + "es6-promise": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.4.tgz", + "integrity": "sha512-/NdNZVJg+uZgtm9eS3O6lrOLYmQag2DjdEXuPaHlZ6RuVqgqaVZfgYCepEIKsLqwdQArOPtC3XzRLqGGfT8KQQ==", + "dev": true + }, + "long": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", + "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==", + "dev": true + } + } + }, "node-libs-browser": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.1.0.tgz", @@ -9625,6 +9755,12 @@ "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", "dev": true }, + "promise.any": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/promise.any/-/promise.any-0.1.1.tgz", + "integrity": "sha1-Fg+JisPHW1y7cw/yOgyi8XQHvzo=", + "dev": true + }, "proxy-addr": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.3.tgz", diff --git a/package.json b/package.json index 4d4c92b4..f7dcdaa1 100644 --- a/package.json +++ b/package.json @@ -15,6 +15,7 @@ "@babel/polyfill": "^7.0.0-beta.37", "@babel/preset-env": "^7.0.0-beta.36", "babel-loader": "^8.0.0-beta.0", + "babel-plugin-transform-async-to-generator": "^6.24.1", "bootstrap": "^3.3.7", "chai": "^4.1.2", "chai-arrays": "^2.0.0", @@ -23,6 +24,7 @@ "clipboard-polyfill": "^2.4.6", "codemirror": "^5.33.0", "deep-freeze": "0.0.1", + "esm": "^3.0.47", "flipclock": "^0.7.8", "grunt": "^1.0.1", "grunt-cli": "^1.2.0", @@ -40,11 +42,12 @@ "inject-loader": "^3.0.1", "isotope-layout": "^3.0.5", "jquery": "^3.2.1", - "jsrsasign": "^8.0.4", "jstransformer-markdown-it": "^2.0.0", "lodash": "^4.17.4", "loglevel": "^1.6.1", "mocha": "^5.0.0", + "node-jose": "^1.0.0", + "promise.any": "^0.1.1", "pug": "^2.0.0-rc.4", "puppeteer": "^1.0.0", "request-promise-native": "^1.0.5", diff --git a/src/editor/default-tokens.js b/src/editor/default-tokens.js index 8d582165..337053aa 100644 --- a/src/editor/default-tokens.js +++ b/src/editor/default-tokens.js @@ -1,8 +1,8 @@ // Yes, all keys here are supposed to be exposed, you can commit // them safely to GitHub. -const rsaPrivateKey = -`-----BEGIN RSA PRIVATE KEY----- +const rsaPrivateKey = +`-----BEGIN RSA PRIVATE KEY----- MIICWwIBAAKBgQDdlatRjRjogo3WojgGHFHYLugdUWAY9iR3fy4arWNA1KoS8kVw 33cJibXr8bvwUAUparCwlvdbH6dvEOfou0/gCFQsHUfQrSDv+MuSUMAe8jzKE4qW +jK+xQU9a03GUnKHkkle+Q0pX/g6jXZ7r1/xAK5Do2kQ+X5xK9cipRgEKwIDAQAB @@ -18,7 +18,7 @@ Y0sz/OZtSWcol/UMgQJALesy++GdvoIDLfJX5GBQpuFgFenRiRDabxrE9MNUZ2aP FaFp+DyAe+b4nDwuJaW2LURbr8AEZga7oQj0uYxcYw== -----END RSA PRIVATE KEY-----`; -const rsaPublicKey = +const rsaPublicKey = `-----BEGIN PUBLIC KEY----- MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDdlatRjRjogo3WojgGHFHYLugd UWAY9iR3fy4arWNA1KoS8kVw33cJibXr8bvwUAUparCwlvdbH6dvEOfou0/gCFQs @@ -26,24 +26,56 @@ HUfQrSDv+MuSUMAe8jzKE4qW+jK+xQU9a03GUnKHkkle+Q0pX/g6jXZ7r1/xAK5D o2kQ+X5xK9cipRgEKwIDAQAB -----END PUBLIC KEY-----`; -const ecPrivateKey = +const ecPrivateKey256 = `-----BEGIN PRIVATE KEY----- -MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgevZzL1gdAFr88hb2 +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgevZzL1gdAFr88hb2 OF/2NxApJCzGCEDdfSp6VQO30hyhRANCAAQRWz+jn65BtOMvdyHKcvjBeBSDZH2r 1RTwjmYSi9R/zpBnuQ4EiMnCqfMPWiZqB4QdbAd0E7oH50VpuZ1P087G -----END PRIVATE KEY-----`; -const ecPublicKey = +const ecPublicKey256 = `-----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEEVs/o5+uQbTjL3chynL4wXgUg2R9 q9UU8I5mEovUf86QZ7kOBIjJwqnzD1omageEHWwHdBO6B+dFabmdT9POxg== -----END PUBLIC KEY-----`; +const ecPrivateKey384 = +`-----BEGIN EC PRIVATE KEY----- +MIGkAgEBBDCAHpFQ62QnGCEvYh/pE9QmR1C9aLcDItRbslbmhen/h1tt8AyMhske +enT+rAyyPhGgBwYFK4EEACKhZANiAAQLW5ZJePZzMIPAxMtZXkEWbDF0zo9f2n4+ +T1h/2sh/fviblc/VTyrv10GEtIi5qiOy85Pf1RRw8lE5IPUWpgu553SteKigiKLU +PeNpbqmYZUkWGh3MLfVzLmx85ii2vMU= +-----END EC PRIVATE KEY-----`; + +const ecPublicKey384 = +`-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEC1uWSXj2czCDwMTLWV5BFmwxdM6PX9p+ +Pk9Yf9rIf374m5XP1U8q79dBhLSIuaojsvOT39UUcPJROSD1FqYLued0rXiooIii +1D3jaW6pmGVJFhodzC31cy5sfOYotrzF +-----END PUBLIC KEY-----`; + +const ecPrivateKey521 = +`-----BEGIN EC PRIVATE KEY----- +MIHcAgEBBEIBiyAa7aRHFDCh2qga9sTUGINE5jHAFnmM8xWeT/uni5I4tNqhV5Xx +0pDrmCV9mbroFtfEa0XVfKuMAxxfZ6LM/yKgBwYFK4EEACOhgYkDgYYABAGBzgdn +P798FsLuWYTDDQA7c0r3BVk8NnRUSexpQUsRilPNv3SchO0lRw9Ru86x1khnVDx+ +duq4BiDFcvlSAcyjLACJvjvoyTLJiA+TQFdmrearjMiZNE25pT2yWP1NUndJxPcv +VtfBW48kPOmvkY4WlqP5bAwCXwbsKrCgk6xbsp12ew== +-----END EC PRIVATE KEY-----`; + +const ecPublicKey521 = +`-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBgc4HZz+/fBbC7lmEww0AO3NK9wVZ +PDZ0VEnsaUFLEYpTzb90nITtJUcPUbvOsdZIZ1Q8fnbquAYgxXL5UgHMoywAib47 +6MkyyYgPk0BXZq3mq4zImTRNuaU9slj9TVJ3ScT3L1bXwVuPJDzpr5GOFpaj+WwM +Al8G7CqwoJOsW7Kddns= +-----END PUBLIC KEY-----`; + export default { hs256: { token: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c', secret: 'your-256-bit-secret' - }, + }, hs384: { token: 'eyJhbGciOiJIUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.bQTnz6AuMJvmXXQsVPrxeQNvzDkimo7VNXxHeSBfClLufmCVZRUuyTwJF311JHuh', secret: 'your-384-bit-secret' @@ -69,19 +101,19 @@ export default { }, es256: { token: 'eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.tyh-VfuzIxCyGYDlkBA7DfyjrqmSHu6pQ2hoZuFqUSLPNY2N0mpHb3nk5K17HWP_3cYHBw7AhHale5wky6-sVA', - privateKey: ecPrivateKey, - publicKey: ecPublicKey + privateKey: ecPrivateKey256, + publicKey: ecPublicKey256 }, es384: { - token: 'eyJhbGciOiJFUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.bmnmBALgkWpJ_wRTj6gJpmEpq6SzvYlgViuNTTHxJYSLseeRyjkIAXlJHT1s1ygi3UCzh4jfIymjHOlqVFIk1A', - privateKey: ecPrivateKey, - publicKey: ecPublicKey + token: 'eyJhbGciOiJFUzM4NCIsInR5cCI6IkpXVCIsImtpZCI6ImlUcVhYSTB6YkFuSkNLRGFvYmZoa00xZi02ck1TcFRmeVpNUnBfMnRLSTgifQ.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.cJOP_w-hBqnyTsBm3T6lOE5WpcHaAkLuQGAs1QO-lg2eWs8yyGW8p9WagGjxgvx7h9X72H7pXmXqej3GdlVbFmhuzj45A9SXDOAHZ7bJXwM1VidcPi7ZcrsMSCtP1hiN', + privateKey: ecPrivateKey384, + publicKey: ecPublicKey384 + }, + es512: { + token: 'eyJhbGciOiJFUzUxMiIsInR5cCI6IkpXVCIsImtpZCI6InhaRGZacHJ5NFA5dlpQWnlHMmZOQlJqLTdMejVvbVZkbTd0SG9DZ1NOZlkifQ.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.AP_CIMClixc5-BFflmjyh_bRrkloEvwzn8IaWJFfMz13X76PGWF0XFuhjJUjp7EYnSAgtjJ-7iJG4IP7w3zGTBk_AUdmvRCiWp5YAe8S_Hcs8e3gkeYoOxiXFZlSSAx0GfwW1cZ0r67mwGtso1I3VXGkSjH5J0Rk6809bn25GoGRjOPu', + privateKey: ecPrivateKey521, + publicKey: ecPublicKey521 }, - /*es512: { - token: '', - privateKey: ecPrivateKey, - publicKey: ecPublicKey - },*/ ps256: { token: 'eyJhbGciOiJQUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.P9_X1ctIxnnoUpKSWpYw3rF62e-d8LXe3sETuLn4Lhigw5OQhi-mBBKoBMneHy4kimS84zxnMby0FYo9wKM3I3pEg8Qrz0Q00tNhKCwOnZ7Q-e86sW1luK1z82tufF-sZ9_BY_LGQsym0lQmQaHFzLmEDXnOzWsjUThHGVJTI64', privateKey: rsaPrivateKey, @@ -91,8 +123,8 @@ export default { token: 'eyJhbGciOiJQUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.oywIg-I6w59yw9jiPxewn5n2BhrD7hSifWSmzFKGBMPEMd0qweVNjlyxu2TodunPzlh49OW8QA0ygNRL9VQrWA3GXzb5FubNF4s7Y15QePx52anlvebzihx5-hR0UhKbVC0UODwYNMiY-v0L7iMbT9UvuSj0GAuZMxndo2Y2VFQ', privateKey: rsaPrivateKey, publicKey: rsaPublicKey - }, - /*ps512: { + }/*, + ps512: { token: '', privateKey: rsaPrivateKey, publicKey: rsaPublicKey diff --git a/src/editor/index.js b/src/editor/index.js index 3e25d3c9..1e6ec966 100644 --- a/src/editor/index.js +++ b/src/editor/index.js @@ -1,12 +1,12 @@ -import { +import { deferToNextLoop, safeLocalStorageSetItem, - copyTokenLink + copyTokenLink } from '../utils.js'; import { downloadPublicKeyIfPossible } from './public-key-download.js'; import { setupClaimsTooltip } from './claims-tooltip.js'; import { tokenEditor, headerEditor, payloadEditor } from './instances.js'; -import { +import { getTrimmedValue, stringify, fixEditorHeight, @@ -16,12 +16,12 @@ import { sign, verify, decode } from './jwt.js'; import EventManager from './event-manager.js'; import strings from '../strings.js'; import defaultTokens from './default-tokens.js'; -import { +import { minSecretLengthCheck, - setupSecretLengthTooltip + setupSecretLengthTooltip } from './secret-length-tooltip.js'; -import { - algorithmSelect, +import { + algorithmSelect, signatureStatusElement, editorElement, headerElement, @@ -59,7 +59,7 @@ function isPublicKeyAlgorithm(algorithm) { function markAsInvalid() { signatureStatusElement.classList.remove('valid-token'); signatureStatusElement.classList.add('invalid-token'); - signatureStatusElement.innerHTML = + signatureStatusElement.innerHTML = ` ${strings.editor.signatureInvalid}`; } @@ -71,7 +71,7 @@ function markAsValid() { signatureStatusElement.classList.remove('invalid-token'); signatureStatusElement.classList.add('valid-token'); - signatureStatusElement.innerHTML = + signatureStatusElement.innerHTML = ` ${strings.editor.signatureVerified}`; } @@ -100,9 +100,9 @@ function displaySecretOrKeys(algorithm) { function selectAlgorithm(algorithm) { eventManager.withDisabledEvents(() => { - const selected = + const selected = algorithmSelect.querySelector(`option[value="${algorithm}"]`); - + if(!selected) { log.info(`Invalid algorithm ${algorithm}, ignoring...`); return; @@ -110,7 +110,7 @@ function selectAlgorithm(algorithm) { selected.selected = true; - displaySecretOrKeys(algorithm); + displaySecretOrKeys(algorithm); }); } @@ -129,10 +129,10 @@ export function useDefaultToken(algorithm) { const defaults = defaultTokens[algorithm.toLowerCase()]; const decoded = decode(defaults.token); - tokenEditor.setValue(defaults.token); + tokenEditor.setValue(defaults.token); headerEditor.setValue(stringify(decoded.header)); payloadEditor.setValue(stringify(decoded.payload)); - + if(isSharedSecretAlgorithm(algorithm)) { secretInput.value = defaults.secret; } else { @@ -170,7 +170,7 @@ function setAlgorithmInHeader(algorithm) { function algorithmChangeHandler() { const algorithm = getSelectedAlgorithm(); - + displaySecretOrKeys(algorithm); if(isDefaultToken(getTrimmedValue(tokenEditor))) { @@ -183,10 +183,10 @@ function algorithmChangeHandler() { function markAsInvalidWithElement(element, clearTokenEditor = true) { element.classList.add('error'); markAsInvalid(); - + if(clearTokenEditor) { - eventManager.withDisabledEvents(() => { - tokenEditor.setValue(''); + eventManager.withDisabledEvents(() => { + tokenEditor.setValue(''); }); } } @@ -208,7 +208,7 @@ function loadToken() { if(lastToken) { setTokenEditorValue(lastToken); - + const lastPublicKey = localStorage.getItem('lastPublicKey'); if(lastPublicKey) { publicKeyTextArea.value = lastPublicKey; @@ -245,23 +245,24 @@ function encodeToken() { return; } - try { - const encoded = sign(header, payload, - isSharedSecretAlgorithm(header.alg) ? - secretInput.value : - privateKeyTextArea.value, - secretBase64Checkbox.checked); - - tokenEditor.setValue(encoded); - - saveAsLastToken(); - } catch(e) { - log.warn('Failed to sign/encode token: ', e); - markAsInvalid(); - tokenEditor.setValue(''); - } + const key = isSharedSecretAlgorithm(header.alg) ? + secretInput.value : + privateKeyTextArea.value; - verifyToken(); + sign(header, payload, key, secretBase64Checkbox.checked).then(encoded => { + eventManager.withDisabledEvents(() => { + tokenEditor.setValue(encoded); + saveAsLastToken(); + }); + }).catch(e => { + eventManager.withDisabledEvents(() => { + log.warn('Failed to sign/encode token: ', e); + markAsInvalid(); + tokenEditor.setValue(''); + }) + }).finally(() => { + verifyToken(); + }); }); } @@ -272,7 +273,7 @@ function decodeToken() { try { const jwt = getTrimmedValue(tokenEditor); const decoded = decode(jwt); - + selectAlgorithm(decoded.header.alg); if(isPublicKeyAlgorithm(decoded.header.alg)) { downloadPublicKeyIfPossible(decoded).then(publicKey => { @@ -282,10 +283,10 @@ function decodeToken() { }); }); } - + headerEditor.setValue(stringify(decoded.header)); payloadEditor.setValue(stringify(decoded.payload)); - + if(decoded.errors) { markAsInvalidWithElement(editorElement, false); } else { @@ -294,34 +295,36 @@ function decodeToken() { } } catch(e) { log.warn('Failed to decode token: ', e); - } + } }); } function verifyToken() { const jwt = getTrimmedValue(tokenEditor); const decoded = decode(jwt); - + if(!decoded.header.alg || decoded.header.alg === 'none') { markAsInvalid(); return; } - const publicKeyOrSecret = + const publicKeyOrSecret = isSharedSecretAlgorithm(decoded.header.alg) ? - secretInput.value : + secretInput.value : publicKeyTextArea.value; - if(verify(jwt, publicKeyOrSecret, secretBase64Checkbox.checked)) { - markAsValid(); - } else { - markAsInvalid(); - } + verify(jwt, publicKeyOrSecret, secretBase64Checkbox.checked).then(valid => { + if(valid) { + markAsValid(); + } else { + markAsInvalid(); + } + }); } function setupTabEvents() { // These are relevant for portrait or mobile screens. - + encodedTabLink.addEventListener('click', event => { event.preventDefault(); @@ -357,7 +360,7 @@ function setupEvents() { // HMAC secret, show tooltip if secret is too short. eventManager.addDomEvent(secretInput, 'input', minSecretLengthCheck); // HMAC secret, when changed the encoded token must be updated. - eventManager.addDomEvent(secretInput, 'input', encodeToken); + eventManager.addDomEvent(secretInput, 'input', encodeToken); // Base64 checkbox, when changes the encoded token must be updated. eventManager.addDomEvent(secretBase64Checkbox, 'change', encodeToken); // Private key, when changed the encoded token must be updated. @@ -378,7 +381,7 @@ export function setTokenEditorValue(value) { export function getTokenEditorValue() { return { token: getTrimmedValue(tokenEditor), - publicKey: isPublicKeyAlgorithm(getSelectedAlgorithm()) ? + publicKey: isPublicKeyAlgorithm(getSelectedAlgorithm()) ? publicKeyTextArea.value : undefined }; diff --git a/src/editor/jwt.js b/src/editor/jwt.js index f51fe41b..d383f7cc 100644 --- a/src/editor/jwt.js +++ b/src/editor/jwt.js @@ -1,33 +1,71 @@ -import { - jws, - KEYUTIL, - b64utoutf8, - b64utohex, - utf8tohex, - b64tohex, - ASN1HEX -} from 'jsrsasign'; +import jose from 'node-jose'; +import b64u from 'base64url'; +import any from 'promise.any'; import log from 'loglevel'; -export function sign(header, +// node-jose does not support keys shorter than block size. This is a +// limitation from their implementation and could be resolved in the future. +// See: https://github.com/cisco/node-jose/blob/master/lib/jwk/octkey.js#L141 +function paddedKey(key, alg, base64Secret) { + const blockSizeBytes = alg.indexOf('256') !== -1 ? 512 / 8 : 1024 / 8; + + let buf = base64Secret ? Buffer.from(key, 'base64') : Buffer.from(key); + + if(buf.length < blockSizeBytes) { + const oldBuf = buf; + buf = Buffer.alloc(blockSizeBytes); + buf.set(oldBuf); + } + + return b64u.encode(buf); +} + +function getJoseKey(header, key, base64Secret) { + if(header.alg.indexOf('HS') === 0) { + return jose.JWK.asKey({ + kty: 'oct', + use: 'sig', + alg: header.alg, + k: paddedKey(key, header.alg, base64Secret) + }); + } else { + return any(['pem', 'json'].map(form => { + try { + return jose.JWK.asKey(key, form); + } catch(e) { + return Promise.reject(e); + } + })); + } +} + +export function sign(header, payload, secretOrPrivateKeyString, base64Secret = false) { if(!header.alg) { - throw new Error('Missing "alg" claim in header'); + return Promise.reject(new Error('Missing "alg" claim in header')); } - if(header.alg.indexOf('HS') === 0) { - return jws.JWS.sign(null, header, payload, - base64Secret ? - b64utohex(secretOrPrivateKeyString) : - utf8tohex(secretOrPrivateKeyString)); - } else { - return jws.JWS.sign(null, header, payload, secretOrPrivateKeyString); - } + return getJoseKey(header, secretOrPrivateKeyString, base64Secret).then( + key => { + if(!(typeof payload === 'string' || payload instanceof String)) { + payload = JSON.stringify(payload); + } + + return jose.JWS.createSign({ + fields: header, + format: 'compact' + }, { + key: key, + reference: false + }).update(payload, 'utf8').final(); + } + ); } +// TODO: reenable this (and tests) /** * This function takes a PEM string with a public key and returns a * jsrsasign key object (RSAKey, KJUR.crypto.DSA, KJUR.crypto.ECDSA). It also @@ -36,19 +74,19 @@ export function sign(header, * See: https://stackoverflow.com/questions/18039401/how-can-i-transform-between-the-two-styles-of-public-key-format-one-begin-rsa * @param {String} publicKey The public key as a PEM string. * @returns {Object} The public key as a jsrsasign key object. - */ + * / function getPublicKeyObject(publicKey) { try { const startTag = '-----BEGIN RSA PUBLIC KEY-----'; const endTag = '-----END RSA PUBLIC KEY-----'; const startTagPos = publicKey.indexOf(startTag); const endTagPos = publicKey.indexOf(endTag); - + if(startTagPos !== -1 && endTagPos !== -1) { const plainDataBase64 = publicKey.substr(0, endTagPos) .substr(startTagPos + startTag.length); - + const plainDataDER = b64tohex(plainDataBase64); const barePublicKey = { @@ -59,39 +97,35 @@ function getPublicKeyObject(publicKey) { return KEYUTIL.getKey(barePublicKey); } } catch(e) { - log.error('Failed to make public key into X.509 ' + + log.error('Failed to make public key into X.509 ' + 'SubjectPublicKeyInfo key:', e); } return KEYUTIL.getKey(publicKey); -} +}*/ export function verify(jwt, secretOrPublicKeyString, base64Secret = false) { if(!isToken(jwt)) { - return false; + return Promise.resolve(false); } const decoded = decode(jwt); - + if(!decoded.header.alg) { - return false; + return Promise.resolve(false); } - try { - if(decoded.header.alg.indexOf('HS') === 0) { - return jws.JWS.verify(jwt, - base64Secret ? - b64utohex(secretOrPublicKeyString) : - utf8tohex(secretOrPublicKeyString)); - } else { - const publicKeyObject = getPublicKeyObject(secretOrPublicKeyString); - return jws.JWS.verify(jwt, publicKeyObject); + return getJoseKey(decoded.header, secretOrPublicKeyString, base64Secret).then( + key => { + return jose.JWS.createVerify(key) + .verify(jwt) + .then(() => true, () => false); + }, e => { + log.warn('Could not verify token, ' + + 'probably due to bad data in it or the keys: ', e); + return false; } - } catch(e) { - log.warn('Could not verify token, ' + - 'probably due to bad data in it or the keys: ', e); - return false; - } + ); } export function decode(jwt) { @@ -105,18 +139,18 @@ export function decode(jwt) { result.errors = true; return result; } - + const split = jwt.split('.'); - + try { - result.header = JSON.parse(b64utoutf8(split[0])); + result.header = JSON.parse(b64u.decode(split[0])); } catch(e) { result.header = {}; result.errors = true; } try { - result.payload = JSON.parse(b64utoutf8(split[1])); + result.payload = JSON.parse(b64u.decode(split[1])); } catch(e) { result.payload = {}; result.errors = true; @@ -149,7 +183,7 @@ export function isValidBase64String(s, urlOnly) { return s.length % 4 === 0; } - return true; + return true; } catch (e) { return false; } diff --git a/src/editor/secret-length-tooltip.js b/src/editor/secret-length-tooltip.js index 9148eb87..6314fdc5 100644 --- a/src/editor/secret-length-tooltip.js +++ b/src/editor/secret-length-tooltip.js @@ -1,12 +1,12 @@ import { getSelectedAlgorithm } from './utils.js'; -import { +import { secretInput, secretBase64Checkbox, } from '../dom-elements.js'; import log from 'loglevel'; import tippy from 'tippy.js'; -import { b64utohex, utf8tohex } from 'jsrsasign'; +import b64u from 'base64url'; export function minSecretLengthCheck(event) { const alg = getSelectedAlgorithm(); @@ -16,9 +16,9 @@ export function minSecretLengthCheck(event) { } const algBits = parseInt(alg.substr(2)); - const inputBits = secretBase64Checkbox.checked ? - b64utohex(secretInput.value).length / 2 * 8 : - utf8tohex(secretInput.value).length / 2 * 8; + const inputBits = secretBase64Checkbox.checked ? + b64u.decode(secretInput.value).length * 8 : + Buffer.from(secretInput.value).length * 8; if(inputBits < algBits) { if(!secretInput._tippy.state.visible) { diff --git a/src/utils.js b/src/utils.js index a32e7653..e6f91ac2 100644 --- a/src/utils.js +++ b/src/utils.js @@ -1,11 +1,11 @@ -import { KEYUTIL } from 'jsrsasign'; +//import { KEYUTIL } from 'jsrsasign'; import log from 'loglevel'; import clipboard from 'clipboard-polyfill'; export function httpGet(url, cache = true) { return new Promise((resolve, reject) => { - const request = new XMLHttpRequest(); + const request = new XMLHttpRequest(); request.onreadystatechange = () => { if (request.readyState === XMLHttpRequest.DONE) { @@ -30,7 +30,7 @@ export function httpGet(url, cache = true) { }); } -export function isValidKey(key) { +/*export function isValidKey(key) { // Four tries: no header, header for cert, header for pub key, // header for priv key @@ -71,7 +71,7 @@ export function isValidKey(key) { valid: false, key: key }; -} +}*/ export function deferToNextLoop(func) { setTimeout(func, 1); @@ -95,7 +95,7 @@ export function safeLocalStorageSetItem(key, value) { try { localStorage.setItem(key, value); } catch (e) { - log.info('Cannot save token to Local Storage ' + + log.info('Cannot save token to Local Storage ' + '(private browsing enabled?), ignoring...', e); // Safari when in private browsing doesn't allow it } diff --git a/test/functional/default-tokens.js b/test/functional/default-tokens.js deleted file mode 100644 index 98803a8d..00000000 --- a/test/functional/default-tokens.js +++ /dev/null @@ -1,101 +0,0 @@ -// Yes, all keys here are supposed to be exposed, you can commit -// them safely to GitHub. - -const rsaPrivateKey = -`-----BEGIN RSA PRIVATE KEY----- -MIICWwIBAAKBgQDdlatRjRjogo3WojgGHFHYLugdUWAY9iR3fy4arWNA1KoS8kVw -33cJibXr8bvwUAUparCwlvdbH6dvEOfou0/gCFQsHUfQrSDv+MuSUMAe8jzKE4qW -+jK+xQU9a03GUnKHkkle+Q0pX/g6jXZ7r1/xAK5Do2kQ+X5xK9cipRgEKwIDAQAB -AoGAD+onAtVye4ic7VR7V50DF9bOnwRwNXrARcDhq9LWNRrRGElESYYTQ6EbatXS -3MCyjjX2eMhu/aF5YhXBwkppwxg+EOmXeh+MzL7Zh284OuPbkglAaGhV9bb6/5Cp -uGb1esyPbYW+Ty2PC0GSZfIXkXs76jXAu9TOBvD0ybc2YlkCQQDywg2R/7t3Q2OE -2+yo382CLJdrlSLVROWKwb4tb2PjhY4XAwV8d1vy0RenxTB+K5Mu57uVSTHtrMK0 -GAtFr833AkEA6avx20OHo61Yela/4k5kQDtjEf1N0LfI+BcWZtxsS3jDM3i1Hp0K -Su5rsCPb8acJo5RO26gGVrfAsDcIXKC+bQJAZZ2XIpsitLyPpuiMOvBbzPavd4gY -6Z8KWrfYzJoI/Q9FuBo6rKwl4BFoToD7WIUS+hpkagwWiz+6zLoX1dbOZwJACmH5 -fSSjAkLRi54PKJ8TFUeOP15h9sQzydI8zJU+upvDEKZsZc/UhT/SySDOxQ4G/523 -Y0sz/OZtSWcol/UMgQJALesy++GdvoIDLfJX5GBQpuFgFenRiRDabxrE9MNUZ2aP -FaFp+DyAe+b4nDwuJaW2LURbr8AEZga7oQj0uYxcYw== ------END RSA PRIVATE KEY-----`; - -const rsaPublicKey = -`-----BEGIN PUBLIC KEY----- -MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDdlatRjRjogo3WojgGHFHYLugd -UWAY9iR3fy4arWNA1KoS8kVw33cJibXr8bvwUAUparCwlvdbH6dvEOfou0/gCFQs -HUfQrSDv+MuSUMAe8jzKE4qW+jK+xQU9a03GUnKHkkle+Q0pX/g6jXZ7r1/xAK5D -o2kQ+X5xK9cipRgEKwIDAQAB ------END PUBLIC KEY-----`; - -const ecPrivateKey = -`-----BEGIN PRIVATE KEY----- -MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgevZzL1gdAFr88hb2 -OF/2NxApJCzGCEDdfSp6VQO30hyhRANCAAQRWz+jn65BtOMvdyHKcvjBeBSDZH2r -1RTwjmYSi9R/zpBnuQ4EiMnCqfMPWiZqB4QdbAd0E7oH50VpuZ1P087G ------END PRIVATE KEY-----`; - -const ecPublicKey = -`-----BEGIN PUBLIC KEY----- -MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEEVs/o5+uQbTjL3chynL4wXgUg2R9 -q9UU8I5mEovUf86QZ7kOBIjJwqnzD1omageEHWwHdBO6B+dFabmdT9POxg== ------END PUBLIC KEY-----`; - -module.exports = { - hs256: { - token: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c', - secret: 'your-256-bit-secret' - }, - hs384: { - token: 'eyJhbGciOiJIUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.bQTnz6AuMJvmXXQsVPrxeQNvzDkimo7VNXxHeSBfClLufmCVZRUuyTwJF311JHuh', - secret: 'your-384-bit-secret' - }, - hs512: { - token: 'eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.VFb0qJ1LRg_4ujbZoRMXnVkUgiuKq5KxWqNdbKq_G9Vvz-S1zZa9LPxtHWKa64zDl2ofkT8F6jBt_K4riU-fPg', - secret: 'your-512-bit-secret' - }, - rs256: { - token: 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.TCYt5XsITJX1CxPCT8yAV-TVkIEq_PbChOMqsLfRoPsnsgw5WEuts01mq-pQy7UJiN5mgRxD-WUcX16dUEMGlv50aqzpqh4Qktb3rk-BuQy72IFLOqV0G_zS245-kronKb78cPN25DGlcTwLtjPAYuNzVBAh4vGHSrQyHUdBBPM', - privateKey: rsaPrivateKey, - publicKey: rsaPublicKey - }, - rs384: { - token: 'eyJhbGciOiJSUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.CN9hqUMdVb5LGo06Geb8ap1qYfbJ4rEZIMqTE9gxA2m6GGmsXkznRxzoFpAzQUey9q5HehRTk_-TxYydN3QtFPfrTbAHep7PLhp3XhdvTJ1ok__UBjv4aP6UWTF-Rflr3qeC18LdlM4nyKL7ZwSGDzytWihGod5vn4GAXErUUE4', - privateKey: rsaPrivateKey, - publicKey: rsaPublicKey - }, - rs512: { - token: 'eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.MejLezWY6hjGgbIXkq6Qbvx_-q5vWaTR6qPiNHphvla-XaZD3up1DN6Ib5AEOVtuB3fC9l-0L36noK4qQA79lhpSK3gozXO6XPIcCp4C8MU_ACzGtYe7IwGnnK3Emr6IHQE0bpGinHX1Ak1pAuwJNawaQ6Nvmz2ozZPsyxmiwoo', - privateKey: rsaPrivateKey, - publicKey: rsaPublicKey - }, - es256: { - token: 'eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.tyh-VfuzIxCyGYDlkBA7DfyjrqmSHu6pQ2hoZuFqUSLPNY2N0mpHb3nk5K17HWP_3cYHBw7AhHale5wky6-sVA', - privateKey: ecPrivateKey, - publicKey: ecPublicKey - }, - es384: { - token: 'eyJhbGciOiJFUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.bmnmBALgkWpJ_wRTj6gJpmEpq6SzvYlgViuNTTHxJYSLseeRyjkIAXlJHT1s1ygi3UCzh4jfIymjHOlqVFIk1A', - privateKey: ecPrivateKey, - publicKey: ecPublicKey - }, - /*es512: { - token: '', - privateKey: ecPrivateKey, - publicKey: ecPublicKey - },*/ - ps256: { - token: 'eyJhbGciOiJQUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.P9_X1ctIxnnoUpKSWpYw3rF62e-d8LXe3sETuLn4Lhigw5OQhi-mBBKoBMneHy4kimS84zxnMby0FYo9wKM3I3pEg8Qrz0Q00tNhKCwOnZ7Q-e86sW1luK1z82tufF-sZ9_BY_LGQsym0lQmQaHFzLmEDXnOzWsjUThHGVJTI64', - privateKey: rsaPrivateKey, - publicKey: rsaPublicKey - }, - ps384: { - token: 'eyJhbGciOiJQUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.oywIg-I6w59yw9jiPxewn5n2BhrD7hSifWSmzFKGBMPEMd0qweVNjlyxu2TodunPzlh49OW8QA0ygNRL9VQrWA3GXzb5FubNF4s7Y15QePx52anlvebzihx5-hR0UhKbVC0UODwYNMiY-v0L7iMbT9UvuSj0GAuZMxndo2Y2VFQ', - privateKey: rsaPrivateKey, - publicKey: rsaPublicKey - }, - /*ps512: { - token: '', - privateKey: rsaPrivateKey, - publicKey: rsaPublicKey - }*/ -}; - diff --git a/test/functional/editor.js b/test/functional/editor.js index 019a4535..2ba69b22 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -3,13 +3,14 @@ const chaiAsPromised = require('chai-as-promised'); const chaiArrays = require('chai-arrays'); const express = require('express'); -const jsrsasign = require('jsrsasign'); +const jose = require('node-jose'); const _ = require('lodash'); const utils = require('./utils.js'); const tokens = require('./tokens.js'); -const defaultTokens = require('./default-tokens.js'); +const defaultTokens = + require('esm')(module)('../../src/editor/default-tokens.js').default; const jwks = require('./jwks.json'); const isVisible = utils.isVisible; @@ -19,6 +20,7 @@ chai.use(chaiArrays); const expect = chai.expect; const typingDelay = 0; +const tokenProcessingWait = 200; describe('Editor', function() { before(utils.launchBrowser); @@ -29,7 +31,7 @@ describe('Editor', function() { await this.page.click('a[href="#debugger-io"]'); // Wait for scroll await this.page.waitFor(3000); - expect(await this.page.$eval('#debugger-io', isVisible)).to.be.true; + expect(await this.page.$eval('#debugger-io', isVisible)).to.be.true; }); it('HS256 should be selected by default', async function() { @@ -40,7 +42,7 @@ describe('Editor', function() { expect(selected).to.equal('HS256'); }); - it('Default selected token should say something ' + + it('Default selected token should say something ' + 'about secret length', async function() { const secret = this.page.$eval('input[name="secret"]', secretInput => secretInput.value); @@ -50,37 +52,37 @@ describe('Editor', function() { it('Should select default tokens when no changes have ' + 'been made', async function() { try { - await this.page.select('#algorithm-select', 'HS256'); + await this.page.select('#algorithm-select', 'HS256'); const algs = await this.page.$eval('#algorithm-select', select => { return Array.prototype.map.call(select.options, opt => opt.value); }); - for(const alg of algs) { + for(const alg of algs) { await this.page.select('#algorithm-select', alg); const token = await this.page.evaluate(() => { return window.test.tokenEditor.getValue(); }); expect(defaultTokens[alg.toLowerCase()].token).to.equal(token); - } + } } finally { await this.page.select('#algorithm-select', 'HS256'); } }); it('Should display a tooltip for a claim', async function() { - await this.page.select('#algorithm-select', 'HS384'); + await this.page.select('#algorithm-select', 'HS384'); await this.page.mouse.move(0, 0); function tippyVisible(element) { return element._tippy.state.visible; } - + expect(await this.page.$eval('[data-tippy]', tippyVisible)). to.be.false; - + const iatPos = await this.page.evaluate(() => { return window.test.payloadEditor.charCoords({ line: 4, @@ -99,15 +101,15 @@ describe('Editor', function() { it('Displays a valid token by default', async function() { const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && + return status.classList.contains('valid-token') && status.textContent.indexOf('verified') !== -1; }); expect(valid).to.be.true; }); - it('Shows invalid token when a valid token is edited ' + - 'in the left pane', async function() { + it('Shows invalid token when a valid token is edited ' + + 'in the left pane', async function() { await this.page.evaluate(() => { let token = window.test.tokenEditor.getValue(); token += 'asdf23'; @@ -115,7 +117,7 @@ describe('Editor', function() { }); const invalid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('invalid-token') && + return status.classList.contains('invalid-token') && status.textContent.indexOf('invalid') !== -1; }); @@ -137,18 +139,21 @@ describe('Editor', function() { typ: 'JWT', test: 'test' }; - await this.page.keyboard.type(JSON.stringify(header, null, 2), { - delay: typingDelay + await this.page.keyboard.type(JSON.stringify(header, null, 2), { + delay: typingDelay }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + const newToken = await this.page.evaluate(() => { - return window.test.tokenEditor.getValue() + return window.test.tokenEditor.getValue(); }); expect(newToken).to.not.equal(oldToken); const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && + return status.classList.contains('valid-token') && status.textContent.indexOf('verified') !== -1; }); @@ -172,10 +177,13 @@ describe('Editor', function() { "iat": 1516239022, "test": "test" }; - await this.page.keyboard.type(JSON.stringify(payload, null, 2), { - delay: typingDelay + await this.page.keyboard.type(JSON.stringify(payload, null, 2), { + delay: typingDelay }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + const newToken = await this.page.evaluate(() => { return window.test.tokenEditor.getValue() }); @@ -183,7 +191,7 @@ describe('Editor', function() { expect(newToken).to.not.equal(oldToken); const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && + return status.classList.contains('valid-token') && status.textContent.indexOf('verified') !== -1; }); @@ -191,7 +199,7 @@ describe('Editor', function() { }); it('Selects algorithm when header is edited', async function() { - const selectedBefore = + const selectedBefore = await this.page.$eval('#algorithm-select', select => { return select.options[select.selectedIndex].value; }); @@ -205,11 +213,11 @@ describe('Editor', function() { alg: 'HS384', typ: 'JWT', }; - await this.page.keyboard.type(JSON.stringify(header, null, 2), { - delay: typingDelay + await this.page.keyboard.type(JSON.stringify(header, null, 2), { + delay: typingDelay }); - const selectedAfter = + const selectedAfter = await this.page.$eval('#algorithm-select', select => { return select.options[select.selectedIndex].value; }); @@ -217,15 +225,18 @@ describe('Editor', function() { expect(selectedBefore).to.not.equal(selectedAfter); expect(selectedAfter).to.equal('HS384'); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && + return status.classList.contains('valid-token') && status.textContent.indexOf('verified') !== -1; }); expect(valid).to.be.true; }); - it('Should never revert to a default token after a non-default token ' + + it('Should never revert to a default token after a non-default token ' + 'is generated', async function() { await this.page.select('#algorithm-select', 'HS256'); @@ -235,10 +246,10 @@ describe('Editor', function() { await this.page.keyboard.up('ControlLeft'); const payload = { - sub: 'test' + sub: 'test' }; - await this.page.keyboard.type(JSON.stringify(payload, null, 2), { - delay: typingDelay + await this.page.keyboard.type(JSON.stringify(payload, null, 2), { + delay: typingDelay }); const algs = await this.page.$eval('#algorithm-select', select => { @@ -249,6 +260,9 @@ describe('Editor', function() { await this.page.select('#algorithm-select', alg); } + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + const payloadInEditor = await this.page.evaluate(() => { return JSON.parse(window.test.payloadEditor.getValue()); }); @@ -260,48 +274,57 @@ describe('Editor', function() { before(async function() { await this.page.select('#algorithm-select', 'HS256'); }); - + it('Updates the token when the secret changes', async function() { const oldToken = await this.page.evaluate(() => { return window.test.tokenEditor.getValue() }); - + const secretInput = await this.page.$('input[name="secret"]'); - + await secretInput.type('asdfasdf'); - + + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + const newToken = await this.page.evaluate(() => { return window.test.tokenEditor.getValue() }); - + expect(oldToken).to.not.equal(newToken); }); - + it('Updates the token when the Base64 checkbox changes', async function() { const oldToken = await this.page.evaluate(() => { return window.test.tokenEditor.getValue() }); - + await this.page.click('#is-base64-encoded'); - + + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + let newToken = await this.page.evaluate(() => { return window.test.tokenEditor.getValue() }); - + expect(oldToken).to.not.equal(newToken); - + await this.page.click('#is-base64-encoded'); - + + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + newToken = await this.page.evaluate(() => { return window.test.tokenEditor.getValue() }); - + expect(oldToken).to.equal(newToken); }); - describe('HS256/384/512', function() { + describe('HS256/384/512', function() { const algs = Object.keys(tokens).filter(alg => alg.includes('hs')); - + for(const alg of algs) { it(`Decodes ${alg.toUpperCase()} tokens`, async function() { const secretInput = await this.page.$('input[name="secret"]'); @@ -309,23 +332,26 @@ describe('Editor', function() { await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await secretInput.type(tokens[alg].secret, { - delay: typingDelay + await secretInput.type(tokens[alg].secret, { + delay: typingDelay }); await this.page.click('.js-input'); await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await this.page.keyboard.type(tokens[alg].token, { - delay: typingDelay + await this.page.keyboard.type(tokens[alg].token, { + delay: typingDelay }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && + return status.classList.contains('valid-token') && status.textContent.indexOf('verified') !== -1; }); - + expect(valid).to.be.true; const payload = await this.page.evaluate(() => { @@ -352,7 +378,7 @@ describe('Editor', function() { // Wait for animations await this.page.waitFor(500); - let tooltipVisible = + let tooltipVisible = await this.page.$eval('input[name="secret"]', input => { return input._tippy.state.visible; }); @@ -371,7 +397,7 @@ describe('Editor', function() { // Wait for animations await this.page.waitFor(500); - tooltipVisible = + tooltipVisible = await this.page.$eval('input[name="secret"]', input => { return input._tippy.state.visible; }); @@ -379,9 +405,9 @@ describe('Editor', function() { expect(tooltipVisible).to.be.false; }); } - }); + }); - it('Signs tokens with an empty secret', async function() { + it('Signs tokens with an empty secret', async function() { const secretInput = await this.page.$('input[name="secret"]'); await secretInput.click(); await this.page.keyboard.down('ControlLeft'); @@ -389,11 +415,14 @@ describe('Editor', function() { await this.page.keyboard.up('ControlLeft'); await this.page.keyboard.press('Delete'); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && + return status.classList.contains('valid-token') && status.textContent.indexOf('verified') !== -1; }); - + expect(valid).to.be.true; }); }); @@ -402,7 +431,7 @@ describe('Editor', function() { describe('Decodes RS/ES/PS tokens', function() { const algs = Object.keys(defaultTokens) .filter(alg => !alg.includes('hs')); - + for(const alg of algs) { it(alg.toUpperCase(), async function() { this.timeout(20000); @@ -411,8 +440,8 @@ describe('Editor', function() { await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await this.page.keyboard.type(tokens[alg].token, { - delay: typingDelay + await this.page.keyboard.type(tokens[alg].token, { + delay: typingDelay }); const secretInput = await this.page.$('textarea[name="public-key"]'); @@ -420,15 +449,18 @@ describe('Editor', function() { await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await secretInput.type(tokens[alg].publicKey, { - delay: typingDelay - }); + await secretInput.type(tokens[alg].publicKey, { + delay: typingDelay + }); + + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && + return status.classList.contains('valid-token') && status.textContent.indexOf('verified') !== -1; }); - + expect(valid).to.be.true; const payload = await this.page.evaluate(() => { @@ -440,7 +472,7 @@ describe('Editor', function() { } }); - describe('Encodes RS/ES/PS tokens', function() { + describe('Encodes RS/ES/PS tokens', function() { describe('RS/PS', async function() { before(async function() { this.timeout(30000); @@ -451,20 +483,20 @@ describe('Editor', function() { await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await this.page.keyboard.type(defaultTokens['rs256'].publicKey, { - delay: typingDelay + await this.page.keyboard.type(defaultTokens['rs256'].publicKey, { + delay: typingDelay }); await this.page.click('textarea[name="private-key"]'); await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await this.page.keyboard.type(defaultTokens['rs256'].privateKey, { - delay: typingDelay + await this.page.keyboard.type(defaultTokens['rs256'].privateKey, { + delay: typingDelay }); }); - const algs = + const algs = Object.keys(defaultTokens) .filter(alg => alg.includes('rs') || alg.includes('ps')); @@ -489,8 +521,8 @@ describe('Editor', function() { await this.page.keyboard.type(JSON.stringify({ alg: alg.toUpperCase(), typ: 'JWT' - }, null, 2), { - delay: typingDelay + }, null, 2), { + delay: typingDelay }); await this.page.click('.js-payload'); @@ -499,23 +531,26 @@ describe('Editor', function() { await this.page.keyboard.up('ControlLeft'); await this.page.keyboard.type(JSON.stringify({ sub: 'test' - }, null, 2), { - delay: typingDelay + }, null, 2), { + delay: typingDelay }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + const newToken = await this.page.evaluate(() => { return window.test.tokenEditor.getValue(); }); - + expect(newToken).to.not.be.empty; expect(newToken).to.not.equal(oldToken); - const valid = await this.page.$eval('.validation-status', + const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && + return status.classList.contains('valid-token') && status.textContent.indexOf('verified') !== -1; }); - + expect(valid).to.be.true; }); } @@ -531,16 +566,16 @@ describe('Editor', function() { await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await this.page.keyboard.type(defaultTokens['es256'].publicKey, { - delay: typingDelay + await this.page.keyboard.type(defaultTokens['es256'].publicKey, { + delay: typingDelay }); await this.page.click('textarea[name="private-key"]'); await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await this.page.keyboard.type(defaultTokens['es256'].privateKey, { - delay: typingDelay + await this.page.keyboard.type(defaultTokens['es256'].privateKey, { + delay: typingDelay }); }); @@ -568,8 +603,8 @@ describe('Editor', function() { await this.page.keyboard.type(JSON.stringify({ alg: alg.toUpperCase(), typ: 'JWT' - }, null, 2), { - delay: typingDelay + }, null, 2), { + delay: typingDelay }); await this.page.click('.js-payload'); @@ -578,23 +613,26 @@ describe('Editor', function() { await this.page.keyboard.up('ControlLeft'); await this.page.keyboard.type(JSON.stringify({ sub: 'test' - }, null, 2), { - delay: typingDelay + }, null, 2), { + delay: typingDelay }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + const newToken = await this.page.evaluate(() => { return window.test.tokenEditor.getValue(); }); - + expect(newToken).to.not.be.empty; expect(newToken).to.not.equal(oldToken); - const valid = await this.page.$eval('.validation-status', + const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && + return status.classList.contains('valid-token') && status.textContent.indexOf('verified') !== -1; }); - + expect(valid).to.be.true; }); } @@ -631,109 +669,127 @@ describe('Editor', function() { it('iss URL + .well-known', async function() { this.timeout(20000); - const token = jsrsasign.jws.JWS.sign(null, JSON.stringify({ - alg: 'RS256', - typ: 'JWT', - kid: '1' - }), JSON.stringify({ + const key = await jose.JWK.asKey(defaultTokens.rs256.privateKey, 'pem'); + const token = await jose.JWS.createSign({ + fields: { + alg: 'RS256', + typ: 'JWT', + kid: '1' + }, + format: 'compact' + }, { + key: key + }).update(JSON.stringify({ sub: 'test', iss: 'http://localhost:3000/' - }), defaultTokens.rs256.privateKey); + }), 'utf8').final(); await this.page.click('.js-input'); await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await this.page.keyboard.type(token, { - delay: typingDelay + await this.page.keyboard.type(token, { + delay: typingDelay }); await this.page.waitFor(2000); - const publicKey = await this.page.$eval('textarea[name="public-key"]', + const publicKey = await this.page.$eval('textarea[name="public-key"]', publicKeyElement => publicKeyElement.value); expect(publicKey).to.include(jwks.keys[0].x5c[0]); const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && + return status.classList.contains('valid-token') && status.textContent.indexOf('verified') !== -1; }); - + expect(valid).to.be.true; }); it('jku', async function() { this.timeout(20000); - const token = jsrsasign.jws.JWS.sign(null, JSON.stringify({ - alg: 'RS256', - typ: 'JWT', - kid: '1', - jku: 'http://localhost:3000/.well-known/jwks.json' - }), JSON.stringify({ + const key = await jose.JWK.asKey(defaultTokens.rs256.privateKey, 'pem'); + const token = await jose.JWS.createSign({ + fields: { + alg: 'RS256', + typ: 'JWT', + kid: '1', + jku: 'http://localhost:3000/.well-known/jwks.json' + }, + format: 'compact' + }, { + key: key + }).update(JSON.stringify({ sub: 'test' - }), defaultTokens.rs256.privateKey); + }), 'utf8').final(); await this.page.click('.js-input'); await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await this.page.keyboard.type(token, { - delay: typingDelay + await this.page.keyboard.type(token, { + delay: typingDelay }); await this.page.waitFor(2000); - const publicKey = await this.page.$eval('textarea[name="public-key"]', + const publicKey = await this.page.$eval('textarea[name="public-key"]', publicKeyElement => publicKeyElement.value); expect(publicKey).to.include(jwks.keys[0].x5c[0]); const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && + return status.classList.contains('valid-token') && status.textContent.indexOf('verified') !== -1; }); - + expect(valid).to.be.true; }); it('x5c', async function() { this.timeout(35000); - const token = jsrsasign.jws.JWS.sign(null, JSON.stringify({ - alg: 'RS256', - typ: 'JWT', - x5c: jwks.keys[0].x5c[0] - }), JSON.stringify({ - sub: 'test' - }), defaultTokens.rs256.privateKey); + const key = await jose.JWK.asKey(defaultTokens.rs256.privateKey, 'pem'); + const token = await jose.JWS.createSign({ + fields: { + alg: 'RS256', + typ: 'JWT', + x5c: jwks.keys[0].x5c[0] + }, + format: 'compact' + }, { + key: key + }).update(JSON.stringify({ + sub: 'test', + }), 'utf8').final(); await this.page.click('.js-input'); await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await this.page.keyboard.type(token, { - delay: typingDelay + await this.page.keyboard.type(token, { + delay: typingDelay }); await this.page.waitFor(2000); - const publicKey = await this.page.$eval('textarea[name="public-key"]', + const publicKey = await this.page.$eval('textarea[name="public-key"]', publicKeyElement => publicKeyElement.value); expect(publicKey).to.include(jwks.keys[0].x5c[0]); const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && + return status.classList.contains('valid-token') && status.textContent.indexOf('verified') !== -1; }); - + expect(valid).to.be.true; }); - }); + }); - it('Clears the token when the header is edited and there ' + + it('Clears the token when the header is edited and there ' + 'is no private key', async function() { await this.page.select('#algorithm-select', 'RS256'); @@ -754,10 +810,13 @@ describe('Editor', function() { typ: 'JWT', test: 'test' }; - await this.page.keyboard.type(JSON.stringify(header, null, 2), { - delay: typingDelay + await this.page.keyboard.type(JSON.stringify(header, null, 2), { + delay: typingDelay }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + const token = await this.page.evaluate(() => { return window.test.tokenEditor.getValue(); }); @@ -765,7 +824,7 @@ describe('Editor', function() { expect(token).to.be.empty; }); - it('Clears the token when the payload is edited and there ' + + it('Clears the token when the payload is edited and there ' + 'is no private key', async function() { await this.page.select('#algorithm-select', 'RS256'); @@ -784,10 +843,13 @@ describe('Editor', function() { const payload = { sub: 'test' }; - await this.page.keyboard.type(JSON.stringify(payload, null, 2), { - delay: typingDelay + await this.page.keyboard.type(JSON.stringify(payload, null, 2), { + delay: typingDelay }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + const token = await this.page.evaluate(() => { return window.test.tokenEditor.getValue(); }); @@ -804,8 +866,8 @@ describe('Editor', function() { await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await this.page.keyboard.type(tokens['rs256'].token, { - delay: typingDelay + await this.page.keyboard.type(tokens['rs256'].token, { + delay: typingDelay }); const secretInput = await this.page.$('textarea[name="public-key"]'); @@ -813,15 +875,18 @@ describe('Editor', function() { await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await secretInput.type(tokens['rs256'].publicKey, { - delay: typingDelay + await secretInput.type(tokens['rs256'].publicKey, { + delay: typingDelay }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && + return status.classList.contains('valid-token') && status.textContent.indexOf('verified') !== -1; }); - + expect(valid).to.be.true; await secretInput.click(); @@ -830,25 +895,28 @@ describe('Editor', function() { await this.page.keyboard.up('ControlLeft'); await this.page.keyboard.press('Delete'); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + const invalid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('invalid-token') && + return status.classList.contains('invalid-token') && status.textContent.indexOf('invalid') !== -1; }); - + expect(invalid).to.be.true; }); it('Marks token as invalid when the public key is wrong', async function() { this.timeout(20000); - + await this.page.select('#algorithm-select', 'RS256'); await this.page.click('.js-input'); await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await this.page.keyboard.type(tokens['rs256'].token, { - delay: typingDelay + await this.page.keyboard.type(tokens['rs256'].token, { + delay: typingDelay }); const secretInput = await this.page.$('textarea[name="public-key"]'); @@ -856,15 +924,18 @@ describe('Editor', function() { await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await secretInput.type(tokens['rs256'].publicKey, { - delay: typingDelay + await secretInput.type(tokens['rs256'].publicKey, { + delay: typingDelay }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && + return status.classList.contains('valid-token') && status.textContent.indexOf('verified') !== -1; }); - + expect(valid).to.be.true; await secretInput.click(); @@ -872,102 +943,105 @@ describe('Editor', function() { delay: typingDelay }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + const invalid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('invalid-token') && + return status.classList.contains('invalid-token') && status.textContent.indexOf('invalid') !== -1; }); - + expect(invalid).to.be.true; }); - it('Marks token as valid when the public key is OK and private ' + + it('Marks token as valid when the public key is OK and private ' + 'key is wrong', async function() { this.timeout(30000); - await this.page.select('#algorithm-select', 'RS256'); + await this.page.select('#algorithm-select', 'RS256'); const secretInput = await this.page.$('textarea[name="public-key"]'); await secretInput.click(); await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await secretInput.type(defaultTokens['rs256'].publicKey, { - delay: typingDelay + await secretInput.type(defaultTokens['rs256'].publicKey, { + delay: typingDelay }); const privateKeyInput = await this.page.$('textarea[name="private-key"]'); await privateKeyInput.click(); await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await this.page.keyboard.up('ControlLeft'); const head = defaultTokens['rs256'].privateKey.slice(0, 20); const tail = defaultTokens['rs256'].privateKey.slice(20); - await privateKeyInput.type(`${head}sadfasdf${tail}`, { - delay: typingDelay + await privateKeyInput.type(`${head}sadfasdf${tail}`, { + delay: typingDelay }); await this.page.click('.js-input'); await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await this.page.keyboard.type(defaultTokens['rs256'].token, { - delay: typingDelay + await this.page.keyboard.type(defaultTokens['rs256'].token, { + delay: typingDelay }); await this.page.waitFor(1000); const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && + return status.classList.contains('valid-token') && status.textContent.indexOf('verified') !== -1; }); - + expect(valid).to.be.true; }); - it('Marks token as valid when the public key is OK and private ' + + it('Marks token as valid when the public key is OK and private ' + 'key is missing', async function() { this.timeout(30000); - await this.page.select('#algorithm-select', 'RS256'); + await this.page.select('#algorithm-select', 'RS256'); const secretInput = await this.page.$('textarea[name="public-key"]'); await secretInput.click(); await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await secretInput.type(tokens['rs256'].publicKey, { - delay: typingDelay + await secretInput.type(tokens['rs256'].publicKey, { + delay: typingDelay }); const privateKeyInput = await this.page.$('textarea[name="private-key"]'); await privateKeyInput.click(); await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await this.page.keyboard.up('ControlLeft'); await this.page.keyboard.press('Delete'); await this.page.click('.js-input'); await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await this.page.keyboard.type(tokens['rs256'].token, { - delay: typingDelay + await this.page.keyboard.type(tokens['rs256'].token, { + delay: typingDelay }); await this.page.waitFor(1000); const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && + return status.classList.contains('valid-token') && status.textContent.indexOf('verified') !== -1; }); - + expect(valid).to.be.true; }); }); - it('Updates the header when the token algorithm ' + + it('Updates the header when the token algorithm ' + 'is changed', async function() { await this.page.select('#algorithm-select', 'HS256'); @@ -975,8 +1049,8 @@ describe('Editor', function() { await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await this.page.keyboard.type(tokens.hs256.token, { - delay: typingDelay + await this.page.keyboard.type(tokens.hs256.token, { + delay: typingDelay }); await this.page.select('#algorithm-select', 'HS384'); @@ -995,12 +1069,15 @@ describe('Editor', function() { await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await this.page.keyboard.type(tokens.none.token, { - delay: typingDelay + await this.page.keyboard.type(tokens.none.token, { + delay: typingDelay }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + const invalid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('invalid-token') && + return status.classList.contains('invalid-token') && status.textContent.indexOf('invalid') !== -1; }); @@ -1015,8 +1092,8 @@ describe('Editor', function() { await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await secretInput.type('secret-test', { - delay: typingDelay + await secretInput.type('secret-test', { + delay: typingDelay }); await this.page.click('.js-payload'); @@ -1025,10 +1102,10 @@ describe('Editor', function() { await this.page.keyboard.up('ControlLeft'); const payload = { - sub: 'test' + sub: 'test' }; - await this.page.keyboard.type(JSON.stringify(payload, null, 2), { - delay: typingDelay + await this.page.keyboard.type(JSON.stringify(payload, null, 2), { + delay: typingDelay }); await this.page.reload(); @@ -1049,8 +1126,8 @@ describe('Editor', function() { await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await secretInput.type('secret-test', { - delay: typingDelay + await secretInput.type('secret-test', { + delay: typingDelay }); await this.page.click('.js-payload'); @@ -1059,29 +1136,29 @@ describe('Editor', function() { await this.page.keyboard.up('ControlLeft'); const payload = { - sub: 'test' + sub: 'test' }; - await this.page.keyboard.type(JSON.stringify(payload, null, 2), { - delay: typingDelay + await this.page.keyboard.type(JSON.stringify(payload, null, 2), { + delay: typingDelay }); const shareJwtButton = await this.page.$('.website-share button'); await shareJwtButton.click(); - const srcToken = await this.page.evaluate(() => + const srcToken = await this.page.evaluate(() => window.test.tokenEditor.getValue()); // We cannot read the clipboard in headless Chrome, so we have a special // harness in the code that stores this value. See: // https://github.com/GoogleChrome/puppeteer/issues/2147 - const copiedUrl = await this.page.evaluate(() => + const copiedUrl = await this.page.evaluate(() => window.test.shareJwtCopiedUrl); const newPage = await this.browser.newPage(); await newPage.goto( copiedUrl.replace('https://jwt.io/', 'http://localhost:8000/')); - const destToken = await newPage.evaluate(() => + const destToken = await newPage.evaluate(() => window.test.tokenEditor.getValue()); const destSecret = await newPage.$eval('input[name="secret"]', input => input.value); @@ -1094,14 +1171,14 @@ describe('Editor', function() { async function() { this.timeout(30000); - await this.page.select('#algorithm-select', 'RS256'); + await this.page.select('#algorithm-select', 'RS256'); await this.page.click('.js-input'); await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await this.page.keyboard.type(defaultTokens['rs256'].token, { - delay: typingDelay + await this.page.keyboard.type(defaultTokens['rs256'].token, { + delay: typingDelay }); const pubKeyInput = await this.page.$('textarea[name="public-key"]'); @@ -1109,18 +1186,18 @@ describe('Editor', function() { await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); await this.page.keyboard.up('ControlLeft'); - await pubKeyInput.type(defaultTokens['rs256'].publicKey, { - delay: typingDelay + await pubKeyInput.type(defaultTokens['rs256'].publicKey, { + delay: typingDelay }); - const privateKeyInput = + const privateKeyInput = await this.page.$('textarea[name="private-key"]'); await privateKeyInput.click(); await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); - await privateKeyInput.type(defaultTokens['rs256'].privateKey, { - delay: typingDelay + await this.page.keyboard.up('ControlLeft'); + await privateKeyInput.type(defaultTokens['rs256'].privateKey, { + delay: typingDelay }); await this.page.click('.js-payload'); @@ -1129,29 +1206,29 @@ describe('Editor', function() { await this.page.keyboard.up('ControlLeft'); const payload = { - sub: 'test' + sub: 'test' }; - await this.page.keyboard.type(JSON.stringify(payload, null, 2), { - delay: typingDelay + await this.page.keyboard.type(JSON.stringify(payload, null, 2), { + delay: typingDelay }); const shareJwtButton = await this.page.$('.website-share button'); await shareJwtButton.click(); - const srcToken = await this.page.evaluate(() => + const srcToken = await this.page.evaluate(() => window.test.tokenEditor.getValue()); // We cannot read the clipboard in headless Chrome, so we have a // special harness in the code that stores this value. See: // https://github.com/GoogleChrome/puppeteer/issues/2147 - const copiedUrl = await this.page.evaluate(() => + const copiedUrl = await this.page.evaluate(() => window.test.shareJwtCopiedUrl); const newPage = await this.browser.newPage(); await newPage.goto( copiedUrl.replace('https://jwt.io/', 'http://localhost:8000/')); - const destToken = await newPage.evaluate(() => + const destToken = await newPage.evaluate(() => window.test.tokenEditor.getValue()); const destPubKey = await newPage.$eval('textarea[name="public-key"]', input => input.value); @@ -1161,10 +1238,10 @@ describe('Editor', function() { } ); }); - + describe('Parses tokens from window.location.href', () => { const token = defaultTokens.hs384.token; - + ['token', 'value', 'id_token', 'access_token'].forEach((key) => { [ @@ -1177,7 +1254,7 @@ describe('Editor', function() { it(`Should parse ${key} from window.location.href [${i}]`, async function () { - const page = await this.browser.newPage(); + const page = await this.browser.newPage(); await page.goto(`http://localhost:8000${searchStr}`); @@ -1187,7 +1264,7 @@ describe('Editor', function() { await page.close(); }); - }); + }); }); @@ -1200,7 +1277,7 @@ describe('Editor', function() { expect(await page.evaluate(() => { return window.test.tokenEditor.getValue(); - })).to.equal(token); + })).to.equal(token); await page.close(); }); diff --git a/test/functional/tokens.js b/test/functional/tokens.js index 80873570..56ea8df9 100644 --- a/test/functional/tokens.js +++ b/test/functional/tokens.js @@ -6,12 +6,27 @@ HUfQrSDv+MuSUMAe8jzKE4qW+jK+xQU9a03GUnKHkkle+Q0pX/g6jXZ7r1/xAK5D o2kQ+X5xK9cipRgEKwIDAQAB -----END PUBLIC KEY-----`; -const esPublicKey = +const ecPublicKey256 = `-----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEEVs/o5+uQbTjL3chynL4wXgUg2R9 q9UU8I5mEovUf86QZ7kOBIjJwqnzD1omageEHWwHdBO6B+dFabmdT9POxg== -----END PUBLIC KEY-----`; +const ecPublicKey384 = +`-----BEGIN PUBLIC KEY----- +MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEC1uWSXj2czCDwMTLWV5BFmwxdM6PX9p+ +Pk9Yf9rIf374m5XP1U8q79dBhLSIuaojsvOT39UUcPJROSD1FqYLued0rXiooIii +1D3jaW6pmGVJFhodzC31cy5sfOYotrzF +-----END PUBLIC KEY-----`; + +const ecPublicKey521 = +`-----BEGIN PUBLIC KEY----- +MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBgc4HZz+/fBbC7lmEww0AO3NK9wVZ +PDZ0VEnsaUFLEYpTzb90nITtJUcPUbvOsdZIZ1Q8fnbquAYgxXL5UgHMoywAib47 +6MkyyYgPk0BXZq3mq4zImTRNuaU9slj9TVJ3ScT3L1bXwVuPJDzpr5GOFpaj+WwM +Al8G7CqwoJOsW7Kddns= +-----END PUBLIC KEY-----`; + module.exports = { none: { token: 'eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.' @@ -42,11 +57,15 @@ module.exports = { }, es256: { token: 'eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6ImVzMjU2dGVzdCJ9.Ir41cyW-pc_pM2L0_cl0spnr8Y3GRUYKm7LfLhScI8SaPLfaQn9B7uES8OkYxu1YfudkYfgoFV_Bh1Qvu8lf7g', - publicKey: esPublicKey + publicKey: ecPublicKey256 }, es384: { - token: 'eyJhbGciOiJFUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6ImVzMzg0dGVzdCJ9.xy86p6ogINec1cucUmjEUIPtN2-kkg22lbVqGlLqYY4RRI5AVHv-UndXAfe6wBxpggV1GFH5gyacOs1TWs1uhQ', - publicKey: esPublicKey + token: 'eyJhbGciOiJFUzM4NCIsInR5cCI6IkpXVCIsImtpZCI6ImlUcVhYSTB6YkFuSkNLRGFvYmZoa00xZi02ck1TcFRmeVpNUnBfMnRLSTgifQ.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6ImVzMzg0dGVzdCJ9.YXzDoj68bFiJ-1gIOrqgSJUvyzh0y61uf6mqp4rWuhekhB1Ck1utbZ20Fg0fqokguEWG-9mj_iyEbiVDD9upf9SLU7M3_9PidGQ4YxbiMhXe3Q2iJyIcMHOqteqqobrt', + publicKey: ecPublicKey384 + }, + es512: { + token: 'eyJhbGciOiJFUzUxMiIsInR5cCI6IkpXVCIsImtpZCI6InhaRGZacHJ5NFA5dlpQWnlHMmZOQlJqLTdMejVvbVZkbTd0SG9DZ1NOZlkifQ.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6ImVzNTEydGVzdCJ9.AF3NvldM10bAnAYvoy337HgVLAyJealQRYLCYD1FxayivcNinURScqM49bhUWKUg6svLxi03ENhpcsErqJt2x6QnAOkkepMOPU52r1mVYNz_kB0gxY8Xvl8_0d9CYn84NmNL11NrvZlzm03vL2oFZnWZx1L_4st7bm4jsDglnzkapkdh', + publicKey: ecPublicKey521 }, ps256: { token: 'eyJhbGciOiJQUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6InBzMjU2dGVzdCJ9.jVQfrR2D8k3I5FsIBDW2zn1OINhemVA7T1izMSlYb-7MNlw4DrlcifJ0ilQwXHNw1rZI00OkGjeoJBNpArhEROCY8odXLosjvetRvfp0QPyH0mL5IehWcSsSAhJU0jL8FNQ44HBAUnTQ41llG6p1q7w7qIVcHnFmyqaXcFCP5B8', diff --git a/test/functional/utils.js b/test/functional/utils.js index be499fef..53af74aa 100644 --- a/test/functional/utils.js +++ b/test/functional/utils.js @@ -5,10 +5,10 @@ const os = require('os'); function isVisible(elm) { try { const rect = elm.getBoundingClientRect(); - const viewHeight = Math.max(document.documentElement.clientHeight, + const viewHeight = Math.max(document.documentElement.clientHeight, window.innerHeight); - return !(rect.bottom < 0 || rect.top - viewHeight >= 0) && - rect.width > 0 && + return !(rect.bottom < 0 || rect.top - viewHeight >= 0) && + rect.width > 0 && rect.height > 0; } catch(e) { return false; @@ -19,7 +19,7 @@ async function launchBrowser() { // Initial navigation may take long due to outside requests. this.timeout(30000); - const options = os.hostname() === 'i7-4790K-LIN' ? { + const options = os.hostname() === 'i7-4790K-LIN' ? { //headless: false, executablePath: '/usr/bin/chromium' } : { diff --git a/test/unit/editor/jwt.js b/test/unit/editor/jwt.js index 54e39f4c..8df7756c 100644 --- a/test/unit/editor/jwt.js +++ b/test/unit/editor/jwt.js @@ -1,12 +1,14 @@ import * as jwt from '../../../src/editor/jwt.js'; import tokens from '../../../src/editor/default-tokens.js'; -import { utf8tob64, utf8tob64u, b64utob64 } from 'jsrsasign'; +import b64u from 'base64url'; import log from 'loglevel'; -import { should } from 'chai'; +import chai from 'chai'; +import chaiAsPromised from 'chai-as-promised'; import { randomFillSync } from 'crypto'; -should(); +chai.use(chaiAsPromised); +chai.should(); const publicKeyPlainRSA = `-----BEGIN RSA PUBLIC KEY----- @@ -20,7 +22,7 @@ describe('JWT', function() { jwt.isToken('skdjf9238ujdhkf.asdfasdf2.sdsdffsfsd').should.be.false; jwt.isToken('skdjf9238ujdhkf.asdfasdf2').should.be.false; jwt.isToken('skdjf9238ujdhkfdfsai28#390}{+śdf').should.be.false; - + jwt.isToken(tokens.hs256.token).should.be.true; jwt.isToken(tokens.rs256.token).should.be.true; }); @@ -35,72 +37,64 @@ describe('JWT', function() { }); it('considers Base64 (not URL) encoded tokens invalid', function() { - const token = b64utob64(tokens.hs256.token); + const token = b64u.toBase64(tokens.hs256.token); jwt.isToken(token).should.be.false; - jwt.verify(token, tokens.hs256.secret).should.be.false; + return jwt.verify(token, tokens.hs256.secret).should.eventually.be.false; }); - it('verifies valid tokens', function() { - jwt.verify(tokens.hs256.token, tokens.hs256.secret).should.be.true; - jwt.verify(tokens.hs384.token, tokens.hs384.secret).should.be.true; - jwt.verify(tokens.hs512.token, tokens.hs512.secret).should.be.true; - - jwt.verify(tokens.rs256.token, tokens.rs256.publicKey).should.be.true; - jwt.verify(tokens.rs384.token, tokens.rs384.publicKey).should.be.true; - jwt.verify(tokens.rs512.token, tokens.rs512.publicKey).should.be.true; - - jwt.verify(tokens.es256.token, tokens.es256.publicKey).should.be.true; - jwt.verify(tokens.es384.token, tokens.es384.publicKey).should.be.true; - - jwt.verify(tokens.ps256.token, tokens.ps256.publicKey).should.be.true; - jwt.verify(tokens.ps384.token, tokens.ps384.publicKey).should.be.true; + describe('verifies valid tokens', function() { + Object.keys(tokens).forEach(alg => { + it(alg.toUpperCase(), function() { + if(alg.indexOf('hs') !== -1) { + return jwt.verify(tokens[alg].token, tokens[alg].secret) + .should.eventually.be.true; + } else { + return jwt.verify(tokens[alg].token, tokens[alg].publicKey) + .should.eventually.be.true; + } + }); + }); }); it('fails to verify invalid tokens ' + '(logging temporarily disabled to hide exceptions)', function() { log.disableAll(); - try { - const split = tokens.hs256.token.split('.'); - const token = `${split[0]}.${split[1]}`; - const token2 = token + '.'; + const split = tokens.hs256.token.split('.'); + const token = `${split[0]}.${split[1]}`; + const token2 = token + '.'; - jwt.verify(token, tokens.hs256.secret).should.be.false; - jwt.verify(token2, tokens.hs256.secret).should.be.false; + const promises = [ + jwt.verify(token, tokens.hs256.secret), + jwt.verify(token2, tokens.hs256.secret), + jwt.verify(tokens.hs256.token, tokens.hs256.secret + 'sdfasdf'), + jwt.verify(tokens.hs256.token, 'sdfsdf' + tokens.hs256.secret), + jwt.verify(tokens.hs256.token, 'sdfsdf'), + jwt.verify(tokens.rs256.token, tokens.rs256.publicKey.replace('a','b')), + jwt.verify(tokens.es256.token, tokens.es256.publicKey.replace('a','b')), + jwt.verify(tokens.ps256.token, tokens.ps256.publicKey.replace('a','b')) + ]; + + const header = { + typ: 'JWT', + alg: 'none' + }; + const payload = { + sub: 'test' + }; - jwt.verify(tokens.hs256.token, tokens.hs256.secret + 'sdfasdf') - .should.be.false; - jwt.verify(tokens.hs256.token, 'sdfsdf' + tokens.hs256.secret) - .should.be.false; - jwt.verify(tokens.hs256.token, 'sdfsdf').should.be.false; + const token3 = `${b64u.encode(JSON.stringify(header))}.` + + `${b64u.encode(JSON.stringify(payload))}`; - jwt.verify(tokens.rs256.token, tokens.rs256.publicKey.replace('a','b')) - .should.be.false; + promises.push(jwt.verify(token3, 'whatever')); + promises.push(jwt.verify(token3 + '.', 'whatever')); + promises.push(jwt.verify(token3 + '.' + split[2], 'whatever')); - jwt.verify(tokens.es256.token, tokens.es256.publicKey.replace('a','b')) - .should.be.false; - - jwt.verify(tokens.ps256.token, tokens.ps256.publicKey.replace('a','b')) - .should.be.false; - - const header = { - typ: 'JWT', - alg: 'none' - }; - const payload = { - sub: 'test' - }; - - const token3 = `${utf8tob64u(JSON.stringify(header))}.` + - `${utf8tob64u(JSON.stringify(payload))}`; - - jwt.verify(token3, 'whatever').should.be.false; - jwt.verify(token3 + '.', 'whatever').should.be.false; - jwt.verify(token3 + '.' + split[2], 'whatever').should.be.false; - } finally { - log.enableAll(); - } + return Promise.all(promises.map(p => p.then(v => !v, e => true))) + .then(all => all.every(v => v)) + .finally(() => log.enableAll()) + .should.eventually.be.true; }); it('signs/verifies tokens (HS256)', function() { @@ -111,17 +105,18 @@ describe('JWT', function() { sub: 'test' }; - const token = jwt.sign(header, payload, 'secret'); - token.should.be.a('string'); + return jwt.sign(header, payload, 'secret').then(token => { + token.should.be.a('string'); + + const split = token.split('.'); + split.should.have.lengthOf(3); - const split = token.split('.'); - split.should.have.lengthOf(3); - - jwt.verify(token, 'secret').should.be.true; + const decoded = jwt.decode(token); + decoded.header.should.deep.equal(header); + decoded.payload.should.deep.equal(payload); - const decoded = jwt.decode(token); - decoded.header.should.deep.equal(header); - decoded.payload.should.deep.equal(payload); + return jwt.verify(token, 'secret').should.eventually.be.true; + }); }); it('signs/verifies tokens (RS256)', function() { @@ -132,17 +127,19 @@ describe('JWT', function() { sub: 'test' }; - const token = jwt.sign(header, payload, tokens.rs256.privateKey); - token.should.be.a('string'); + return jwt.sign(header, payload, tokens.rs256.privateKey).then(token => { + token.should.be.a('string'); + + const split = token.split('.'); + split.should.have.lengthOf(3); - const split = token.split('.'); - split.should.have.lengthOf(3); - - jwt.verify(token, tokens.rs256.publicKey).should.be.true; + const decoded = jwt.decode(token); + decoded.header.should.deep.equal(header); + decoded.payload.should.deep.equal(payload); - const decoded = jwt.decode(token); - decoded.header.should.deep.equal(header); - decoded.payload.should.deep.equal(payload); + return jwt.verify(token, tokens.rs256.publicKey) + .should.eventually.be.true; + }); }); it('signs/verifies tokens (ES256)', function() { @@ -153,17 +150,19 @@ describe('JWT', function() { sub: 'test' }; - const token = jwt.sign(header, payload, tokens.es256.privateKey); - token.should.be.a('string'); + return jwt.sign(header, payload, tokens.es256.privateKey).then(token => { + token.should.be.a('string'); - const split = token.split('.'); - split.should.have.lengthOf(3); - - jwt.verify(token, tokens.es256.publicKey).should.be.true; + const split = token.split('.'); + split.should.have.lengthOf(3); - const decoded = jwt.decode(token); - decoded.header.should.deep.equal(header); - decoded.payload.should.deep.equal(payload); + const decoded = jwt.decode(token); + decoded.header.should.deep.equal(header); + decoded.payload.should.deep.equal(payload); + + return jwt.verify(token, tokens.es256.publicKey) + .should.eventually.be.true; + }); }); it('signs/verifies tokens (PS256)', function() { @@ -174,20 +173,23 @@ describe('JWT', function() { sub: 'test' }; - const token = jwt.sign(header, payload, tokens.ps256.privateKey); - token.should.be.a('string'); + return jwt.sign(header, payload, tokens.ps256.privateKey).then(token => { + token.should.be.a('string'); + + const split = token.split('.'); + split.should.have.lengthOf(3); - const split = token.split('.'); - split.should.have.lengthOf(3); - - jwt.verify(token, tokens.ps256.publicKey).should.be.true; + const decoded = jwt.decode(token); + decoded.header.should.deep.equal(header); + decoded.payload.should.deep.equal(payload); - const decoded = jwt.decode(token); - decoded.header.should.deep.equal(header); - decoded.payload.should.deep.equal(payload); + return jwt.verify(token, tokens.ps256.publicKey) + .should.eventually.be.true; + }); }); - it('verifies tokens (RS256) using a plain RSA public key', function() { + // TODO: reenable this test after converting plain RSA keys. + /*it('verifies tokens (RS256) using a plain RSA public key', function() { const header = { alg: 'RS256' }; @@ -195,10 +197,10 @@ describe('JWT', function() { sub: 'test' }; - const token = jwt.sign(header, payload, tokens.rs256.privateKey); - - jwt.verify(token, publicKeyPlainRSA).should.be.true; - }); + return jwt.sign(header, payload, tokens.rs256.privateKey).then(token => { + return jwt.verify(token, publicKeyPlainRSA).should.eventually.be.true; + }); + });*/ describe('isValidBase64String', function() { // Generate random data of different sizes. @@ -209,8 +211,8 @@ describe('JWT', function() { bytes = String.fromCharCode.apply(null, bytes); data.push({ - b64: utf8tob64(bytes), - b64u: utf8tob64u(bytes) + b64: b64u.toBase64(b64u.encode(bytes)), + b64u: b64u.encode(bytes) }); } diff --git a/test/unit/utils.js b/test/unit/utils.js index 1d1af042..3b850c64 100644 --- a/test/unit/utils.js +++ b/test/unit/utils.js @@ -3,7 +3,6 @@ import chaiAsPromised from 'chai-as-promised'; import xhrMock from 'xhr-mock'; import { httpGet } from '../../src/utils.js'; -import { utf8tob64, utf8tob64u } from 'jsrsasign'; import { randomFillSync } from 'crypto'; @@ -18,7 +17,7 @@ describe('Generic utils', function() { beforeEach(() => xhrMock.setup()); afterEach(() => xhrMock.teardown()); - + it('fetches data with a GET request', function() { xhrMock.get(url, { status: 200, diff --git a/views/token-editor-algorithms.pug b/views/token-editor-algorithms.pug index fe406993..20ebb164 100644 --- a/views/token-editor-algorithms.pug +++ b/views/token-editor-algorithms.pug @@ -7,11 +7,9 @@ select#algorithm-select option(name='algorithm',value='RS512') RS512 option(name='algorithm',value='ES256') ES256 option(name='algorithm',value='ES384') ES384 - //- Unsupported by jsrsasign - option(name='algorithm',value='ES512') ES512 + option(name='algorithm',value='ES512') ES512 option(name='algorithm',value='PS256') PS256 option(name='algorithm',value='PS384') PS384 - //- Buggy in jsrsasign + //- Buggy in node-jose for now, supported by browsers option(name='algorithm',value='PS512') PS512 - \ No newline at end of file From 6d20adc05908d1c2dd594a904befd8f7a9f9ba07 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Thu, 7 Jun 2018 01:53:36 -0300 Subject: [PATCH 065/456] Improve bundle size. --- webpack.common.js | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/webpack.common.js b/webpack.common.js index 25e40aa0..9903d3a7 100644 --- a/webpack.common.js +++ b/webpack.common.js @@ -20,9 +20,7 @@ module.exports = { ios: 10, ie: 11, }, - modules: 'commonjs', - "useBuiltIns": 'usage', - "debug": false + modules: false } ]] } From 6887e94e688b2606185a99af231131c841145bcb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Thu, 7 Jun 2018 01:53:49 -0300 Subject: [PATCH 066/456] Handle plain RSA public keys gracefully. --- src/editor/jwt.js | 69 ++++++++++++++++++----------------------- test/unit/editor/jwt.js | 5 ++- 2 files changed, 32 insertions(+), 42 deletions(-) diff --git a/src/editor/jwt.js b/src/editor/jwt.js index d383f7cc..022e9bd8 100644 --- a/src/editor/jwt.js +++ b/src/editor/jwt.js @@ -1,6 +1,7 @@ import jose from 'node-jose'; import b64u from 'base64url'; import any from 'promise.any'; +import { pki } from 'node-forge'; import log from 'loglevel'; @@ -21,6 +22,31 @@ function paddedKey(key, alg, base64Secret) { return b64u.encode(buf); } +/* + * This function handles plain RSA keys not wrapped in a + * X.509 SubjectPublicKeyInfo structure. It returns a PEM encoded public key + * wrapper in that structure. + * See: https://stackoverflow.com/questions/18039401/how-can-i-transform-between-the-two-styles-of-public-key-format-one-begin-rsa + * @param {String} publicKey The public key as a PEM string. + * @returns {String} The PEM encoded public key in + * X509 SubjectPublicKeyInfo format. + */ +function plainRsaKeyToX509Key(key) { + try { + const startTag = '-----BEGIN RSA PUBLIC KEY-----'; + const endTag = '-----END RSA PUBLIC KEY-----'; + const startTagPos = key.indexOf(startTag); + const endTagPos = key.indexOf(endTag); + + return startTagPos !== -1 && endTagPos !== -1 ? + pki.publicKeyToPem(pki.publicKeyFromPem(key)) : + key; + } catch(e) { + // If anything fails, it may not be a plain RSA key, so return the same key. + return key; + } +} + function getJoseKey(header, key, base64Secret) { if(header.alg.indexOf('HS') === 0) { return jose.JWK.asKey({ @@ -30,6 +56,10 @@ function getJoseKey(header, key, base64Secret) { k: paddedKey(key, header.alg, base64Secret) }); } else { + if(header.alg.indexOf('RS') === 0) { + key = plainRsaKeyToX509Key(key); + } + return any(['pem', 'json'].map(form => { try { return jose.JWK.asKey(key, form); @@ -65,45 +95,6 @@ export function sign(header, ); } -// TODO: reenable this (and tests) -/** - * This function takes a PEM string with a public key and returns a - * jsrsasign key object (RSAKey, KJUR.crypto.DSA, KJUR.crypto.ECDSA). It also - * handles plain RSA keys not wrapped in a X.509 SubjectPublicKeyInfo - * structure. - * See: https://stackoverflow.com/questions/18039401/how-can-i-transform-between-the-two-styles-of-public-key-format-one-begin-rsa - * @param {String} publicKey The public key as a PEM string. - * @returns {Object} The public key as a jsrsasign key object. - * / -function getPublicKeyObject(publicKey) { - try { - const startTag = '-----BEGIN RSA PUBLIC KEY-----'; - const endTag = '-----END RSA PUBLIC KEY-----'; - const startTagPos = publicKey.indexOf(startTag); - const endTagPos = publicKey.indexOf(endTag); - - if(startTagPos !== -1 && endTagPos !== -1) { - const plainDataBase64 = - publicKey.substr(0, endTagPos) - .substr(startTagPos + startTag.length); - - const plainDataDER = b64tohex(plainDataBase64); - - const barePublicKey = { - n: ASN1HEX.getVbyList(plainDataDER, 0, [0], '02'), - e: ASN1HEX.getVbyList(plainDataDER, 0, [1], '02') - }; - - return KEYUTIL.getKey(barePublicKey); - } - } catch(e) { - log.error('Failed to make public key into X.509 ' + - 'SubjectPublicKeyInfo key:', e); - } - - return KEYUTIL.getKey(publicKey); -}*/ - export function verify(jwt, secretOrPublicKeyString, base64Secret = false) { if(!isToken(jwt)) { return Promise.resolve(false); diff --git a/test/unit/editor/jwt.js b/test/unit/editor/jwt.js index 8df7756c..362f8175 100644 --- a/test/unit/editor/jwt.js +++ b/test/unit/editor/jwt.js @@ -188,8 +188,7 @@ describe('JWT', function() { }); }); - // TODO: reenable this test after converting plain RSA keys. - /*it('verifies tokens (RS256) using a plain RSA public key', function() { + it('verifies tokens (RS256) using a plain RSA public key', function() { const header = { alg: 'RS256' }; @@ -200,7 +199,7 @@ describe('JWT', function() { return jwt.sign(header, payload, tokens.rs256.privateKey).then(token => { return jwt.verify(token, publicKeyPlainRSA).should.eventually.be.true; }); - });*/ + }); describe('isValidBase64String', function() { // Generate random data of different sizes. From c671aa4e03a0229f4d51c61091247d76b1315ec7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Thu, 7 Jun 2018 16:41:58 -0300 Subject: [PATCH 067/456] Disable ES512 in Safari: not supported for now. --- src/dom-elements.js | 14 +++++++++----- src/editor/index.js | 8 ++++---- src/editor/utils.js | 18 ++++++++++++++---- 3 files changed, 27 insertions(+), 13 deletions(-) diff --git a/src/dom-elements.js b/src/dom-elements.js index f8e45867..dd4fecff 100644 --- a/src/dom-elements.js +++ b/src/dom-elements.js @@ -1,6 +1,6 @@ -export const encodedTabLink = +export const encodedTabLink = document.querySelector('.tab-link a[href="#encoded-jwt"]'); -export const decodedTabLink = +export const decodedTabLink = document.querySelector('.tab-link a[href="#decoded-jwt"]'); export const encodedTabElement = document.getElementById('encoded-jwt'); export const decodedTabElement = document.getElementById('decoded-jwt'); @@ -15,17 +15,21 @@ export const signatureStatusElement = document.querySelector('.validation-status.js-signature'); export const algorithmSelect = document.getElementById('algorithm-select'); +export const algorithmEs512 = + algorithmSelect.querySelector('option[value="ES512"]'); -export const keyEditorContainer = document.querySelector('.jwt-signature pre.RS256'); +export const keyEditorContainer = + document.querySelector('.jwt-signature pre.RS256'); export const rsaShaTextSpan = document.getElementById('rsasha-text'); -export const secretEditorContainer = document.querySelector('.jwt-signature pre.HS256'); +export const secretEditorContainer = + document.querySelector('.jwt-signature pre.HS256'); export const hmacShaTextSpan = document.getElementById('hmacsha-text'); export const publicKeyTextArea = document.querySelector('.jwt-signature textarea[name="public-key"]'); export const privateKeyTextArea = document.querySelector('.jwt-signature textarea[name="private-key"]'); -export const secretInput = +export const secretInput = document.querySelector('.jwt-signature input[name="secret"]'); export const secretBase64Checkbox = document.getElementById('is-base64-encoded'); diff --git a/src/editor/index.js b/src/editor/index.js index 1e6ec966..50d8c71d 100644 --- a/src/editor/index.js +++ b/src/editor/index.js @@ -1,7 +1,6 @@ import { deferToNextLoop, - safeLocalStorageSetItem, - copyTokenLink + safeLocalStorageSetItem } from '../utils.js'; import { downloadPublicKeyIfPossible } from './public-key-download.js'; import { setupClaimsTooltip } from './claims-tooltip.js'; @@ -10,7 +9,8 @@ import { getTrimmedValue, stringify, fixEditorHeight, - getSelectedAlgorithm + getSelectedAlgorithm, + disableUnsupportedAlgorithms } from './utils.js'; import { sign, verify, decode } from './jwt.js'; import EventManager from './event-manager.js'; @@ -26,7 +26,6 @@ import { editorElement, headerElement, payloadElement, - decodedElement, secretInput, privateKeyTextArea, publicKeyTextArea, @@ -388,6 +387,7 @@ export function getTokenEditorValue() { } export function setupTokenEditor() { + disableUnsupportedAlgorithms(); setupEvents(); selectAlgorithm('HS256'); loadToken(); diff --git a/src/editor/utils.js b/src/editor/utils.js index f8b0a4f2..6a4a724a 100644 --- a/src/editor/utils.js +++ b/src/editor/utils.js @@ -1,8 +1,7 @@ -import { tokenEditor } from './instances.js'; import { isWideScreen } from '../utils.js'; -import { - algorithmSelect, - publicKeyTextArea, +import { + algorithmSelect, + algorithmEs512, editorElement, decodedElement } from '../dom-elements.js'; @@ -32,3 +31,14 @@ export function getSelectedAlgorithm() { const selected = algorithmSelect.options[algorithmSelect.selectedIndex]; return selected.value; } + +export function isSafari() { + return /^((?!chrome|android).)*safari/i.test(navigator.userAgent); +} + +export function disableUnsupportedAlgorithms() { + // TODO: test supported algorithms in runtime + if(isSafari) { + algorithmEs512.disabled = true; + } +} From 6f64f2680a955b0d6503dc73c8765edb96396575 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Thu, 7 Jun 2018 18:41:52 -0300 Subject: [PATCH 068/456] Set version 3.0.0 (website and extension). --- manifest.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/manifest.json b/manifest.json index 9824c430..51bdb3c7 100644 --- a/manifest.json +++ b/manifest.json @@ -3,7 +3,7 @@ "name": "JWT Debugger", "description": "The JWT.io debugger as a Web Extension", - "version": "2.1.3", + "version": "3.0.0", "browser_action": { "default_icon": "img/favicon/favicon-96x96.png", @@ -37,7 +37,7 @@ } }, - "content_security_policy": "script-src 'self' https://ssl.google-analytics.com; object-src 'self'", + "content_security_policy": "script-src 'self' https://ssl.google-analytics.com; object-src 'self'", "permissions": [ "activeTab", diff --git a/package.json b/package.json index f7dcdaa1..2a1b16f3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jwt.io", - "version": "2.2.0", + "version": "3.0.0", "repository": { "type": "git", "url": "https://github.com/jsonwebtoken/jsonwebtoken.github.io" From 7694731e62c9ebee02ed3f9168355f886bc3ccc5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Thu, 7 Jun 2018 22:17:27 -0300 Subject: [PATCH 069/456] Fix Safari detection. --- src/editor/utils.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/editor/utils.js b/src/editor/utils.js index 6a4a724a..aa202d30 100644 --- a/src/editor/utils.js +++ b/src/editor/utils.js @@ -38,7 +38,7 @@ export function isSafari() { export function disableUnsupportedAlgorithms() { // TODO: test supported algorithms in runtime - if(isSafari) { + if(isSafari()) { algorithmEs512.disabled = true; } } From 477cef49af7a93c4b8b008997ce79a3a7bf8c1fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Thu, 7 Jun 2018 22:38:24 -0300 Subject: [PATCH 070/456] Fix failing test in CI. --- test/functional/editor.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/test/functional/editor.js b/test/functional/editor.js index 2ba69b22..3264cacc 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -116,6 +116,9 @@ describe('Editor', function() { window.test.tokenEditor.setValue(token); }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + const invalid = await this.page.$eval('.validation-status', status => { return status.classList.contains('invalid-token') && status.textContent.indexOf('invalid') !== -1; From 6a15692fee1767625dda1efe85e0ac60e68b58ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Thu, 7 Jun 2018 22:40:40 -0300 Subject: [PATCH 071/456] Update licence. --- LICENSE.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/LICENSE.txt b/LICENSE.txt index e39bd6be..e19b3a5e 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -23,7 +23,8 @@ SOFTWARE. ---- Distributions of this software ("bundles") contain code from other -libraries. Additional licenses from these libraries can be found below. +libraries. For a list of software included in a bundle, refer to +package.json and the list of dependencies. ---- From dfe6c8d12ef75a06b7bc97c1f8fff08e6fa81a5c Mon Sep 17 00:00:00 2001 From: glejeune Date: Fri, 8 Jun 2018 15:06:52 +0200 Subject: [PATCH 072/456] Update Erlang JWErl --- views/website/libraries/8-Erlang.json | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/views/website/libraries/8-Erlang.json b/views/website/libraries/8-Erlang.json index 68839fa9..aaac7b38 100644 --- a/views/website/libraries/8-Erlang.json +++ b/views/website/libraries/8-Erlang.json @@ -9,13 +9,13 @@ "support": { "sign": true, "verify": true, - "iss": false, - "sub": false, - "aud": false, + "iss": true, + "sub": true, + "aud": true, "exp": true, "nbf": true, "iat": true, - "jti": false, + "jti": true, "hs256": true, "hs384": true, "hs512": true, @@ -28,9 +28,9 @@ }, "authorUrl": "https://github.com/glejeune", "authorName": "Gregoire Lejeune", - "gitHubRepoPath": "emedia-project/jwerl", - "repoUrl": "https://github.com/emedia-project/jwerl", - "installCommandHtml": "git clone https://github.com/emedia-project/jwerl.git" + "gitHubRepoPath": "G-Corp/jwerl", + "repoUrl": "https://github.com/G-Corp/jwerl", + "installCommandHtml": "git clone https://github.com/G-Corp/jwerl.git" } ] -} \ No newline at end of file +} From bf70a02367040f2b01f33f69f24d5c10ed1c9cf7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Fri, 8 Jun 2018 10:37:23 -0300 Subject: [PATCH 073/456] Deployment test. --- .deployment-test | 1 + 1 file changed, 1 insertion(+) create mode 100644 .deployment-test diff --git a/.deployment-test b/.deployment-test new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/.deployment-test @@ -0,0 +1 @@ + From 4ec4634f3d41a46fe0dad55e8d91d2836e40d7ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Fri, 8 Jun 2018 11:11:29 -0300 Subject: [PATCH 074/456] Deployment test: disable Travis cache. --- .travis.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 06abbf9e..08c99c3a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,6 +6,6 @@ before_script: - echo " StrictHostKeyChecking no" >> ~/.ssh/config - echo " CheckHostIP no" >> ~/.ssh/config - npm install -cache: - directories: - - node_modules +#cache: +# directories: +# - node_modules From b409521580a9eee1d3df9c2f73efe9c82e11ecc5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Fri, 8 Jun 2018 11:25:44 -0300 Subject: [PATCH 075/456] Remove stray file. --- .deployment-test | 1 - 1 file changed, 1 deletion(-) delete mode 100644 .deployment-test diff --git a/.deployment-test b/.deployment-test deleted file mode 100644 index 8b137891..00000000 --- a/.deployment-test +++ /dev/null @@ -1 +0,0 @@ - From a8b05fd44c175644df0b839a765f1242ceb7399b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Fri, 8 Jun 2018 12:46:27 -0300 Subject: [PATCH 076/456] Deployment trigger file. --- .deployment-trigger | 1 + 1 file changed, 1 insertion(+) create mode 100644 .deployment-trigger diff --git a/.deployment-trigger b/.deployment-trigger new file mode 100644 index 00000000..931443ae --- /dev/null +++ b/.deployment-trigger @@ -0,0 +1 @@ +This file is used to trigger running of CI in case of timeouts. We should fix this someday. From 83be3adbcb9d79bbb0795448276322f88d97a7a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Tue, 12 Jun 2018 23:07:53 -0300 Subject: [PATCH 077/456] Fix public key loading for tokens in location hash. --- src/website/index.js | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/website/index.js b/src/website/index.js index 11902985..3516694d 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -8,9 +8,8 @@ import { setupSmoothScrolling } from './smooth-scrolling.js'; import { setupHighlighting } from './highlighting.js'; import { isChrome, isFirefox } from './utils.js'; import { setupShareJwtButton } from '../share-button.js'; -import { - publicKeyTextArea, - codeElements, +import { + publicKeyTextArea, debuggerSection, extensionSection, ebookSection, @@ -27,7 +26,7 @@ function parseLocationQuery() { const locHash = queryString.parse(document.location.hash.substr(1)); const keys = [ - 'id_token', + 'id_token', 'access_token', 'value', 'token', @@ -39,8 +38,8 @@ function parseLocationQuery() { if(token) { setTokenEditorValue(token); - if(locSearch.publicKey) { - publicKeyTextArea.value = locSearch.publicKey; + if(locSearch.publicKey || locHash.publicKey) { + publicKeyTextArea.value = locSearch.publicKey || locHash.publicKey; } debuggerSection.scrollIntoView(true); From 1d5ce27d8221601504c0891cf0e55bf06bb1cae1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Tue, 12 Jun 2018 23:08:19 -0300 Subject: [PATCH 078/456] Do not store last valid token. Remove all previously stored tokens. --- package.json | 2 +- src/editor/index.js | 44 +++++++++++---------------------------- test/functional/editor.js | 4 ++-- 3 files changed, 15 insertions(+), 35 deletions(-) diff --git a/package.json b/package.json index 2a1b16f3..3046d2b4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jwt.io", - "version": "3.0.0", + "version": "3.1.0", "repository": { "type": "git", "url": "https://github.com/jsonwebtoken/jsonwebtoken.github.io" diff --git a/src/editor/index.js b/src/editor/index.js index 50d8c71d..c360a0b1 100644 --- a/src/editor/index.js +++ b/src/editor/index.js @@ -1,6 +1,5 @@ import { - deferToNextLoop, - safeLocalStorageSetItem + deferToNextLoop } from '../utils.js'; import { downloadPublicKeyIfPossible } from './public-key-download.js'; import { setupClaimsTooltip } from './claims-tooltip.js'; @@ -190,33 +189,6 @@ function markAsInvalidWithElement(element, clearTokenEditor = true) { } } -function saveAsLastToken() { - const token = getTrimmedValue(tokenEditor); - if(token && token.length > 0) { - safeLocalStorageSetItem('lastToken', token); - } - - const publicKey = publicKeyTextArea.value; - if(publicKey && publicKey.length > 0) { - safeLocalStorageSetItem('lastPublicKey', publicKey); - } -} - -function loadToken() { - const lastToken = localStorage.getItem('lastToken'); - - if(lastToken) { - setTokenEditorValue(lastToken); - - const lastPublicKey = localStorage.getItem('lastPublicKey'); - if(lastPublicKey) { - publicKeyTextArea.value = lastPublicKey; - } - } else { - useDefaultToken('HS256'); - } -} - function encodeToken() { deferToNextLoop(fixEditorHeight); @@ -251,7 +223,6 @@ function encodeToken() { sign(header, payload, key, secretBase64Checkbox.checked).then(encoded => { eventManager.withDisabledEvents(() => { tokenEditor.setValue(encoded); - saveAsLastToken(); }); }).catch(e => { eventManager.withDisabledEvents(() => { @@ -289,7 +260,6 @@ function decodeToken() { if(decoded.errors) { markAsInvalidWithElement(editorElement, false); } else { - saveAsLastToken(); verifyToken(); } } catch(e) { @@ -321,6 +291,15 @@ function verifyToken() { }); } +// The last saved token functionality has been flagged as a security issue. +// This function removes any locally stored tokens in the past. +// Once a considerable amount of time has passed since this was put in place, +// it may be safe to remove it. Enabled at: 2018-06-12. +function removeSavedTokens() { + localStorage.removeItem('lastToken'); + localStorage.removeItem('lastPublicKey'); +} + function setupTabEvents() { // These are relevant for portrait or mobile screens. @@ -390,8 +369,9 @@ export function setupTokenEditor() { disableUnsupportedAlgorithms(); setupEvents(); selectAlgorithm('HS256'); - loadToken(); + useDefaultToken('HS256'); fixEditorHeight(); setupSecretLengthTooltip(); setupClaimsTooltip(); + removeSavedTokens(); } diff --git a/test/functional/editor.js b/test/functional/editor.js index 3264cacc..32ed24bd 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -1087,7 +1087,7 @@ describe('Editor', function() { expect(invalid).to.be.true; }); - it('Saves last edited token', async function() { + it('Does NOT save the last edited token', async function() { await this.page.select('#algorithm-select', 'HS256'); const secretInput = await this.page.$('input[name="secret"]'); @@ -1117,7 +1117,7 @@ describe('Editor', function() { return JSON.parse(window.test.payloadEditor.getValue()); }); - expect(storedPayload).to.deep.equal(payload); + expect(storedPayload).to.not.deep.equal(payload); }); describe('JWT share button', function() { From 337e445efffe28c27dac80f0ff03b9d106e327dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 13 Jun 2018 22:11:37 -0300 Subject: [PATCH 079/456] Conceptual fixes in the introduction. --- package.json | 2 +- views/website/md/introduction.md | 13 +++++-------- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/package.json b/package.json index 3046d2b4..a09be833 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jwt.io", - "version": "3.1.0", + "version": "3.1.1", "repository": { "type": "git", "url": "https://github.com/jsonwebtoken/jsonwebtoken.github.io" diff --git a/views/website/md/introduction.md b/views/website/md/introduction.md index b863ccc0..05de3616 100755 --- a/views/website/md/introduction.md +++ b/views/website/md/introduction.md @@ -1,7 +1,7 @@ **NEW:** get the [JWT Handbook for free](https://auth0.com/e-books/jwt-handbook) and learn JWTs in depth! ## What is JSON Web Token? -JSON Web Token (JWT) is an open standard ([RFC 7519](https://tools.ietf.org/html/rfc7519)) that defines a compact and self-contained way for securely transmitting information between parties as a JSON object. This information can be verified and trusted because it is digitally signed. JWTs can be signed using a secret (with the **HMAC** algorithm) or a public/private key pair using **RSA**. +JSON Web Token (JWT) is an open standard ([RFC 7519](https://tools.ietf.org/html/rfc7519)) that defines a compact and self-contained way for securely transmitting information between parties as a JSON object. This information can be verified and trusted because it is digitally signed. JWTs can be signed using a secret (with the **HMAC** algorithm) or a public/private key pair using **RSA** or **ECDSA**. Although JWTs can be encrypted to also provide secrecy between parties, we will focus on *signed* tokens. Signed tokens can verify the *integrity* of the claims contained within it, while encrypted tokens *hide* those claims from other parties. When tokens are signed using public/private key pairs, the signature also certifies that only the party holding the private key is the one that signed it. @@ -9,7 +9,7 @@ Let's explain some concepts further. - **Compact**: Because of their smaller size, JWTs can be sent through a URL, POST parameter, or inside an HTTP header. Additionally, the smaller size means transmission is fast. -- **Self-contained**: The payload contains all the required information about the user, avoiding the need to query the database more than once. +- **Self-contained**: The payload may contain extra information about the user, avoiding the need to query the database more than once. ## When should you use JSON Web Tokens? Here are some scenarios where JSON Web Tokens are useful: @@ -48,7 +48,7 @@ Then, this JSON is **Base64Url** encoded to form the first part of the JWT. ### Payload -The second part of the token is the payload, which contains the claims. Claims are statements about an entity (typically, the user) and additional metadata. +The second part of the token is the payload, which contains the claims. Claims are statements about an entity (typically, the user) and additional data. There are three types of claims: *registered*, *public*, and *private* claims. - [**Registered claims**](https://tools.ietf.org/html/rfc7519#section-4.1): These are a set of predefined claims which are not mandatory but recommended, to provide a set of useful, interoperable claims. Some of them are: **iss** (issuer), **exp** (expiration time), **sub** (subject), **aud** (audience), and [others](https://tools.ietf.org/html/rfc7519#section-4.1). @@ -99,9 +99,7 @@ If you want to play with JWT and put these concepts into practice, you can use [ ![JWT.io Debugger](https://cdn.auth0.com/blog/legacy-app-auth/legacy-app-auth-5.png) ## How do JSON Web Tokens work? -In authentication, when the user successfully logs in using their credentials, a JSON Web Token will be returned and must be saved locally (typically in local storage, but cookies can be also used), instead of the traditional approach of creating a session in the server and returning a cookie. - -> There are security considerations that must be taken into account with regards to the way tokens are stored. These are enumerated in [Where to Store Tokens](https://auth0.com/docs/security/store-tokens). +In authentication, when the user successfully logs in using their credentials, a JSON Web Token will be returned. Since tokens are credentials, great care must be taken to prevent security issues. In general, you should not keep tokens longer than required. Whenever the user wants to access a protected route or resource, the user agent should send the JWT, typically in the **Authorization** header using the **Bearer** schema. The content of the header should look like the following: @@ -109,8 +107,7 @@ Whenever the user wants to access a protected route or resource, the user agent Authorization: Bearer ``` -This is a stateless authentication mechanism as the user state is never saved in server memory. -The server's protected routes will check for a valid JWT in the Authorization header, and if it's present, the user will be allowed to access protected resources. As JWTs are self-contained, all the necessary information is there, reducing the need to query the database multiple times. +This can be, in certain cases, a stateless authentication mechanism. The server's protected routes will check for a valid JWT in the `Authorization` header, and if it's present, the user will be allowed to access protected resources. If the JWT is self-contained, all the necessary information is there, reducing the need to query the database multiple times. This allows you to fully rely on data APIs that are stateless and even make requests to downstream services. It doesn't matter which domains are serving your APIs, so Cross-Origin Resource Sharing (CORS) won't be an issue as it doesn't use cookies. From 7a0b1a6d947f1fd4c6712c640b0a36c5c13868e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Thu, 14 Jun 2018 13:55:57 -0300 Subject: [PATCH 080/456] More conceptual fixes for the introduction. --- views/website/md/introduction.md | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/views/website/md/introduction.md b/views/website/md/introduction.md index 05de3616..d07d67bb 100755 --- a/views/website/md/introduction.md +++ b/views/website/md/introduction.md @@ -5,16 +5,10 @@ JSON Web Token (JWT) is an open standard ([RFC 7519](https://tools.ietf.org/html Although JWTs can be encrypted to also provide secrecy between parties, we will focus on *signed* tokens. Signed tokens can verify the *integrity* of the claims contained within it, while encrypted tokens *hide* those claims from other parties. When tokens are signed using public/private key pairs, the signature also certifies that only the party holding the private key is the one that signed it. -Let's explain some concepts further. - -- **Compact**: Because of their smaller size, JWTs can be sent through a URL, POST parameter, or inside an HTTP header. Additionally, the smaller size means transmission is fast. - -- **Self-contained**: The payload may contain extra information about the user, avoiding the need to query the database more than once. - ## When should you use JSON Web Tokens? Here are some scenarios where JSON Web Tokens are useful: -- **Authentication**: This is the most common scenario for using JWT. Once the user is logged in, each subsequent request will include the JWT, allowing the user to access routes, services, and resources that are permitted with that token. Single Sign On is a feature that widely uses JWT nowadays, because of its small overhead and its ability to be easily used across different domains. +- **Authorization**: This is the most common scenario for using JWT. Once the user is logged in, each subsequent request will include the JWT, allowing the user to access routes, services, and resources that are permitted with that token. Single Sign On is a feature that widely uses JWT nowadays, because of its small overhead and its ability to be easily used across different domains. - **Information Exchange**: JSON Web Tokens are a good way of securely transmitting information between parties. Because JWTs can be signed—for example, using public/private key pairs—you can be sure the senders are who they say they are. Additionally, as the signature is calculated using the header and the payload, you can also verify that the content hasn't been tampered with. @@ -107,13 +101,17 @@ Whenever the user wants to access a protected route or resource, the user agent Authorization: Bearer ``` -This can be, in certain cases, a stateless authentication mechanism. The server's protected routes will check for a valid JWT in the `Authorization` header, and if it's present, the user will be allowed to access protected resources. If the JWT is self-contained, all the necessary information is there, reducing the need to query the database multiple times. +This can be, in certain cases, a stateless authorization mechanism. The server's protected routes will check for a valid JWT in the `Authorization` header, and if it's present, the user will be allowed to access protected resources. If the JWT contains the necessary data, the need to query the database for certain operations may be reduced, though this may not always be the case. + +If the token is sent in the `Authorization` header, Cross-Origin Resource Sharing (CORS) won't be an issue as it doesn't use cookies. -This allows you to fully rely on data APIs that are stateless and even make requests to downstream services. It doesn't matter which domains are serving your APIs, so Cross-Origin Resource Sharing (CORS) won't be an issue as it doesn't use cookies. +The following diagram shows how a JWT is obtained and used to access APIs or resources: -The following diagram shows this process: +![How does a JSON Web Token works](https://cdn2.auth0.com/docs/media/articles/api-auth/client-credentials-grant.png) -![How does a JSON Web Token works](https://cdn.auth0.com/content/jwt/jwt-diagram.png) +1. The application or client requests authorization to the authorization server. This is performed through one of the different authorization flows. For example, a typical [OpenID Connect](http://openid.net/connect/) compliant web application will go through the `/oauth/authorize` endpoint using the [authorization code flow](http://openid.net/specs/openid-connect-core-1_0.html#CodeFlowAuth). +2. When the authorization is granted, the authorization server returns an access token to the application. +3. The application uses the access token to access a protected resource (like an API). Do note that with signed tokens, all the information contained within the token is exposed to users or other parties, even though they are unable to change it. This means you should not put secret information within the token. From aba64871060a331e1733cc747e83e586d35a28a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Thu, 14 Jun 2018 14:00:06 -0300 Subject: [PATCH 081/456] Typo --- views/website/md/introduction.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/md/introduction.md b/views/website/md/introduction.md index d07d67bb..ec180855 100755 --- a/views/website/md/introduction.md +++ b/views/website/md/introduction.md @@ -107,7 +107,7 @@ If the token is sent in the `Authorization` header, Cross-Origin Resource Sharin The following diagram shows how a JWT is obtained and used to access APIs or resources: -![How does a JSON Web Token works](https://cdn2.auth0.com/docs/media/articles/api-auth/client-credentials-grant.png) +![How does a JSON Web Token work](https://cdn2.auth0.com/docs/media/articles/api-auth/client-credentials-grant.png) 1. The application or client requests authorization to the authorization server. This is performed through one of the different authorization flows. For example, a typical [OpenID Connect](http://openid.net/connect/) compliant web application will go through the `/oauth/authorize` endpoint using the [authorization code flow](http://openid.net/specs/openid-connect-core-1_0.html#CodeFlowAuth). 2. When the authorization is granted, the authorization server returns an access token to the application. From dd825e5d28d9428a37aa8bb9afba2ec9e869a57f Mon Sep 17 00:00:00 2001 From: Oskar Laska Date: Fri, 22 Jun 2018 12:51:20 +0200 Subject: [PATCH 082/456] Bump guardian version (Elixir lib) --- views/website/libraries/7-Elixir.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/views/website/libraries/7-Elixir.json b/views/website/libraries/7-Elixir.json index 3fe0667d..43a75a26 100644 --- a/views/website/libraries/7-Elixir.json +++ b/views/website/libraries/7-Elixir.json @@ -86,7 +86,7 @@ "authorName": "hassox", "gitHubRepoPath": "ueberauth/guardian", "repoUrl": "https://github.com/ueberauth/guardian", - "installCommandHtml": "defp deps, do: [{:guardian, \"~> 0.11.1\"}]" + "installCommandHtml": "defp deps, do: [{:guardian, \"~> 1.0 \"}]" } ] -} \ No newline at end of file +} From 0bffd1278a5fc1a604a6f6901accacdf4164b980 Mon Sep 17 00:00:00 2001 From: Jitendra Adhikari Date: Sun, 24 Jun 2018 21:31:49 +0700 Subject: [PATCH 083/456] Add adhocore/jwt for php --- views/website/libraries/24-PHP.json | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/views/website/libraries/24-PHP.json b/views/website/libraries/24-PHP.json index cb0c069d..609dc512 100644 --- a/views/website/libraries/24-PHP.json +++ b/views/website/libraries/24-PHP.json @@ -255,6 +255,34 @@ "gitHubRepoPath": "cdoco/php-jwt", "repoUrl": "https://github.com/cdoco/php-jwt", "installCommandHtml": "git clone https://github.com/cdoco/php-jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/adhocore", + "authorName": "Jitendra Adhikari", + "gitHubRepoPath": "adhocore/jwt", + "repoUrl": "https://github.com/adhocore/jwt", + "installCommandHtml": "composer require adhocore/jwt" } ] } From da76e8fcdbe3a8ae87ce26c9795f14aa2648a12e Mon Sep 17 00:00:00 2001 From: Jaco Koster Date: Thu, 28 Jun 2018 12:01:29 +0200 Subject: [PATCH 084/456] Changed Node-JS-capabilities based on the readme Every item in the list seems to be implemented: https://github.com/auth0/node-jsonwebtoken#jwtsignpayload-secretorprivatekey-options-callback --- views/website/libraries/2-Node.js.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/views/website/libraries/2-Node.js.json b/views/website/libraries/2-Node.js.json index 3777880d..b15b546e 100644 --- a/views/website/libraries/2-Node.js.json +++ b/views/website/libraries/2-Node.js.json @@ -9,13 +9,13 @@ "support": { "sign": true, "verify": true, - "iss": false, - "sub": false, + "iss": true, + "sub": true, "aud": true, "exp": true, - "nbf": false, - "iat": false, - "jti": false, + "nbf": true, + "iat": true, + "jti": true, "hs256": true, "hs384": true, "hs512": true, @@ -33,4 +33,4 @@ "installCommandHtml": "npm install jsonwebtoken" } ] -} \ No newline at end of file +} From 7219a8ad89e0e8bd0c2b8657b62e80f1049f7164 Mon Sep 17 00:00:00 2001 From: Seth Moeckel Date: Mon, 2 Jul 2018 21:00:17 -0400 Subject: [PATCH 085/456] added rucuriousyet/jwt --- views/website/libraries/9-Go.json | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index 34e13bbf..54be8fb0 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -283,6 +283,34 @@ "gitHubRepoPath": "pascaldekloe/jwt", "repoUrl": "https://github.com/pascaldekloe/jwt", "installCommandHtml": "go get github.com/pascaldekloe/jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": false, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://gitlab.com/rucuriousyet", + "authorName": "Seth Moeckel", + "gitHubRepoPath": "rucuriousyet/jwt", + "repoUrl": "https://gitlab.com/rucuriousyet/jwt", + "installCommandHtml": "go get gitlab.com/rucuriousyet/jwt" } ] -} \ No newline at end of file +} From c0ce03193e33fb8b28defd6d9e7b50c30626807a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 4 Jul 2018 17:11:49 -0300 Subject: [PATCH 086/456] Fix JWT handbook URL. --- views/website/ebook.pug | 2 +- views/website/md/introduction.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/views/website/ebook.pug b/views/website/ebook.pug index 0c7ead59..20950f54 100644 --- a/views/website/ebook.pug +++ b/views/website/ebook.pug @@ -2,4 +2,4 @@ section.jtw-ebook-banner span strong Get the JWT Handbook for free! |  Spread the word and download it now. - a.btn.btn-download-ebook(href='https://auth0.com/e-books/jwt-handbook?utm_source=jwtio&utm_medium=sc&utm_campaign=rotating_banner', target='_blank') Download Ebook + a.btn.btn-download-ebook(href='https://auth0.com/resources/ebooks/jwt-handbook?utm_source=jwtio&utm_medium=sc&utm_campaign=rotating_banner', target='_blank') Download Ebook diff --git a/views/website/md/introduction.md b/views/website/md/introduction.md index ec180855..dda87a91 100755 --- a/views/website/md/introduction.md +++ b/views/website/md/introduction.md @@ -1,4 +1,4 @@ -**NEW:** get the [JWT Handbook for free](https://auth0.com/e-books/jwt-handbook) and learn JWTs in depth! +**NEW:** get the [JWT Handbook for free](https://auth0.com/resources/ebooks/jwt-handbook) and learn JWTs in depth! ## What is JSON Web Token? JSON Web Token (JWT) is an open standard ([RFC 7519](https://tools.ietf.org/html/rfc7519)) that defines a compact and self-contained way for securely transmitting information between parties as a JSON object. This information can be verified and trusted because it is digitally signed. JWTs can be signed using a secret (with the **HMAC** algorithm) or a public/private key pair using **RSA** or **ECDSA**. From 28ce8d8b294dac1b2ab6a26bb2ac4dad5f94d27c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 4 Jul 2018 17:12:01 -0300 Subject: [PATCH 087/456] Set version 3.1.2. --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index a09be833..9919f8ae 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jwt.io", - "version": "3.1.1", + "version": "3.1.2", "repository": { "type": "git", "url": "https://github.com/jsonwebtoken/jsonwebtoken.github.io" From b82abbbebe1514e10f4a2d8f7c9c17ddba906743 Mon Sep 17 00:00:00 2001 From: joseeantonior Date: Thu, 5 Jul 2018 17:49:58 -0500 Subject: [PATCH 088/456] Update libraries.pug --- views/website/libraries.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries.pug b/views/website/libraries.pug index a5521b0a..3fc76acf 100644 --- a/views/website/libraries.pug +++ b/views/website/libraries.pug @@ -18,7 +18,7 @@ section#libraries-io.libraries-jwt .warning b Warning: | Critical vulnerabilities in JSON Web Token libraries with asymmetric keys. - a(href='https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/') + a(href='https://auth0.com/blog/critical-vulnerabilities-in-json-web-token-libraries/') | Learn more svg(height='48', viewbox='0 0 48 48', width='48', xmlns='http://www.w3.org/2000/svg') From 13cd7915f6f6b47581d29b34cac97ffb6df4a5ac Mon Sep 17 00:00:00 2001 From: joseeantonior Date: Thu, 5 Jul 2018 17:51:02 -0500 Subject: [PATCH 089/456] Update template.pug --- views/website/libraries/template.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/template.pug b/views/website/libraries/template.pug index 03098959..d107f11f 100644 --- a/views/website/libraries/template.pug +++ b/views/website/libraries/template.pug @@ -6,7 +6,7 @@ article(data-accordion, class=`accordion ${lang.uniqueClass}`) if lib.minimumVersion .version p Minimum Version #{lib.minimumVersion} - a(href='https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/', target='_blank') + a(href='https://auth0.com/blog/critical-vulnerabilities-in-json-web-token-libraries/', target='_blank') img(src='http://github.com/img/ico_question.svg') div(class={ 'panel-body': true, mversion: !!lib.minimumVersion }) .column From 7cf9cae2babd81ac07cbc838d52e3d89682dad1c Mon Sep 17 00:00:00 2001 From: Tom Lindelius Date: Wed, 25 Jul 2018 17:13:11 +0200 Subject: [PATCH 090/456] Lindelius' php-jwt library now has built-in support for aud claims --- views/website/libraries/24-PHP.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/24-PHP.json b/views/website/libraries/24-PHP.json index cb0c069d..3c407b97 100644 --- a/views/website/libraries/24-PHP.json +++ b/views/website/libraries/24-PHP.json @@ -207,7 +207,7 @@ "verify": true, "iss": false, "sub": false, - "aud": false, + "aud": true, "exp": true, "nbf": true, "iat": true, From 306a624a48faad569da703c2e2e28031da726a51 Mon Sep 17 00:00:00 2001 From: Seth Moeckel Date: Thu, 2 Aug 2018 16:15:41 -0400 Subject: [PATCH 091/456] Update 9-Go.json --- views/website/libraries/9-Go.json | 1 - 1 file changed, 1 deletion(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index 54be8fb0..81a307a8 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -308,7 +308,6 @@ }, "authorUrl": "https://gitlab.com/rucuriousyet", "authorName": "Seth Moeckel", - "gitHubRepoPath": "rucuriousyet/jwt", "repoUrl": "https://gitlab.com/rucuriousyet/jwt", "installCommandHtml": "go get gitlab.com/rucuriousyet/jwt" } From 20ffb0eaeedbb8b7b0c2a6e63f3ec87c0faf1dea Mon Sep 17 00:00:00 2001 From: Seth Moeckel Date: Thu, 2 Aug 2018 16:16:24 -0400 Subject: [PATCH 092/456] Update 9-Go.json --- views/website/libraries/9-Go.json | 1 + 1 file changed, 1 insertion(+) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index 81a307a8..4824d931 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -308,6 +308,7 @@ }, "authorUrl": "https://gitlab.com/rucuriousyet", "authorName": "Seth Moeckel", + "gitHubRepoPath": null, "repoUrl": "https://gitlab.com/rucuriousyet/jwt", "installCommandHtml": "go get gitlab.com/rucuriousyet/jwt" } From cba031fd9129186cf4e319029009df04c6840de7 Mon Sep 17 00:00:00 2001 From: Dmitry Lobanov Date: Fri, 10 Aug 2018 16:03:19 +0300 Subject: [PATCH 093/456] Objective-C library information has been updated. --- views/website/libraries/18-Objective-C.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/views/website/libraries/18-Objective-C.json b/views/website/libraries/18-Objective-C.json index 6cd415b8..5b6def1c 100644 --- a/views/website/libraries/18-Objective-C.json +++ b/views/website/libraries/18-Objective-C.json @@ -22,9 +22,9 @@ "rs256": true, "rs384": true, "rs512": true, - "es256": false, - "es384": false, - "es512": false + "es256": true, + "es384": true, + "es512": true }, "authorUrl": null, "authorName": "yourkarma & lolgear", @@ -33,4 +33,4 @@ "installCommandHtml": "pod 'JWT'" } ] -} \ No newline at end of file +} From ac9690e6132eef583084e5bdb71574dbffd02332 Mon Sep 17 00:00:00 2001 From: "Pascal S. de Kloe" Date: Fri, 24 Aug 2018 18:42:55 +0200 Subject: [PATCH 094/456] Propagate ECDSA support for a Go library. --- views/website/libraries/9-Go.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index 4824d931..77ccf1f7 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -274,9 +274,9 @@ "rs256": true, "rs384": true, "rs512": true, - "es256": false, - "es384": false, - "es512": false + "es256": true, + "es384": true, + "es512": true }, "authorUrl": "https://github.com/pascaldekloe", "authorName": "Pascal de Kloe", From 6aed30e1cc436435eb319dfd6b8198ff5bc43da3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Thu, 6 Sep 2018 01:22:50 -0300 Subject: [PATCH 095/456] Some initial work on metrics (WIP). --- package-lock.json | 117 ++++++++++++++++++++++++++++++++++++++- package.json | 3 +- src/website/index.js | 27 ++++++++- src/website/libraries.js | 23 ++++++-- src/website/metrics.js | 13 +++++ src/website/utils.js | 26 ++++++++- webpack.website-dev.js | 7 ++- 7 files changed, 204 insertions(+), 12 deletions(-) create mode 100644 src/website/metrics.js diff --git a/package-lock.json b/package-lock.json index cbed9e88..9b9308db 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "jwt.io", - "version": "2.2.0", + "version": "3.1.2", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -668,6 +668,16 @@ } } }, + "@segment/loosely-validate-event": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@segment/loosely-validate-event/-/loosely-validate-event-2.0.0.tgz", + "integrity": "sha512-ZMCSfztDBqwotkl848ODgVcAmN4OItEWDCkshcKz0/W6gGSQayuuCtWV/MlodFivAZD793d6UgANd6wCXUfrIw==", + "dev": true, + "requires": { + "component-type": "^1.2.1", + "join-component": "^1.1.0" + } + }, "@sinonjs/formatio": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-2.0.0.tgz", @@ -1276,6 +1286,31 @@ "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", "dev": true }, + "analytics-node": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/analytics-node/-/analytics-node-3.3.0.tgz", + "integrity": "sha512-wxrsmibvZVysy5CfkLItYrYMGbNVXDBccWurz+hgLUg98pbijiS2/QQdRc0SjHWVEqByxReEJ2T2MGhgb4jk3A==", + "dev": true, + "requires": { + "@segment/loosely-validate-event": "^2.0.0", + "axios": "^0.17.1", + "axios-retry": "^3.0.2", + "commander": "^2.9.0", + "lodash.isstring": "^4.0.1", + "md5": "^2.2.1", + "ms": "^2.0.0", + "remove-trailing-slash": "^0.1.0", + "uuid": "^3.2.1" + }, + "dependencies": { + "commander": { + "version": "2.17.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", + "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==", + "dev": true + } + } + }, "anchor-markdown-header": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/anchor-markdown-header/-/anchor-markdown-header-0.5.7.tgz", @@ -1865,6 +1900,25 @@ "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==", "dev": true }, + "axios": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", + "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", + "dev": true, + "requires": { + "follow-redirects": "^1.2.5", + "is-buffer": "^1.1.5" + } + }, + "axios-retry": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/axios-retry/-/axios-retry-3.1.1.tgz", + "integrity": "sha512-BeNOxa/CBQQLa9gVuMta1oWIhbL6UETKBfAmFjOXwiBxgcmrDBVVwz/gKZTpzKJlVjmi5DeYC+lP5Ng7ssc1pg==", + "dev": true, + "requires": { + "is-retry-allowed": "^1.1.0" + } + }, "babel-code-frame": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", @@ -2850,6 +2904,12 @@ "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=", "dev": true }, + "charenc": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", + "integrity": "sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc=", + "dev": true + }, "check-error": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", @@ -3254,6 +3314,12 @@ "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", "dev": true }, + "component-type": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/component-type/-/component-type-1.2.1.tgz", + "integrity": "sha1-ikeQFwAjjk/DIml3EjAibyS0Fak=", + "dev": true + }, "compress-commons": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz", @@ -3516,6 +3582,12 @@ "integrity": "sha1-fu7tnt3JXiLBiTguNGJARKiaWm0=", "dev": true }, + "crypt": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", + "integrity": "sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs=", + "dev": true + }, "cryptiles": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz", @@ -5352,6 +5424,26 @@ "readable-stream": "^2.0.4" } }, + "follow-redirects": { + "version": "1.5.7", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.7.tgz", + "integrity": "sha512-NONJVIFiX7Z8k2WxfqBjtwqMifx7X42ORLFrOZ2LTKGj71G3C0kfdyTqGqr8fx5zSX6Foo/D95dgGWbPUiwnew==", + "dev": true, + "requires": { + "debug": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", @@ -7613,6 +7705,12 @@ "integrity": "sha1-LPn7rkbYB0/Ba33gBxyO/rykc6Y=", "dev": true }, + "join-component": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/join-component/-/join-component-1.1.0.tgz", + "integrity": "sha1-uEF7dQZho5K+4sJTfGiyqdSXfNU=", + "dev": true + }, "jquery": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.3.1.tgz", @@ -8253,6 +8351,17 @@ "outlayer": "^2.1.0" } }, + "md5": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/md5/-/md5-2.2.1.tgz", + "integrity": "sha1-U6s41f48iJG6RlMp6iP6wFQBJvk=", + "dev": true, + "requires": { + "charenc": "~0.0.1", + "crypt": "~0.0.1", + "is-buffer": "~1.1.1" + } + }, "md5.js": { "version": "1.3.4", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", @@ -10462,6 +10571,12 @@ "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", "dev": true }, + "remove-trailing-slash": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-slash/-/remove-trailing-slash-0.1.0.tgz", + "integrity": "sha1-FJjl3wmEwn5Jt26/Boh8otARUNI=", + "dev": true + }, "repeat-element": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", diff --git a/package.json b/package.json index 9919f8ae..ecaf575b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jwt.io", - "version": "3.1.2", + "version": "3.2.0", "repository": { "type": "git", "url": "https://github.com/jsonwebtoken/jsonwebtoken.github.io" @@ -14,6 +14,7 @@ "@babel/core": "^7.0.0-beta.36", "@babel/polyfill": "^7.0.0-beta.37", "@babel/preset-env": "^7.0.0-beta.36", + "analytics-node": "^3.3.0", "babel-loader": "^8.0.0-beta.0", "babel-plugin-transform-async-to-generator": "^6.24.1", "bootstrap": "^3.3.7", diff --git a/src/website/index.js b/src/website/index.js index 3516694d..099e0756 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -1,4 +1,5 @@ import '../google-analytics.js'; +import * as metrics from './metrics.js'; import { setupNavbar } from './navbar.js'; import { setupExtensionButton } from './extension.js'; import { setupLibraries } from './libraries.js'; @@ -6,7 +7,7 @@ import { setupTokenEditor, setTokenEditorValue } from '../editor'; import { setupJwtCounter } from './counter.js'; import { setupSmoothScrolling } from './smooth-scrolling.js'; import { setupHighlighting } from './highlighting.js'; -import { isChrome, isFirefox } from './utils.js'; +import { isChrome, isFirefox, isPartiallyInViewport, once } from './utils.js'; import { setupShareJwtButton } from '../share-button.js'; import { publicKeyTextArea, @@ -14,7 +15,8 @@ import { extensionSection, ebookSection, shareJwtButton, - shareJwtTextElement + shareJwtTextElement, + librariesElement } from './dom-elements.js'; import queryString from 'querystring'; @@ -36,9 +38,12 @@ function parseLocationQuery() { const token = locSearch[key] || locHash[key]; if(token) { + metrics.track('token-in-url', { type: key }); + setTokenEditorValue(token); if(locSearch.publicKey || locHash.publicKey) { + metrics.track('pubkey-in-url'); publicKeyTextArea.value = locSearch.publicKey || locHash.publicKey; } @@ -51,13 +56,31 @@ function parseLocationQuery() { function pickEbookOrExtensionBanner() { if((isChrome() || isFirefox()) && (Math.random() >= 0.5)) { + metrics.track('extension-banner-shown'); extensionSection.style.display = 'block'; } else { + metrics.track('ebook-banner-shown'); ebookSection.style.display = 'block'; } } +function setupMetrics() { + metrics.init(PRODUCTION ? 'PROD-KEY' : 'DEV-KEY'); + + // Section visible metrics + window.addEventListener('scroll', e => { + if(isPartiallyInViewport(librariesElement)) { + once('libraries-visible', () => metrics.track('libraries-visible-once')); + } + + if(isPartiallyInViewport(debuggerSection)) { + once('debugger-visible', () => metrics.track('debugger-visible-once')); + } + }); +} + // Initialization +setupMetrics(); setupNavbar(); setupExtensionButton(); setupSmoothScrolling(); diff --git a/src/website/libraries.js b/src/website/libraries.js index e1149581..4bcabc27 100644 --- a/src/website/libraries.js +++ b/src/website/libraries.js @@ -1,9 +1,10 @@ import { safeLocalStorageSetItem } from '../utils.js'; import { httpGet } from '../utils.js'; -import { +import * as metrics from './metrics.js'; +import { starsElements, librariesElement, - librariesSelect + librariesSelect } from './dom-elements.js'; import Isotope from 'isotope-layout'; @@ -49,7 +50,7 @@ function getStarsForGitHubRepos() { const now = Date.now(); try { - const stored = JSON.parse(localStorage.getItem(key)); + const stored = JSON.parse(localStorage.getItem(key)); const diff = now - stored.date; // Cached for a week const maxdiff = 7 * 24 * 60 * 60 * 1000; @@ -71,16 +72,26 @@ function getStarsForGitHubRepos() { insertStarCount(element, count); }).catch(e => { - log.warn('Failed to get GitHub stars count for repository, ' + - 'is the repository URL OK? ', e); + log.warn('Failed to get GitHub stars count for repository, ' + + 'is the repository URL OK? ', e); }); }); } +function setupMetrics() { + // TODO for clicks +} + export function setupLibraries() { getStarsForGitHubRepos(); - + + setupMetrics(); + librariesSelect.addEventListener('change', event => { + metrics.track('libraries-filter-selected', { + selected: event.target.value + }); + librariesGrid.arrange({ filter: event.target.value }); diff --git a/src/website/metrics.js b/src/website/metrics.js new file mode 100644 index 00000000..c4b8fe24 --- /dev/null +++ b/src/website/metrics.js @@ -0,0 +1,13 @@ +import Analytics from 'analytics-node'; + +let analytics; + +export function init(key) { + analytics = new Analytics(key); +} + +export function track(event, data) { + if(analytics) { + analytics.track(event, data); + } +} diff --git a/src/website/utils.js b/src/website/utils.js index cfb243b0..01093c38 100644 --- a/src/website/utils.js +++ b/src/website/utils.js @@ -18,7 +18,20 @@ export function isInViewport(elem) { bounding.bottom <= (window.innerHeight || document.documentElement.clientHeight) && bounding.right <= (window.innerWidth || document.documentElement.clientWidth) ); -}; +} + +// From: https://stackoverflow.com/questions/487073/check-if-element-is-visible-after-scrolling +export function isPartiallyInViewport(el) { + var rect = el.getBoundingClientRect(); + var elemTop = rect.top; + var elemBottom = rect.bottom; + + // Only completely visible elements return true: + //var isVisible = (elemTop >= 0) && (elemBottom <= window.innerHeight); + // Partially visible elements return true: + var isVisible = elemTop < window.innerHeight && elemBottom >= 0; + return isVisible; +} //From: // https://stackoverflow.com/questions/9847580/how-to-detect-safari-chrome-ie-firefox-and-opera-browser @@ -29,3 +42,14 @@ export function isChrome() { export function isFirefox() { return typeof InstallTrigger !== 'undefined'; } + +const alreadyRun = {}; +export function once(unique, fn) { + if(unique in alreadyRun) { + return alreadyRun[unique]; + } + + const result = fn(); + alreadyRun[unique] = result; + return result; +} diff --git a/webpack.website-dev.js b/webpack.website-dev.js index cc203b47..79d83343 100644 --- a/webpack.website-dev.js +++ b/webpack.website-dev.js @@ -11,5 +11,10 @@ module.exports = merge(common, { output: { filename: '[name].js', path: __dirname + '/dist/website/js' - } + }, + plugins: [ + new webpack.DefinePlugin({ + PRODUCTION: false + }) + ] }); From 0e97d37b322165f7e71b40c145eced2e2cde6192 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Tue, 11 Sep 2018 22:12:25 -0300 Subject: [PATCH 096/456] Define the PRODUCTION variable in production. --- webpack.website-prod.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/webpack.website-prod.js b/webpack.website-prod.js index 18f412a0..4dc6d8af 100644 --- a/webpack.website-prod.js +++ b/webpack.website-prod.js @@ -7,6 +7,9 @@ module.exports = merge(devConfig, { mode: 'production', devtool: false, plugins: [ - new UglifyJsPlugin() + new UglifyJsPlugin(), + new webpack.DefinePlugin({ + PRODUCTION: true + }) ] }); From a522149b1ad92c6fab95434318516e22ae7f71c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 12 Sep 2018 00:55:35 -0300 Subject: [PATCH 097/456] Some more work on metrics (WIP). --- src/editor/index.js | 49 ++++++++++++++++++++++++++++++++++-- src/editor/utils.js | 42 +++++++++++++++++++++++++++++++ src/{website => }/metrics.js | 7 +++++- src/share-button.js | 7 ++++-- src/website/index.js | 4 +-- src/website/libraries.js | 22 ++++++++++++++-- 6 files changed, 122 insertions(+), 9 deletions(-) rename src/{website => }/metrics.js (55%) diff --git a/src/editor/index.js b/src/editor/index.js index c360a0b1..b0a07be6 100644 --- a/src/editor/index.js +++ b/src/editor/index.js @@ -9,7 +9,8 @@ import { stringify, fixEditorHeight, getSelectedAlgorithm, - disableUnsupportedAlgorithms + disableUnsupportedAlgorithms, + getSafeTokenInfo } from './utils.js'; import { sign, verify, decode } from './jwt.js'; import EventManager from './event-manager.js'; @@ -19,6 +20,7 @@ import { minSecretLengthCheck, setupSecretLengthTooltip } from './secret-length-tooltip.js'; +import * as metrics from '../metrics.js'; import { algorithmSelect, signatureStatusElement, @@ -46,6 +48,17 @@ import log from 'loglevel'; // passed to the event manager. const eventManager = new EventManager(); +function trackToken(jwt, operation) { + const tokenInfo = getSafeTokenInfo(jwt); + + metric.track('editor-jwt-tracked', { + operation: operation, + tokenInfo: tokenInfo + }); + + return tokenInfo.hash; +} + function isSharedSecretAlgorithm(algorithm) { return algorithm && algorithm.indexOf('HS') === 0; } @@ -169,6 +182,8 @@ function setAlgorithmInHeader(algorithm) { function algorithmChangeHandler() { const algorithm = getSelectedAlgorithm(); + metrics.track('editor-algorithm-selected', { algorithm: algorithm }); + displaySecretOrKeys(algorithm); if(isDefaultToken(getTrimmedValue(tokenEditor))) { @@ -223,13 +238,15 @@ function encodeToken() { sign(header, payload, key, secretBase64Checkbox.checked).then(encoded => { eventManager.withDisabledEvents(() => { tokenEditor.setValue(encoded); + trackToken(encoded, 'encode'); }); }).catch(e => { eventManager.withDisabledEvents(() => { log.warn('Failed to sign/encode token: ', e); markAsInvalid(); tokenEditor.setValue(''); - }) + }); + metrics.track('editor-encoding-error'); }).finally(() => { verifyToken(); }); @@ -244,9 +261,15 @@ function decodeToken() { const jwt = getTrimmedValue(tokenEditor); const decoded = decode(jwt); + const tokenHash = trackToken(jwt, 'decode'); + selectAlgorithm(decoded.header.alg); if(isPublicKeyAlgorithm(decoded.header.alg)) { downloadPublicKeyIfPossible(decoded).then(publicKey => { + metrics.track('editor-jwt-public-key-downloaded', { + tokenHash: tokenHash + }); + eventManager.withDisabledEvents(() => { publicKeyTextArea.value = publicKey; verifyToken(); @@ -259,11 +282,20 @@ function decodeToken() { if(decoded.errors) { markAsInvalidWithElement(editorElement, false); + metrics.track('editor-jwt-invalid', { + reason: `partial decode`, + tokenHash: tokenHash + }); } else { verifyToken(); } } catch(e) { log.warn('Failed to decode token: ', e); + + metrics.track('editor-jwt-invalid', { + reason: `failed to decode token`, + tokenHash: trackToken(jwt) + }); } }); } @@ -272,8 +304,14 @@ function verifyToken() { const jwt = getTrimmedValue(tokenEditor); const decoded = decode(jwt); + const tokenHash = trackToken(jwt, 'verify'); + if(!decoded.header.alg || decoded.header.alg === 'none') { markAsInvalid(); + metrics.track('editor-jwt-invalid', { + reason: `header.alg value is ${decoded.header.alg}`, + tokenHash: tokenHash + }); return; } @@ -285,8 +323,15 @@ function verifyToken() { verify(jwt, publicKeyOrSecret, secretBase64Checkbox.checked).then(valid => { if(valid) { markAsValid(); + metrics.track('editor-jwt-verified', { + tokenHash: tokenHash + }); } else { markAsInvalid(); + metrics.track('editor-jwt-invalid', { + reason: 'invalid signature', + tokenHash: tokenHash + }); } }); } diff --git a/src/editor/utils.js b/src/editor/utils.js index aa202d30..adcbfc5d 100644 --- a/src/editor/utils.js +++ b/src/editor/utils.js @@ -1,4 +1,7 @@ import { isWideScreen } from '../utils.js'; +import * as metrics from '../metrics.js'; +import * as jwt from './jwt.js'; +import forge from 'node-forge'; import { algorithmSelect, algorithmEs512, @@ -6,6 +9,8 @@ import { decodedElement } from '../dom-elements.js'; +const sha256 = forge.md.sha256.create(); + export function getTrimmedValue(instance) { const value = instance.getValue(); if (!value) { @@ -40,5 +45,42 @@ export function disableUnsupportedAlgorithms() { // TODO: test supported algorithms in runtime if(isSafari()) { algorithmEs512.disabled = true; + metrics.track('editor-disabled-es512-safari'); + } +} + +export function getSafeTokenInfo(jwt) { + try { + sha256.start(); + sha256.update(jwt); + + const result = { + hash: sha256.digest().toHex() + }; + + try { + const decoded = jwt.decode(jwt); + + return Object.assign(result, { + decodedWithErrors: decoded.errors, + header: { + alg: decoded.header.alg, + }, + payload: { + // TODO + } + }); + } catch(e) { + return Object.assign(result, { + error: 'error decoding token', + }); + } + } catch(e) { + sha256.start(); + + return { + error: 'error reading token', + hash: sha256.digest().toHex() // Hash for empty string + }; } } diff --git a/src/website/metrics.js b/src/metrics.js similarity index 55% rename from src/website/metrics.js rename to src/metrics.js index c4b8fe24..587f3a94 100644 --- a/src/website/metrics.js +++ b/src/metrics.js @@ -1,4 +1,5 @@ import Analytics from 'analytics-node'; +import log from 'loglevel'; let analytics; @@ -8,6 +9,10 @@ export function init(key) { export function track(event, data) { if(analytics) { - analytics.track(event, data); + try { + analytics.track(event, data); + } catch(e) { + log.error(`Metrics library error: ${e}`); + } } } diff --git a/src/share-button.js b/src/share-button.js index a98dac24..1f65f312 100644 --- a/src/share-button.js +++ b/src/share-button.js @@ -1,5 +1,6 @@ import { copyTokenLink } from './utils.js'; import { getTokenEditorValue } from './editor'; +import * as metrics from './metrics.js'; import strings from './strings.js'; @@ -7,15 +8,17 @@ export function setupShareJwtButton(shareJwtElement, shareJwtTextElement) { shareJwtElement.addEventListener('click', event => { event.preventDefault(); + metrics.track('editor-share-button-clicked'); + const value = getTokenEditorValue(); if(value.token) { // If the selected algorithm does not use public keys, publicKey will be // undefined. const copiedUrl = copyTokenLink(value.token, value.publicKey); - // We cannot read the clipboard in headless Chrome, + // We cannot read the clipboard in headless Chrome, // so we use this to let functional tests see the URL. See: - // https://github.com/GoogleChrome/puppeteer/issues/2147 + // https://github.com/GoogleChrome/puppeteer/issues/2147 if(!window.test) { window.test = {}; } diff --git a/src/website/index.js b/src/website/index.js index 099e0756..9db3a0d8 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -1,5 +1,5 @@ import '../google-analytics.js'; -import * as metrics from './metrics.js'; +import * as metrics from '../metrics.js'; import { setupNavbar } from './navbar.js'; import { setupExtensionButton } from './extension.js'; import { setupLibraries } from './libraries.js'; @@ -74,7 +74,7 @@ function setupMetrics() { } if(isPartiallyInViewport(debuggerSection)) { - once('debugger-visible', () => metrics.track('debugger-visible-once')); + once('editor-visible', () => metrics.track('editor-visible-once')); } }); } diff --git a/src/website/libraries.js b/src/website/libraries.js index 4bcabc27..5a9eb143 100644 --- a/src/website/libraries.js +++ b/src/website/libraries.js @@ -1,6 +1,6 @@ import { safeLocalStorageSetItem } from '../utils.js'; import { httpGet } from '../utils.js'; -import * as metrics from './metrics.js'; +import * as metrics from '../metrics.js'; import { starsElements, librariesElement, @@ -79,7 +79,25 @@ function getStarsForGitHubRepos() { } function setupMetrics() { - // TODO for clicks + const tracked = [{ + selector: '.version p a', + event: 'libraries-jwt-vulns-link-clicked' + }, { + selector: '.maintainer a', + event: 'libraries-maintainer-link-clicked' + }, { + selector: '.repository a', + event: 'libraries-repository-link-clicked' + }]; + + tracked.forEach(t => { + const els = document.querySelectorAll(t.selector); + Array.prototype.forEach.call(els, el => { + el.addEventListener('click', () => { + metrics.track(t.event); + }); + }); + }); } export function setupLibraries() { From cef116e62d413c2f2fb7aa6bdbd322d24fad9771 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 12 Sep 2018 00:57:15 -0300 Subject: [PATCH 098/456] Better error message for metrics. --- src/metrics.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/metrics.js b/src/metrics.js index 587f3a94..cd3852bb 100644 --- a/src/metrics.js +++ b/src/metrics.js @@ -10,9 +10,9 @@ export function init(key) { export function track(event, data) { if(analytics) { try { - analytics.track(event, data); + analytics.track(event, data); } catch(e) { - log.error(`Metrics library error: ${e}`); + log.error(`Metrics library error for event ${event}: ${e}`); } } } From 42e69052654cfc32ebd52bd55f756555ca08995a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 12 Sep 2018 23:04:17 -0300 Subject: [PATCH 099/456] More work on metrics. --- src/editor/jwt-iana-registered-claims.js | 52 +++++++++++++++++ src/editor/utils.js | 73 ++++++++++++++++++++++-- 2 files changed, 120 insertions(+), 5 deletions(-) create mode 100644 src/editor/jwt-iana-registered-claims.js diff --git a/src/editor/jwt-iana-registered-claims.js b/src/editor/jwt-iana-registered-claims.js new file mode 100644 index 00000000..79c542a1 --- /dev/null +++ b/src/editor/jwt-iana-registered-claims.js @@ -0,0 +1,52 @@ +export default [ + 'iss', + 'sub', + 'aud', + 'exp', + 'nbf', + 'iat', + 'jti', + 'name', + 'given_name', + 'family_name', + 'middle_name', + 'nickname', + 'preferred_username', + 'profile', + 'picture', + 'website', + 'email', + 'email_verified', + 'gender', + 'birthdate', + 'zoneinfo', + 'locale', + 'phone_number', + 'phone_number_verified', + 'address', + 'updated_at', + 'azp', + 'nonce', + 'auth_time', + 'at_hash', + 'c_hash', + 'acr', + 'amr', + 'sub_jwk', + 'cnf', + 'sip_from_tag', + 'sip_date', + 'sip_callid', + 'sip_cseq_num', + 'sip_via_branch', + 'orig', + 'dest', + 'mky', + 'events', + 'toe', + 'txn', + 'rph', + 'sid', + 'vot', + 'vtm' +]; diff --git a/src/editor/utils.js b/src/editor/utils.js index adcbfc5d..3474a3c6 100644 --- a/src/editor/utils.js +++ b/src/editor/utils.js @@ -1,6 +1,7 @@ import { isWideScreen } from '../utils.js'; import * as metrics from '../metrics.js'; import * as jwt from './jwt.js'; +import registeredClaims from './jwt-iana-registered-claims.js'; import forge from 'node-forge'; import { algorithmSelect, @@ -49,27 +50,89 @@ export function disableUnsupportedAlgorithms() { } } -export function getSafeTokenInfo(jwt) { +export function isString(value) { + return typeof value === 'string' || value instanceof String; +} + +function getBase64Format(token) { + if(jwt.isValidBase64String(token, true)) { + return 'base64url'; + } else if(jwt.isValidBase64String(token, false)) { + return 'base64'; + } else { + return 'invalid'; + } +} + +function getRegisteredClaims(payload) { + const result = []; + + registeredClaims.forEach(claim => { + if(claim in payload) { + result.push(claim); + } + }); + + return result; +} + +function getScopes(payload) { + if(!isString(payload.scope)) { + return []; + } + + const scopes = payload.scope.split(/\s+/).filter(scope => { + return scope.length > 0 && /\S+/.test(scope); + }); + + return scopes; +} + +function getNumberOfScopes(payload) { + return getScopes(payload).length; +} + +function getOIDCScopes(payload) { + const oidcScopes = ['openid', 'profile', 'email', + 'address', 'phone', 'offline_access']; + const scopes = getScopes(payload); + + return scopes.filter(scope => oidcScopes.indexOf(scope) !== -1); +} + +export function getSafeTokenInfo(token) { try { sha256.start(); - sha256.update(jwt); + sha256.update(token); const result = { hash: sha256.digest().toHex() }; try { - const decoded = jwt.decode(jwt); + const decoded = jwt.decode(token); - return Object.assign(result, { + const result = Object.assign(result, { decodedWithErrors: decoded.errors, + encodedSize: token.length, + base64Format: getBase64Format(token), header: { alg: decoded.header.alg, }, payload: { - // TODO + registeredClaimsPresent: getRegisteredClaims(decoded.payload), + oidcScopesPresent: getOIDCScopes(decoded.payload), + numberOfScopes: getNumberOfScopes(decoded.payload), + numberOfClaims: Object.keys(decoded.payload).length, + issuer: decoded.payload.iss ? decoded.payload.iss : null } }); + + if(decoded.payload.amr) { + result.payload.amr = decoded.payload.amr; + } + + return result; } catch(e) { return Object.assign(result, { error: 'error decoding token', From f2b841adaf052fb4c537211d61b1aaa77be86d24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Juli=C3=A1n=20Salgado=20Napolitano?= Date: Thu, 13 Sep 2018 12:32:26 +0200 Subject: [PATCH 100/456] Update 13-Rust.json https://github.com/Keats/jsonwebtoken#algorithms --- views/website/libraries/13-Rust.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/views/website/libraries/13-Rust.json b/views/website/libraries/13-Rust.json index ae500fe8..6b8a3c5b 100644 --- a/views/website/libraries/13-Rust.json +++ b/views/website/libraries/13-Rust.json @@ -47,9 +47,9 @@ "hs256": true, "hs384": true, "hs512": true, - "rs256": false, - "rs384": false, - "rs512": false, + "rs256": true, + "rs384": true, + "rs512": true, "es256": false, "es384": false, "es512": false @@ -89,4 +89,4 @@ "installCommandHtml": "Cargo.toml: biscuit = \"*\"" } ] -} \ No newline at end of file +} From 357517c9e9d3dba932e30cb3f189172ccce5e35d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Thu, 27 Sep 2018 23:29:47 -0300 Subject: [PATCH 101/456] Metrics appear to be working locally. --- package-lock.json | 117 +-------------------------- package.json | 1 - src/editor/index.js | 16 ++-- src/editor/utils.js | 22 +++-- src/metrics.js | 92 +++++++++++++++++++-- src/website/index.js | 4 +- src/website/libraries.js | 4 +- views/website/libraries/template.pug | 8 +- webpack.website-dev.js | 1 + webpack.website-prod.js | 1 + 10 files changed, 125 insertions(+), 141 deletions(-) diff --git a/package-lock.json b/package-lock.json index 9b9308db..f3d048f9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "jwt.io", - "version": "3.1.2", + "version": "3.2.0", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -668,16 +668,6 @@ } } }, - "@segment/loosely-validate-event": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@segment/loosely-validate-event/-/loosely-validate-event-2.0.0.tgz", - "integrity": "sha512-ZMCSfztDBqwotkl848ODgVcAmN4OItEWDCkshcKz0/W6gGSQayuuCtWV/MlodFivAZD793d6UgANd6wCXUfrIw==", - "dev": true, - "requires": { - "component-type": "^1.2.1", - "join-component": "^1.1.0" - } - }, "@sinonjs/formatio": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-2.0.0.tgz", @@ -1286,31 +1276,6 @@ "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", "dev": true }, - "analytics-node": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/analytics-node/-/analytics-node-3.3.0.tgz", - "integrity": "sha512-wxrsmibvZVysy5CfkLItYrYMGbNVXDBccWurz+hgLUg98pbijiS2/QQdRc0SjHWVEqByxReEJ2T2MGhgb4jk3A==", - "dev": true, - "requires": { - "@segment/loosely-validate-event": "^2.0.0", - "axios": "^0.17.1", - "axios-retry": "^3.0.2", - "commander": "^2.9.0", - "lodash.isstring": "^4.0.1", - "md5": "^2.2.1", - "ms": "^2.0.0", - "remove-trailing-slash": "^0.1.0", - "uuid": "^3.2.1" - }, - "dependencies": { - "commander": { - "version": "2.17.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", - "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==", - "dev": true - } - } - }, "anchor-markdown-header": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/anchor-markdown-header/-/anchor-markdown-header-0.5.7.tgz", @@ -1900,25 +1865,6 @@ "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==", "dev": true }, - "axios": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", - "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", - "dev": true, - "requires": { - "follow-redirects": "^1.2.5", - "is-buffer": "^1.1.5" - } - }, - "axios-retry": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/axios-retry/-/axios-retry-3.1.1.tgz", - "integrity": "sha512-BeNOxa/CBQQLa9gVuMta1oWIhbL6UETKBfAmFjOXwiBxgcmrDBVVwz/gKZTpzKJlVjmi5DeYC+lP5Ng7ssc1pg==", - "dev": true, - "requires": { - "is-retry-allowed": "^1.1.0" - } - }, "babel-code-frame": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", @@ -2904,12 +2850,6 @@ "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=", "dev": true }, - "charenc": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", - "integrity": "sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc=", - "dev": true - }, "check-error": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", @@ -3314,12 +3254,6 @@ "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", "dev": true }, - "component-type": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-type/-/component-type-1.2.1.tgz", - "integrity": "sha1-ikeQFwAjjk/DIml3EjAibyS0Fak=", - "dev": true - }, "compress-commons": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz", @@ -3582,12 +3516,6 @@ "integrity": "sha1-fu7tnt3JXiLBiTguNGJARKiaWm0=", "dev": true }, - "crypt": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", - "integrity": "sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs=", - "dev": true - }, "cryptiles": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz", @@ -5424,26 +5352,6 @@ "readable-stream": "^2.0.4" } }, - "follow-redirects": { - "version": "1.5.7", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.7.tgz", - "integrity": "sha512-NONJVIFiX7Z8k2WxfqBjtwqMifx7X42ORLFrOZ2LTKGj71G3C0kfdyTqGqr8fx5zSX6Foo/D95dgGWbPUiwnew==", - "dev": true, - "requires": { - "debug": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } - } - }, "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", @@ -7705,12 +7613,6 @@ "integrity": "sha1-LPn7rkbYB0/Ba33gBxyO/rykc6Y=", "dev": true }, - "join-component": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/join-component/-/join-component-1.1.0.tgz", - "integrity": "sha1-uEF7dQZho5K+4sJTfGiyqdSXfNU=", - "dev": true - }, "jquery": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.3.1.tgz", @@ -8351,17 +8253,6 @@ "outlayer": "^2.1.0" } }, - "md5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/md5/-/md5-2.2.1.tgz", - "integrity": "sha1-U6s41f48iJG6RlMp6iP6wFQBJvk=", - "dev": true, - "requires": { - "charenc": "~0.0.1", - "crypt": "~0.0.1", - "is-buffer": "~1.1.1" - } - }, "md5.js": { "version": "1.3.4", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", @@ -10571,12 +10462,6 @@ "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", "dev": true }, - "remove-trailing-slash": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-slash/-/remove-trailing-slash-0.1.0.tgz", - "integrity": "sha1-FJjl3wmEwn5Jt26/Boh8otARUNI=", - "dev": true - }, "repeat-element": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", diff --git a/package.json b/package.json index ecaf575b..31724242 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,6 @@ "@babel/core": "^7.0.0-beta.36", "@babel/polyfill": "^7.0.0-beta.37", "@babel/preset-env": "^7.0.0-beta.36", - "analytics-node": "^3.3.0", "babel-loader": "^8.0.0-beta.0", "babel-plugin-transform-async-to-generator": "^6.24.1", "bootstrap": "^3.3.7", diff --git a/src/editor/index.js b/src/editor/index.js index b0a07be6..7dcaf544 100644 --- a/src/editor/index.js +++ b/src/editor/index.js @@ -48,13 +48,13 @@ import log from 'loglevel'; // passed to the event manager. const eventManager = new EventManager(); -function trackToken(jwt, operation) { +function trackToken(jwt, operation, extra) { const tokenInfo = getSafeTokenInfo(jwt); - metric.track('editor-jwt-tracked', { + metrics.track('editor-jwt-tracked', Object.assign({ operation: operation, tokenInfo: tokenInfo - }); + }, extra)); return tokenInfo.hash; } @@ -238,7 +238,9 @@ function encodeToken() { sign(header, payload, key, secretBase64Checkbox.checked).then(encoded => { eventManager.withDisabledEvents(() => { tokenEditor.setValue(encoded); - trackToken(encoded, 'encode'); + trackToken(encoded, 'encode', { + secretBase64Checkbox: secretBase64Checkbox.checked + }); }); }).catch(e => { eventManager.withDisabledEvents(() => { @@ -324,13 +326,15 @@ function verifyToken() { if(valid) { markAsValid(); metrics.track('editor-jwt-verified', { - tokenHash: tokenHash + tokenHash: tokenHash, + secretBase64Checkbox: secretBase64Checkbox.checked }); } else { markAsInvalid(); metrics.track('editor-jwt-invalid', { reason: 'invalid signature', - tokenHash: tokenHash + tokenHash: tokenHash, + secretBase64Checkbox: secretBase64Checkbox.checked }); } }); diff --git a/src/editor/utils.js b/src/editor/utils.js index 3474a3c6..558f378e 100644 --- a/src/editor/utils.js +++ b/src/editor/utils.js @@ -55,11 +55,21 @@ export function isString(value) { } function getBase64Format(token) { - if(jwt.isValidBase64String(token, true)) { - return 'base64url'; - } else if(jwt.isValidBase64String(token, false)) { - return 'base64'; - } else { + try { + function getFormat(str) { + if(jwt.isValidBase64String(str, true)) { + return 'base64url'; + } else if(jwt.isValidBase64String(str, false)) { + return 'base64'; + } else { + return 'invalid'; + } + } + + const formats = token.split('.').map(getFormat); + return formats.every(r => r === formats[0]) ? + formats[0] : 'invalid'; + } catch(e) { return 'invalid'; } } @@ -112,7 +122,7 @@ export function getSafeTokenInfo(token) { try { const decoded = jwt.decode(token); - const result = Object.assign(result, { + Object.assign(result, { decodedWithErrors: decoded.errors, encodedSize: token.length, base64Format: getBase64Format(token), diff --git a/src/metrics.js b/src/metrics.js index cd3852bb..3458aadc 100644 --- a/src/metrics.js +++ b/src/metrics.js @@ -1,16 +1,96 @@ -import Analytics from 'analytics-node'; import log from 'loglevel'; -let analytics; +export function init(apiKey) { + // Create a queue, but don't obliterate an existing one! + var analytics = window.analytics = window.analytics || []; -export function init(key) { - analytics = new Analytics(key); + // If the real analytics.js is already on the page return. + if (analytics.initialize) return; + + // If the snippet was invoked already show an error. + if (analytics.invoked) { + if (window.console && console.error) { + console.error('Segment snippet included twice.'); + } + return; + } + + // Invoked flag, to make sure the snippet + // is never invoked twice. + analytics.invoked = true; + + // A list of the methods in Analytics.js to stub. + analytics.methods = [ + 'trackSubmit', + 'trackClick', + 'trackLink', + 'trackForm', + 'pageview', + 'identify', + 'reset', + 'group', + 'track', + 'ready', + 'alias', + 'debug', + 'page', + 'once', + 'off', + 'on' + ]; + + // Define a factory to create stubs. These are placeholders + // for methods in Analytics.js so that you never have to wait + // for it to load to actually record data. The `method` is + // stored as the first argument, so we can replay the data. + analytics.factory = function(method){ + return function(){ + var args = Array.prototype.slice.call(arguments); + args.unshift(method); + analytics.push(args); + return analytics; + }; + }; + + // For each of our methods, generate a queueing stub. + for (var i = 0; i < analytics.methods.length; i++) { + var key = analytics.methods[i]; + analytics[key] = analytics.factory(key); + } + + // Define a method to load Analytics.js from our CDN, + // and that will be sure to only ever load it once. + analytics.load = function(key, options){ + // Create an async script element based on your key. + var script = document.createElement('script'); + script.type = 'text/javascript'; + script.async = true; + script.src = 'https://cdn.segment.com/analytics.js/v1/' + + key + '/analytics.min.js'; + + // Insert our script next to the first script element. + var first = document.getElementsByTagName('script')[0]; + first.parentNode.insertBefore(script, first); + analytics._loadOptions = options; + }; + + // Add a version to keep track of what's in the wild. + analytics.SNIPPET_VERSION = '4.1.0'; + + // Load Analytics.js with your key, which will automatically + // load the tools you've enabled for your account. Boosh! + analytics.load(apiKey); + + // Make the first page call to load the integrations. If + // you'd like to manually name or tag the page, edit or + // move this call however you'd like. + analytics.page(); } export function track(event, data) { - if(analytics) { + if(window.analytics) { try { - analytics.track(event, data); + window.analytics.track(event, data); } catch(e) { log.error(`Metrics library error for event ${event}: ${e}`); } diff --git a/src/website/index.js b/src/website/index.js index 9db3a0d8..10fdcaaa 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -65,7 +65,9 @@ function pickEbookOrExtensionBanner() { } function setupMetrics() { - metrics.init(PRODUCTION ? 'PROD-KEY' : 'DEV-KEY'); + metrics.init(PRODUCTION ? + '693wciz6BgZdlmW0qDlbgxpyj7gtVxRR' : + 'xBxBArADMejN3aqs9NhISky9PHPXIr80'); // Section visible metrics window.addEventListener('scroll', e => { diff --git a/src/website/libraries.js b/src/website/libraries.js index 5a9eb143..78865482 100644 --- a/src/website/libraries.js +++ b/src/website/libraries.js @@ -94,7 +94,9 @@ function setupMetrics() { const els = document.querySelectorAll(t.selector); Array.prototype.forEach.call(els, el => { el.addEventListener('click', () => { - metrics.track(t.event); + metrics.track(t.event, { + id: el.dataset.metricsLibId + }); }); }); }); diff --git a/views/website/libraries/template.pug b/views/website/libraries/template.pug index d107f11f..512a3b97 100644 --- a/views/website/libraries/template.pug +++ b/views/website/libraries/template.pug @@ -6,8 +6,8 @@ article(data-accordion, class=`accordion ${lang.uniqueClass}`) if lib.minimumVersion .version p Minimum Version #{lib.minimumVersion} - a(href='https://auth0.com/blog/critical-vulnerabilities-in-json-web-token-libraries/', target='_blank') - img(src='http://github.com/img/ico_question.svg') + a(href='https://auth0.com/blog/critical-vulnerabilities-in-json-web-token-libraries/', target='_blank', data-metrics-lib-id=lib.repoUrl) + img(src='http://github.com/img/ico_question.svg') div(class={ 'panel-body': true, mversion: !!lib.minimumVersion }) .column p @@ -76,7 +76,7 @@ article(data-accordion, class=`accordion ${lang.uniqueClass}`) .author-info .maintainer if lib.authorUrl - a(href=lib.authorUrl) + a(href=lib.authorUrl, data-metrics-lib-id=lib.repoUrl) i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') | #{lib.authorName} else @@ -87,7 +87,7 @@ article(data-accordion, class=`accordion ${lang.uniqueClass}`) i.icon-budicon-466 .repository i.icon-1392070209-icon-social-github - a(href=lib.repoUrl) View Repo + a(href=lib.repoUrl, data-metrics-lib-id=lib.repoUrl) View Repo .panel-footer code !{lib.installCommandHtml} diff --git a/webpack.website-dev.js b/webpack.website-dev.js index 79d83343..027b3812 100644 --- a/webpack.website-dev.js +++ b/webpack.website-dev.js @@ -1,3 +1,4 @@ +const webpack = require('webpack'); const merge = require('webpack-merge'); const common = require('./webpack.common.js'); diff --git a/webpack.website-prod.js b/webpack.website-prod.js index 4dc6d8af..56e29043 100644 --- a/webpack.website-prod.js +++ b/webpack.website-prod.js @@ -1,3 +1,4 @@ +const webpack = require('webpack'); const merge = require('webpack-merge'); const UglifyJsPlugin = require('uglifyjs-webpack-plugin'); From 163df07cb909d122358592cdf03801c951b1d562 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Fri, 28 Sep 2018 16:22:32 -0300 Subject: [PATCH 102/456] Fix introduction counter and add metrics to introduction. --- src/website/counter.js | 6 +++--- src/website/dom-elements-common.js | 2 ++ src/website/dom-elements.js | 7 ++----- src/website/highlighting.js | 2 +- src/website/index.js | 5 ++--- src/website/introduction/index.js | 7 +++++++ src/website/metrics-api-key.js | 3 +++ 7 files changed, 20 insertions(+), 12 deletions(-) create mode 100644 src/website/dom-elements-common.js create mode 100644 src/website/metrics-api-key.js diff --git a/src/website/counter.js b/src/website/counter.js index 6ce1502f..7eabe894 100644 --- a/src/website/counter.js +++ b/src/website/counter.js @@ -1,4 +1,4 @@ -import { counterElement } from './dom-elements.js'; +import { counterElement } from './dom-elements-common.js'; import { isInViewport } from './utils.js'; import { httpGet } from '../utils.js'; @@ -25,7 +25,7 @@ const flipCounter = $(counterElement).FlipClock(initialCount, { }); function getLoginCount() { - return baselineCount + + return baselineCount + Math.round((new Date() - baselineDate) / 1000 * loginsPerSecond); } @@ -37,5 +37,5 @@ function updateCounter() { export function setupJwtCounter() { updateCounter(); - setInterval(updateCounter, intervalMs); + setInterval(updateCounter, intervalMs); } diff --git a/src/website/dom-elements-common.js b/src/website/dom-elements-common.js new file mode 100644 index 00000000..9c3abe51 --- /dev/null +++ b/src/website/dom-elements-common.js @@ -0,0 +1,2 @@ +export const codeElements = document.querySelectorAll('.plain-text pre code'); +export const counterElement = document.querySelector('.counter'); diff --git a/src/website/dom-elements.js b/src/website/dom-elements.js index 15092a82..b88923b3 100644 --- a/src/website/dom-elements.js +++ b/src/website/dom-elements.js @@ -1,9 +1,10 @@ export * from '../dom-elements.js'; +export * from './dom-elements-common.js'; export const navbarElement = document.querySelector('nav.navbar'); export const menuTriggerElement = document.querySelector('.menu-trigger'); export const menuLinks = document.querySelectorAll('.navbar .menu a'); -export const menuScrollableLinks = +export const menuScrollableLinks = navbarElement.querySelectorAll('a.scrollto'); export const sectionElements = document.getElementsByTagName('section'); @@ -16,8 +17,6 @@ export const extensionButtonText = extensionButton ? extensionButton.querySelector('.button-text') : undefined; -export const codeElements = document.querySelectorAll('.plain-text pre code'); - export const debuggerSection = document.getElementById('debugger-io'); export const shareJwtButton = document.querySelector('.website-share button'); @@ -26,5 +25,3 @@ export const shareJwtTextElement = shareJwtButton.querySelector('span'); export const starsElements = document.getElementsByClassName('stars'); export const librariesElement = document.querySelector('.libraries-sv'); export const librariesSelect = document.getElementById('libraries-select'); - -export const counterElement = document.querySelector('.counter'); diff --git a/src/website/highlighting.js b/src/website/highlighting.js index 0607cae8..86c93aee 100644 --- a/src/website/highlighting.js +++ b/src/website/highlighting.js @@ -1,4 +1,4 @@ -import { codeElements } from './dom-elements.js'; +import { codeElements } from './dom-elements-common.js'; import hljs from 'highlight.js/lib/highlight.js'; import jsHighlight from 'highlight.js/lib/languages/javascript'; diff --git a/src/website/index.js b/src/website/index.js index 10fdcaaa..b0a6f0ef 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -1,5 +1,6 @@ import '../google-analytics.js'; import * as metrics from '../metrics.js'; +import metricsApiKey from './metrics-api-key.js'; import { setupNavbar } from './navbar.js'; import { setupExtensionButton } from './extension.js'; import { setupLibraries } from './libraries.js'; @@ -65,9 +66,7 @@ function pickEbookOrExtensionBanner() { } function setupMetrics() { - metrics.init(PRODUCTION ? - '693wciz6BgZdlmW0qDlbgxpyj7gtVxRR' : - 'xBxBArADMejN3aqs9NhISky9PHPXIr80'); + metrics.init(metricsApiKey); // Section visible metrics window.addEventListener('scroll', e => { diff --git a/src/website/introduction/index.js b/src/website/introduction/index.js index 8b070141..850b7dc0 100644 --- a/src/website/introduction/index.js +++ b/src/website/introduction/index.js @@ -1,6 +1,13 @@ import { setupHighlighting } from '../highlighting.js'; import { setupJwtCounter } from '../counter.js'; +import * as metrics from '../../metrics.js'; +import metricsApiKey from '../metrics-api-key.js'; + +function setupMetrics() { + metrics.init(metricsApiKey); +} // Initialization +setupMetrics(); setupHighlighting(); setupJwtCounter(); diff --git a/src/website/metrics-api-key.js b/src/website/metrics-api-key.js new file mode 100644 index 00000000..dc718777 --- /dev/null +++ b/src/website/metrics-api-key.js @@ -0,0 +1,3 @@ +export default PRODUCTION ? + '693wciz6BgZdlmW0qDlbgxpyj7gtVxRR' : + 'xBxBArADMejN3aqs9NhISky9PHPXIr80'; From d394a053c6497a23a2b36d4f81b0541528b8db19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Fri, 28 Sep 2018 17:29:12 -0300 Subject: [PATCH 103/456] Fix metrics key selection. --- src/website/metrics-api-key.js | 4 +++- webpack.website-dev.js | 3 --- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/website/metrics-api-key.js b/src/website/metrics-api-key.js index dc718777..5d39d90f 100644 --- a/src/website/metrics-api-key.js +++ b/src/website/metrics-api-key.js @@ -1,3 +1,5 @@ -export default PRODUCTION ? +const key = (typeof PRODUCTION !== 'undefined') && PRODUCTION ? '693wciz6BgZdlmW0qDlbgxpyj7gtVxRR' : 'xBxBArADMejN3aqs9NhISky9PHPXIr80'; + +export default key; diff --git a/webpack.website-dev.js b/webpack.website-dev.js index 027b3812..9ad98951 100644 --- a/webpack.website-dev.js +++ b/webpack.website-dev.js @@ -14,8 +14,5 @@ module.exports = merge(common, { path: __dirname + '/dist/website/js' }, plugins: [ - new webpack.DefinePlugin({ - PRODUCTION: false - }) ] }); From dd63f0eab49c1baf44f514e4863499a34f2806ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Fri, 28 Sep 2018 18:00:21 -0300 Subject: [PATCH 104/456] Increse functional test timeouts (CI failing). --- test/functional/editor.js | 34 ++++++++++++++++++---------------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/test/functional/editor.js b/test/functional/editor.js index 32ed24bd..742f4a63 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -23,6 +23,8 @@ const typingDelay = 0; const tokenProcessingWait = 200; describe('Editor', function() { + this.timeout(50000); + before(utils.launchBrowser); after(utils.closeBrowser); @@ -437,7 +439,7 @@ describe('Editor', function() { for(const alg of algs) { it(alg.toUpperCase(), async function() { - this.timeout(20000); + //this.timeout(20000); await this.page.click('.js-input'); await this.page.keyboard.down('ControlLeft'); @@ -478,7 +480,7 @@ describe('Editor', function() { describe('Encodes RS/ES/PS tokens', function() { describe('RS/PS', async function() { before(async function() { - this.timeout(30000); + //this.timeout(30000); await this.page.select('#algorithm-select', 'RS256'); @@ -505,7 +507,7 @@ describe('Editor', function() { for(const alg of algs) { it(alg.toUpperCase(), async function() { - this.timeout(30000); + //this.timeout(30000); await this.page.evaluate(token => { window.test.tokenEditor.setValue(token); @@ -561,7 +563,7 @@ describe('Editor', function() { describe('ES', async function() { before(async function() { - this.timeout(30000); + //this.timeout(30000); await this.page.select('#algorithm-select', 'ES256'); @@ -587,7 +589,7 @@ describe('Editor', function() { for(const alg of algs) { it(alg.toUpperCase(), async function() { - this.timeout(30000); + //this.timeout(30000); await this.page.evaluate(token => { window.test.tokenEditor.setValue(token); @@ -670,7 +672,7 @@ describe('Editor', function() { }); it('iss URL + .well-known', async function() { - this.timeout(20000); + //this.timeout(20000); const key = await jose.JWK.asKey(defaultTokens.rs256.privateKey, 'pem'); const token = await jose.JWS.createSign({ @@ -711,7 +713,7 @@ describe('Editor', function() { }); it('jku', async function() { - this.timeout(20000); + //this.timeout(20000); const key = await jose.JWK.asKey(defaultTokens.rs256.privateKey, 'pem'); const token = await jose.JWS.createSign({ @@ -752,7 +754,7 @@ describe('Editor', function() { }); it('x5c', async function() { - this.timeout(35000); + //this.timeout(35000); const key = await jose.JWK.asKey(defaultTokens.rs256.privateKey, 'pem'); const token = await jose.JWS.createSign({ @@ -861,7 +863,7 @@ describe('Editor', function() { }); it('Marks token as invalid when there is no public key', async function() { - this.timeout(20000); + //this.timeout(20000); await this.page.select('#algorithm-select', 'RS256'); @@ -910,7 +912,7 @@ describe('Editor', function() { }); it('Marks token as invalid when the public key is wrong', async function() { - this.timeout(20000); + //this.timeout(20000); await this.page.select('#algorithm-select', 'RS256'); @@ -959,7 +961,7 @@ describe('Editor', function() { it('Marks token as valid when the public key is OK and private ' + 'key is wrong', async function() { - this.timeout(30000); + //this.timeout(30000); await this.page.select('#algorithm-select', 'RS256'); @@ -1005,7 +1007,7 @@ describe('Editor', function() { it('Marks token as valid when the public key is OK and private ' + 'key is missing', async function() { - this.timeout(30000); + //this.timeout(30000); await this.page.select('#algorithm-select', 'RS256'); @@ -1066,7 +1068,7 @@ describe('Editor', function() { }); it('Marks token as invalid when "alg" is "none"', async function() { - this.timeout(20000); + //this.timeout(20000); await this.page.click('.js-input'); await this.page.keyboard.down('ControlLeft'); @@ -1172,7 +1174,7 @@ describe('Editor', function() { it('Copies an RSA token to the clipboard (with public-key)', async function() { - this.timeout(30000); + //this.timeout(30000); await this.page.select('#algorithm-select', 'RS256'); @@ -1253,7 +1255,7 @@ describe('Editor', function() { `/?foo=bar&${key}=${token}`, `/#foo=bar&${key}=${token}` ].forEach((searchStr, i) => { - this.timeout(20000); + //this.timeout(20000); it(`Should parse ${key} from window.location.href [${i}]`, async function () { @@ -1272,7 +1274,7 @@ describe('Editor', function() { }); it('Parses shared token', async function() { - this.timeout(20000); + //this.timeout(20000); const page = await this.browser.newPage(); From 6a0315c7b6774ffa6d959a8bc4af125348bc2940 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Mon, 1 Oct 2018 16:30:21 -0300 Subject: [PATCH 105/456] Deployment test --- .deployment-trigger | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.deployment-trigger b/.deployment-trigger index 931443ae..e6111d83 100644 --- a/.deployment-trigger +++ b/.deployment-trigger @@ -1 +1 @@ -This file is used to trigger running of CI in case of timeouts. We should fix this someday. +This file is used to trigger running of CI in case of timeouts. We should fix this someday From 74b3f8454cc8bdf372ad8fc6082127c4807ec670 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Mon, 1 Oct 2018 16:37:19 -0300 Subject: [PATCH 106/456] Set node version. --- package.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/package.json b/package.json index 31724242..2f287bfc 100644 --- a/package.json +++ b/package.json @@ -10,6 +10,10 @@ "express-sslify": "^1.2.0", "querystring": "^0.2.0" }, + "devEngines": { + "node": "^10.11.0", + "npm": "^6.4.1" + }, "devDependencies": { "@babel/core": "^7.0.0-beta.36", "@babel/polyfill": "^7.0.0-beta.37", From e492206136820e567f224325558d618cb585babf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Mon, 1 Oct 2018 16:39:32 -0300 Subject: [PATCH 107/456] Use LTS version of node --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 2f287bfc..009ec6d9 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,7 @@ "querystring": "^0.2.0" }, "devEngines": { - "node": "^10.11.0", + "node": "^8.12.0", "npm": "^6.4.1" }, "devDependencies": { From 312bc909b6033ff08c3dd30d9003dd8e566164e2 Mon Sep 17 00:00:00 2001 From: Daniel DeGroff Date: Wed, 17 Oct 2018 18:58:29 -0600 Subject: [PATCH 108/456] prime-jwt --> fusionauth-jwt Repo moved for prime-jwt and was renamed to fusionauth-jwt --- views/website/libraries/3-Java.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/views/website/libraries/3-Java.json b/views/website/libraries/3-Java.json index 8ec4bc09..f67af9ca 100644 --- a/views/website/libraries/3-Java.json +++ b/views/website/libraries/3-Java.json @@ -138,11 +138,11 @@ "es384": false, "es512": false }, - "authorUrl": "https://github.com/inversoft", - "authorName": "Inversoft", - "gitHubRepoPath": "inversoft/prime-jwt", - "repoUrl": "https://github.com/inversoft/prime-jwt", - "installCommandHtml": "maven: com.inversoft / prime-jwt / 1.3.1" + "authorUrl": "https://github.com/fusionauth", + "authorName": "FusionAuth", + "gitHubRepoPath": "fusionauth/fusionauth-jwt", + "repoUrl": "https://github.com/fusionauth/fusionauth-jwt", + "installCommandHtml": "maven: io.fusionauth / fusionauth-jwt / 2.1.0" }, { "minimumVersion": null, From 991f51078c3e81782770251e254f74f4fcc577ec Mon Sep 17 00:00:00 2001 From: Nick Loadholtes Date: Mon, 22 Oct 2018 16:40:23 -0400 Subject: [PATCH 109/456] Update for clojure I added support for the subject with this PR: https://github.com/funcool/buddy-sign/pull/72 Also, I noticed the version number was pretty far behind the current tag/version for the repo so I have updated that also. --- views/website/libraries/17-Clojure.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/views/website/libraries/17-Clojure.json b/views/website/libraries/17-Clojure.json index c330e309..5acdb6e5 100644 --- a/views/website/libraries/17-Clojure.json +++ b/views/website/libraries/17-Clojure.json @@ -10,7 +10,7 @@ "sign": true, "verify": true, "iss": true, - "sub": false, + "sub": true, "aud": true, "exp": true, "nbf": true, @@ -30,7 +30,7 @@ "authorName": "Andrey Antukh", "gitHubRepoPath": "funcool/buddy", "repoUrl": "https://github.com/funcool/buddy/", - "installCommandHtml": "lein: [funcool/buddy \"0.6.0\"]" + "installCommandHtml": "lein: [funcool/buddy \"2.0.0\"]" } ] -} \ No newline at end of file +} From 699979e1af4a9074afe7e2cd0f5e12d67ad13c24 Mon Sep 17 00:00:00 2001 From: Nick Loadholtes Date: Mon, 22 Oct 2018 16:52:07 -0400 Subject: [PATCH 110/456] Quick typo fix --- views/extension/index.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/extension/index.pug b/views/extension/index.pug index e09012eb..28c92576 100644 --- a/views/extension/index.pug +++ b/views/extension/index.pug @@ -40,7 +40,7 @@ block content | Supported by   img(src="http://github.com/img/ico_logo.svg") a  -  - a.keep-deco(href='https://github.com/jsonwebtoken/jsonwebtoken.github.io/blob/master/LICENSE.txt', target="_blank") Licence + a.keep-deco(href='https://github.com/jsonwebtoken/jsonwebtoken.github.io/blob/master/LICENSE.txt', target="_blank") License .pull-right.save-back.hide a#save-back-link(href="#") Save back to localStorage From 4383c4c3c43cae804bf20553c7a94092823534ca Mon Sep 17 00:00:00 2001 From: Nick Loadholtes Date: Mon, 22 Oct 2018 16:55:00 -0400 Subject: [PATCH 111/456] Update layout.pug Quick Typo fix --- views/website/layout.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/layout.pug b/views/website/layout.pug index d9750d99..6753c072 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -63,7 +63,7 @@ html(lang='en') span Missing something? a(href='https://github.com/jsonwebtoken/jsonwebtoken.github.io/tree/master/views', target="_blank") Send a Pull Request a(style='text-decoration: none') - - a(href='https://github.com/jsonwebtoken/jsonwebtoken.github.io/blob/master/LICENSE.txt', target="_blank") Licence + a(href='https://github.com/jsonwebtoken/jsonwebtoken.github.io/blob/master/LICENSE.txt', target="_blank") License .column.social-counter a.twitter-follow-button(href='https://twitter.com/auth0', data-show-count='true') Follow @auth0 From 7bd1c806c628a9ac694115d10ec8c106f7710116 Mon Sep 17 00:00:00 2001 From: Sambego Date: Sat, 10 Nov 2018 06:51:12 -0800 Subject: [PATCH 112/456] Add disclaimer warning above the debugger --- stylus/website/index.styl | 32 ++++++++++++++++++++------------ views/website/libraries.pug | 12 ++++++------ views/website/token-editor.pug | 4 ++++ 3 files changed, 30 insertions(+), 18 deletions(-) diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 37094a1b..61a451b4 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -660,23 +660,12 @@ body margin-left 10px .warning - background-color #FFFCD2 - font-size 11px - color #4A4A4A - text-align center - padding 10px margin 0 -15px + border-radius 0 line-height 1.8 - color: darken(#FFFCD2, 80%) +breakpoint("tablet") - font-size 14px margin 0 0 30px border-radius 3px - padding 20px 0 - a - color: darken(#FFFCD2, 80%) - font-weight bold - margin-left 5px svg height: 14px; width: 14px; @@ -1163,3 +1152,22 @@ footer .social-counter +breakpoint("tablet") text-align right + +.warning + display block + width 100% + padding 15px + margin 0 0 40px 0 + background #fff7c9 + border-radius 3px + font-size 14px + color #786600 + line-height 2 + + a + border-bottom 1px solid rgba(120,102,0,.4) + color #786600 + text-decoration none + + &:hover + opacity .7 diff --git a/views/website/libraries.pug b/views/website/libraries.pug index 3fc76acf..dda33d78 100644 --- a/views/website/libraries.pug +++ b/views/website/libraries.pug @@ -9,21 +9,21 @@ section#libraries-io.libraries-jwt select#libraries-select option(value='*', selected='') All // Languages must be in alphabetic order - - - const sortedLangs = Array.from(languages); + - + const sortedLangs = Array.from(languages); sortedLangs.sort((a, b) => a.name.localeCompare(b.name)); each lang in sortedLangs option(value=`.${lang.uniqueClass}`) #{lang.name} .warning b Warning: - | Critical vulnerabilities in JSON Web Token libraries with asymmetric keys. + | Critical vulnerabilities in JSON Web Token libraries with asymmetric keys. a(href='https://auth0.com/blog/critical-vulnerabilities-in-json-web-token-libraries/') | Learn more - svg(height='48', viewbox='0 0 48 48', width='48', xmlns='http://www.w3.org/2000/svg') - path(d='M-838-2232H562v3600H-838z', fill='none') - path(d='M16 10v28l22-14z') + svg(height='48', viewbox='0 0 48 48', width='48', xmlns='http://www.w3.org/2000/svg') + path(d='M-838-2232H562v3600H-838z', fill='none') + path(d='M16 10v28l22-14z') .libraries-sv(data-accordion-group) each lang in languages diff --git a/views/website/token-editor.pug b/views/website/token-editor.pug index 7fac2c59..76e5aef0 100644 --- a/views/website/token-editor.pug +++ b/views/website/token-editor.pug @@ -4,6 +4,10 @@ section#debugger-io.debugger-jwt h1 Debugger .jwt-playground + .warning + strong Warning: + | JWTs are credentials, which can grant access to resources. Be careful where you paste them! We do not record tokens, all validation and debugging is done on the client side. + .selections .algorithm span Algorithm From ea0ad57d91d9bece535dd1bbc6d2cfaa3b3d3bb9 Mon Sep 17 00:00:00 2001 From: Nathaniel Fischer Date: Sun, 11 Nov 2018 10:39:18 -0800 Subject: [PATCH 113/456] Added blackdoor jose scala library --- views/website/libraries/15-Scala.json | 30 ++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/15-Scala.json b/views/website/libraries/15-Scala.json index f5e157fe..4724b4b1 100644 --- a/views/website/libraries/15-Scala.json +++ b/views/website/libraries/15-Scala.json @@ -115,6 +115,34 @@ "gitHubRepoPath": "janjaali/spray-jwt", "repoUrl": "https://github.com/janjaali/spray-jwt", "installCommandHtml": "libraryDependencies += \"com.github.janjaali\" %% \"spray-jwt\" % \"1.0.0\"" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": false, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": true, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/blackdoor", + "authorName": "blackdoor software", + "gitHubRepoPath": "blackdoor/jose", + "repoUrl": "https://github.com/blackdoor/jose", + "installCommandHtml": "dependsOn(RootProject(uri(\"git://github.com/blackdoor/jose.git#0.1.0\")))" } ] -} \ No newline at end of file +} From 63dea2b73e1d87c6b8a4a3bf6c6ce96c05f79b23 Mon Sep 17 00:00:00 2001 From: Ian Partridge Date: Fri, 30 Nov 2018 21:32:40 +0000 Subject: [PATCH 114/456] vapor/jwt does not support ECDSA --- views/website/libraries/19-Swift.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/views/website/libraries/19-Swift.json b/views/website/libraries/19-Swift.json index e41a0a47..9bc6ad8d 100644 --- a/views/website/libraries/19-Swift.json +++ b/views/website/libraries/19-Swift.json @@ -50,9 +50,9 @@ "rs256": true, "rs384": true, "rs512": true, - "es256": true, - "es384": true, - "es512": true + "es256": false, + "es384": false, + "es512": false }, "authorUrl": "https://github.com/siemensikkema", "authorName": "Siemen Sikkema", @@ -117,4 +117,4 @@ "installCommandHtml": ".package(url:\"https://github.com/IBM-Swift/Swift-JWT/", from: \"1.0.0\")" } ] -} \ No newline at end of file +} From 1e07f15aba2be027a7eadf6b491505a9757c3b4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20E=2E=20Peyrott?= Date: Wed, 12 Dec 2018 21:42:54 -0300 Subject: [PATCH 115/456] Update Puppeteer to fix bug in tests. --- package-lock.json | 84 ++++++++++++++++++++++++++++++----------------- package.json | 2 +- 2 files changed, 54 insertions(+), 32 deletions(-) diff --git a/package-lock.json b/package-lock.json index f3d048f9..4b0c7aa6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5049,24 +5049,27 @@ } }, "extract-zip": { - "version": "1.6.6", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.6.6.tgz", - "integrity": "sha1-EpDt6NINCHK0Kf0/NRyhKOxe+Fw=", + "version": "1.6.7", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.6.7.tgz", + "integrity": "sha1-qEC0uK9kAyZMjbV/Txp0Mz74H+k=", "dev": true, "requires": { - "concat-stream": "1.6.0", + "concat-stream": "1.6.2", "debug": "2.6.9", - "mkdirp": "0.5.0", + "mkdirp": "0.5.1", "yauzl": "2.4.1" }, "dependencies": { - "mkdirp": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz", - "integrity": "sha1-HXMHam35hs2TROFecfzAWkyavxI=", + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", "dev": true, "requires": { - "minimist": "0.0.8" + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" } } } @@ -9992,21 +9995,48 @@ "dev": true }, "puppeteer": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-1.1.1.tgz", - "integrity": "sha1-rb8l5J9e8DRDwQq44JqVTKDHv+4=", + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-1.11.0.tgz", + "integrity": "sha512-iG4iMOHixc2EpzqRV+pv7o3GgmU2dNYEMkvKwSaQO/vMZURakwSOn/EYJ6OIRFYOque1qorzIBvrytPIQB3YzQ==", "dev": true, "requires": { - "debug": "^2.6.8", - "extract-zip": "^1.6.5", - "https-proxy-agent": "^2.1.0", - "mime": "^1.3.4", - "progress": "^2.0.0", + "debug": "^4.1.0", + "extract-zip": "^1.6.6", + "https-proxy-agent": "^2.2.1", + "mime": "^2.0.3", + "progress": "^2.0.1", "proxy-from-env": "^1.0.0", "rimraf": "^2.6.1", - "ws": "^3.0.0" + "ws": "^6.1.0" }, "dependencies": { + "debug": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.0.tgz", + "integrity": "sha512-heNPJUJIqC+xB6ayLAMHaIrmN9HKa7aQO8MGqKpvCA+uJYVcvR6l5kgdrhRuwPFHU7P5/A1w0BjByPHwpfTDKg==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "mime": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.0.tgz", + "integrity": "sha512-ikBcWwyqXQSHKtciCcctu9YfPbFYZ4+gbHEmE0Q8jzcTYQg5dHCr3g2wwAZjPoJfQVXZq6KXAjpXOTf5/cjT7w==", + "dev": true + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true + }, "rimraf": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", @@ -12424,12 +12454,6 @@ } } }, - "ultron": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", - "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==", - "dev": true - }, "undefsafe": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.2.tgz", @@ -13605,14 +13629,12 @@ } }, "ws": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", - "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-6.1.2.tgz", + "integrity": "sha512-rfUqzvz0WxmSXtJpPMX2EeASXabOrSMk1ruMOV3JBTBjo4ac2lDjGGsbQSyxj8Odhw5fBib8ZKEjDNvgouNKYw==", "dev": true, "requires": { - "async-limiter": "~1.0.0", - "safe-buffer": "~5.1.0", - "ultron": "~1.1.0" + "async-limiter": "~1.0.0" } }, "xdg-basedir": { diff --git a/package.json b/package.json index 009ec6d9..a1b0c289 100644 --- a/package.json +++ b/package.json @@ -53,7 +53,7 @@ "node-jose": "^1.0.0", "promise.any": "^0.1.1", "pug": "^2.0.0-rc.4", - "puppeteer": "^1.0.0", + "puppeteer": "^1.11.0", "request-promise-native": "^1.0.5", "sinon": "^4.2.2", "sinon-chai": "^2.14.0", From def94f905a9751890430cacaf4fc7be36141c787 Mon Sep 17 00:00:00 2001 From: Sam Bellen Date: Wed, 19 Dec 2018 16:48:01 +0000 Subject: [PATCH 116/456] Change wrong/confusing wording in the introduction --- views/website/md/introduction.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/md/introduction.md b/views/website/md/introduction.md index dda87a91..c1fd799f 100755 --- a/views/website/md/introduction.md +++ b/views/website/md/introduction.md @@ -27,7 +27,7 @@ Let's break down the different parts. ### Header -The header *typically* consists of two parts: the type of the token, which is JWT, and the hashing algorithm being used, such as HMAC SHA256 or RSA. +The header *typically* consists of two parts: the type of the token, which is JWT, and the signing algorithm being used, such as HMAC SHA256 or RSA. For example: From 1b893d38d58128ee95ec6673fc562f45a567f841 Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 20 Dec 2018 13:36:34 +0200 Subject: [PATCH 117/456] Increase test timeout for token processing --- test/functional/editor.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/functional/editor.js b/test/functional/editor.js index 742f4a63..2f9dcede 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -20,10 +20,10 @@ chai.use(chaiArrays); const expect = chai.expect; const typingDelay = 0; -const tokenProcessingWait = 200; +const tokenProcessingWait = 300; describe('Editor', function() { - this.timeout(50000); + this.timeout(75000); before(utils.launchBrowser); From cdeb51ba003041934f248255735d02349d55f3dd Mon Sep 17 00:00:00 2001 From: Milad Rahimi Date: Fri, 4 Jan 2019 22:14:03 +0330 Subject: [PATCH 118/456] Add miladrahimi/php-jwt to the library list --- views/website/libraries/24-PHP.json | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/views/website/libraries/24-PHP.json b/views/website/libraries/24-PHP.json index cda695ea..bdaf91f1 100644 --- a/views/website/libraries/24-PHP.json +++ b/views/website/libraries/24-PHP.json @@ -283,6 +283,34 @@ "gitHubRepoPath": "adhocore/jwt", "repoUrl": "https://github.com/adhocore/jwt", "installCommandHtml": "composer require adhocore/jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/miladrahimi", + "authorName": "Milad Rahimi", + "gitHubRepoPath": "miladrahimi/php-jwt", + "repoUrl": "https://github.com/miladrahimi/php-jwt", + "installCommandHtml": "composer require miladrahimi/php-jwt" } ] } From 01e4a723c80430f719ca5a0cd3be91214dcc7655 Mon Sep 17 00:00:00 2001 From: Daniel DeGroff Date: Fri, 11 Jan 2019 22:52:25 -0700 Subject: [PATCH 119/456] update fusionauth-jwt to 3.0.0 Update fusionauth-jwt to 3.0.0 and update supported features. --- views/website/libraries/3-Java.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/views/website/libraries/3-Java.json b/views/website/libraries/3-Java.json index f67af9ca..97261b50 100644 --- a/views/website/libraries/3-Java.json +++ b/views/website/libraries/3-Java.json @@ -127,22 +127,22 @@ "exp": true, "nbf": true, "iat": true, - "jti": false, + "jti": true, "hs256": true, "hs384": true, "hs512": true, "rs256": true, "rs384": true, "rs512": true, - "es256": false, - "es384": false, - "es512": false + "es256": true, + "es384": true, + "es512": true }, "authorUrl": "https://github.com/fusionauth", "authorName": "FusionAuth", "gitHubRepoPath": "fusionauth/fusionauth-jwt", "repoUrl": "https://github.com/fusionauth/fusionauth-jwt", - "installCommandHtml": "maven: io.fusionauth / fusionauth-jwt / 2.1.0" + "installCommandHtml": "maven: io.fusionauth / fusionauth-jwt / 3.0.0" }, { "minimumVersion": null, From 016caf7f12f8b92a66e301394559f247be494fa5 Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 14 Jan 2019 14:38:13 +0100 Subject: [PATCH 120/456] Show support for the RSA-PSS signing algorithm --- stylus/website/index.styl | 26 +++++++++++++++++++++++--- views/website/libraries/0-.NET.json | 21 ++++++++++++++------- views/website/libraries/template.pug | 9 +++++++++ 3 files changed, 46 insertions(+), 10 deletions(-) diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 61a451b4..f3942003 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -579,7 +579,7 @@ body textarea width 100% max-width 266px - resize none + resize none input[type="checkbox"] margin-right 5px position relative @@ -612,7 +612,7 @@ body .debugger-footer font-size 30px .website-validation - padding-left 0 + padding-left 0 .website-share padding-right 0 button @@ -621,7 +621,7 @@ body color white; font-weight 400; border-color #00b9f1; - + // libraries-jwt @@ -1171,3 +1171,23 @@ footer &:hover opacity .7 + +.icon-unknown { + display: inline-block; + width: 19px; + height: 19px; + margin-top: -2px; + border: 1px solid #000; + border-radius: 50%; + text-align: center; + line-height: 13px; + font-style: normal; +} +.icon-unknown::after { + content: '?'; + font-size: 14px; + line-height: 1; + padding: 0; + margin: 0; + display: inline; +} diff --git a/views/website/libraries/0-.NET.json b/views/website/libraries/0-.NET.json index 2427e487..a7e13f43 100644 --- a/views/website/libraries/0-.NET.json +++ b/views/website/libraries/0-.NET.json @@ -24,13 +24,18 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": false }, "authorUrl": "https://www.microsoft.com/", "authorName": "Microsoft", - "gitHubRepoPath": "AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet", - "repoUrl": "https://github.com/MSOpenTech/azure-activedirectory-identitymodel-extensions-for-dotnet", - "installCommandHtml": "Install-Package
System.IdentityModel.Tokens.Jwt" + "gitHubRepoPath": + "AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet", + "repoUrl": + "https://github.com/MSOpenTech/azure-activedirectory-identitymodel-extensions-for-dotnet", + "installCommandHtml": + "Install-Package
System.IdentityModel.Tokens.Jwt" }, { "minimumVersion": null, @@ -58,7 +63,8 @@ "authorName": "DV", "gitHubRepoPath": "dvsekhvalnov/jose-jwt", "repoUrl": "https://github.com/dvsekhvalnov/jose-jwt", - "installCommandHtml": "Install-Package
jose-jwt" + "installCommandHtml": + "Install-Package
jose-jwt" }, { "minimumVersion": null, @@ -86,7 +92,8 @@ "authorName": "DV", "gitHubRepoPath": "dvsekhvalnov/jose-rt", "repoUrl": "https://github.com/dvsekhvalnov/jose-rt", - "installCommandHtml": "Install-Package
jose-rt" + "installCommandHtml": + "Install-Package
jose-rt" } ] -} \ No newline at end of file +} diff --git a/views/website/libraries/template.pug b/views/website/libraries/template.pug index 512a3b97..9c4fe215 100644 --- a/views/website/libraries/template.pug +++ b/views/website/libraries/template.pug @@ -72,6 +72,15 @@ article(data-accordion, class=`accordion ${lang.uniqueClass}`) p i(class=lib.support.es512 ? 'icon-budicon-500' : 'icon-budicon-501') | ES512 + p + i(class=lib.support.ps256 ? 'icon-budicon-500' : (lib.support.ps256 !== undefined ? 'icon-budicon-501' : 'icon-unknown')) + | PS256 + p + i(class=lib.support.ps384 ? 'icon-budicon-500' : (lib.support.ps384 !== undefined ? 'icon-budicon-501' : 'icon-unknown')) + | PS384 + p + i(class=lib.support.ps512 ? 'icon-budicon-500' : (lib.support.ps512 !== undefined ? 'icon-budicon-501' : 'icon-unknown')) + | PS512 .author-info .maintainer From 1798b95e0eb1578c8a0faae0e70cf2320299e5e1 Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 14 Jan 2019 14:39:57 +0100 Subject: [PATCH 121/456] Revert test data --- views/website/libraries/0-.NET.json | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/views/website/libraries/0-.NET.json b/views/website/libraries/0-.NET.json index a7e13f43..d07e0a7c 100644 --- a/views/website/libraries/0-.NET.json +++ b/views/website/libraries/0-.NET.json @@ -24,9 +24,7 @@ "rs512": true, "es256": true, "es384": true, - "es512": true, - "ps256": true, - "ps384": false + "es512": true }, "authorUrl": "https://www.microsoft.com/", "authorName": "Microsoft", From cd9010c6948010bda73156f7caababd55de5427e Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 14 Jan 2019 14:46:24 +0100 Subject: [PATCH 122/456] Update readme to include the RSA-PPS alg --- README.md | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index c7471c70..86b5919f 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,7 @@ [![Build Status](https://travis-ci.org/jsonwebtoken/jsonwebtoken.github.io.png?branch=master)](https://travis-ci.org/jsonwebtoken/jsonwebtoken.github.io) ### How to add a library + To add a library, simply edit the right JSON file located at `views/website/libraries`. Each language gets its own file. Multiple libraries share the same language file. To add a new language, simply add a JSON file in the same folder as the others. It will get automatically recognized. If you add a new language, you will need to provide a proper icon for it and place it in the `img` folder. @@ -19,15 +20,15 @@ Here's a commented example of the .NET language file (`0-.NET.json`). All fields // Unique identifier that will be used as a CSS class // for this language (only valid CSS class names). "uniqueClass": "net", - + // The language icon, SVG format preferred, should be placed // in /img directory. "image": "/img/1.svg", - + // The color of header that displays the name of the language // and the icon. This is a valid CSS color definition. "bgColor": "rgb(42, 168, 229)", - + // An array of libraries for this language. "libs": [ { @@ -35,7 +36,7 @@ Here's a commented example of the .NET language file (`0-.NET.json`). All fields // minimum version in which the vuln was fixed must be // listed here. Optional (can be null). "minimumVersion": "1.0.1", // or null - + // Supported features, true for supported, // false for not supported. "support": { @@ -56,23 +57,26 @@ Here's a commented example of the .NET language file (`0-.NET.json`). All fields "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, - + // Author URL, can be GitHub profile, personal page // company page, etc. Can be null. "authorUrl": "https://www.microsoft.com/", // or null - + // Author name. "authorName": "Microsoft", - + // For the star count, this is the GitHub repository path, // (usually user/repo). Can be null (no star count shown). "gitHubRepoPath": "AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet", // or null - + // URL for source code. "repoUrl": "https://github.com/MSOpenTech/azure-activedirectory-identitymodel-extensions-for-dotnet", - + // Install command, can be HTML or plain text. "installCommandHtml": "Install-Package
System.IdentityModel.Tokens.Jwt" } From 079a090c78412526dceff343f39c0272bee11c39 Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 14 Jan 2019 16:55:57 +0100 Subject: [PATCH 123/456] Update RSA-PSS library support --- views/website/libraries/0-.NET.json | 10 +++- views/website/libraries/1-Python.json | 12 +++-- views/website/libraries/10-Groovy.json | 10 ++-- views/website/libraries/11-Haskell.json | 12 +++-- views/website/libraries/12-Haxe.json | 7 ++- views/website/libraries/13-Rust.json | 15 ++++-- views/website/libraries/14-Lua.json | 10 ++-- views/website/libraries/15-Scala.json | 37 ++++++++++---- views/website/libraries/16-D.json | 12 +++-- views/website/libraries/17-Clojure.json | 5 +- views/website/libraries/18-Objective-C.json | 5 +- views/website/libraries/19-Swift.json | 32 +++++++++---- views/website/libraries/2-Node.js.json | 5 +- views/website/libraries/20-C.json | 12 +++-- views/website/libraries/21-C++.json | 17 +++++-- views/website/libraries/22-kdb+_Q.json | 7 ++- views/website/libraries/23-Delphi.json | 15 ++++-- views/website/libraries/24-PHP.json | 45 +++++++++++++---- views/website/libraries/25-Crystal.json | 10 ++-- views/website/libraries/26-1C.json | 7 ++- views/website/libraries/27-PostgreSQL.json | 7 ++- views/website/libraries/3-Java.json | 25 ++++++++-- views/website/libraries/4-JavaScript.json | 10 +++- views/website/libraries/5-Perl.json | 7 ++- views/website/libraries/6-Ruby.json | 17 +++++-- views/website/libraries/7-Elixir.json | 13 +++-- views/website/libraries/8-Erlang.json | 5 +- views/website/libraries/9-Go.json | 53 ++++++++++++++++----- 28 files changed, 322 insertions(+), 100 deletions(-) diff --git a/views/website/libraries/0-.NET.json b/views/website/libraries/0-.NET.json index d07e0a7c..6135c3bd 100644 --- a/views/website/libraries/0-.NET.json +++ b/views/website/libraries/0-.NET.json @@ -24,7 +24,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://www.microsoft.com/", "authorName": "Microsoft", @@ -55,7 +58,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/dvsekhvalnov/jose-jwt", "authorName": "DV", diff --git a/views/website/libraries/1-Python.json b/views/website/libraries/1-Python.json index ddb6003c..da1a1c2d 100644 --- a/views/website/libraries/1-Python.json +++ b/views/website/libraries/1-Python.json @@ -24,7 +24,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/jpadilla", "authorName": "José Padilla", @@ -52,7 +55,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/mpdavis", "authorName": "Michael Davis", @@ -117,4 +123,4 @@ "installCommandHtml": "pip install authlib" } ] -} \ No newline at end of file +} diff --git a/views/website/libraries/10-Groovy.json b/views/website/libraries/10-Groovy.json index 9d72d88c..97bb548b 100644 --- a/views/website/libraries/10-Groovy.json +++ b/views/website/libraries/10-Groovy.json @@ -24,13 +24,17 @@ "rs512": false, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/kaleidos", "authorName": "Kaleidos", "gitHubRepoPath": "kaleidos/grails-security-stateless", "repoUrl": "https://github.com/kaleidos/grails-security-stateless", - "installCommandHtml": "compile \"org.grails.plugins:security-stateless:0.0.9\"" + "installCommandHtml": + "compile \"org.grails.plugins:security-stateless:0.0.9\"" } ] -} \ No newline at end of file +} diff --git a/views/website/libraries/11-Haskell.json b/views/website/libraries/11-Haskell.json index bf1aa1c1..673889ba 100644 --- a/views/website/libraries/11-Haskell.json +++ b/views/website/libraries/11-Haskell.json @@ -24,7 +24,10 @@ "rs512": false, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://bitbucket.org/ssaasen", "authorName": "Stefan Saasen", @@ -52,7 +55,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/frasertweedale", "authorName": "Fraser Tweedale", @@ -61,4 +67,4 @@ "installCommandHtml": "cabal install jose" } ] -} \ No newline at end of file +} diff --git a/views/website/libraries/12-Haxe.json b/views/website/libraries/12-Haxe.json index 11816a1e..33011cb2 100644 --- a/views/website/libraries/12-Haxe.json +++ b/views/website/libraries/12-Haxe.json @@ -24,7 +24,10 @@ "rs512": false, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/kevinresol", "authorName": "Kevin Leung", @@ -33,4 +36,4 @@ "installCommandHtml": "haxelib install jsonwebtoken" } ] -} \ No newline at end of file +} diff --git a/views/website/libraries/13-Rust.json b/views/website/libraries/13-Rust.json index 6b8a3c5b..463ee618 100644 --- a/views/website/libraries/13-Rust.json +++ b/views/website/libraries/13-Rust.json @@ -24,7 +24,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/GildedHonour", "authorName": "GildedHonour", @@ -52,7 +55,10 @@ "rs512": true, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/Keats", "authorName": "Keats", @@ -80,7 +86,10 @@ "rs512": true, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/lawliet89", "authorName": "Yong Wen Chua", diff --git a/views/website/libraries/14-Lua.json b/views/website/libraries/14-Lua.json index bd8bd3e8..79d0c3b0 100644 --- a/views/website/libraries/14-Lua.json +++ b/views/website/libraries/14-Lua.json @@ -24,13 +24,17 @@ "rs512": false, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/SkyLothar", "authorName": "SkyLothar", "gitHubRepoPath": "SkyLothar/lua-resty-jwt", "repoUrl": "https://github.com/SkyLothar/lua-resty-jwt", - "installCommandHtml": "git clone https://github.com/SkyLothar/lua-resty-jwt.git" + "installCommandHtml": + "git clone https://github.com/SkyLothar/lua-resty-jwt.git" } ] -} \ No newline at end of file +} diff --git a/views/website/libraries/15-Scala.json b/views/website/libraries/15-Scala.json index 4724b4b1..92234e44 100644 --- a/views/website/libraries/15-Scala.json +++ b/views/website/libraries/15-Scala.json @@ -24,13 +24,17 @@ "rs512": false, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/jasongoodwin", "authorName": "jasongoodwin", "gitHubRepoPath": "jasongoodwin/authentikat-jwt", "repoUrl": "https://github.com/jasongoodwin/authentikat-jwt", - "installCommandHtml": "sbt: \"com.jason-goodwin\" %% \"authentikat-jwt\" % \"0.4.5\"" + "installCommandHtml": + "sbt: \"com.jason-goodwin\" %% \"authentikat-jwt\" % \"0.4.5\"" }, { "minimumVersion": null, @@ -52,7 +56,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/pauldijou", "authorName": "pauldijou", @@ -80,13 +87,17 @@ "rs512": false, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/iain-logan", "authorName": "iain-logan", "gitHubRepoPath": "iain-logan/jwt", "repoUrl": "https://github.com/iain-logan/jwt", - "installCommandHtml": "libraryDependencies += \"io.igl\" %% \"jwt\" % \"1.2.2\"" + "installCommandHtml": + "libraryDependencies += \"io.igl\" %% \"jwt\" % \"1.2.2\"" }, { "minimumVersion": null, @@ -108,13 +119,17 @@ "rs512": true, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/janjaali", "authorName": "janjaali", "gitHubRepoPath": "janjaali/spray-jwt", "repoUrl": "https://github.com/janjaali/spray-jwt", - "installCommandHtml": "libraryDependencies += \"com.github.janjaali\" %% \"spray-jwt\" % \"1.0.0\"" + "installCommandHtml": + "libraryDependencies += \"com.github.janjaali\" %% \"spray-jwt\" % \"1.0.0\"" }, { "minimumVersion": null, @@ -136,13 +151,17 @@ "rs512": false, "es256": true, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/blackdoor", "authorName": "blackdoor software", "gitHubRepoPath": "blackdoor/jose", "repoUrl": "https://github.com/blackdoor/jose", - "installCommandHtml": "dependsOn(RootProject(uri(\"git://github.com/blackdoor/jose.git#0.1.0\")))" + "installCommandHtml": + "dependsOn(RootProject(uri(\"git://github.com/blackdoor/jose.git#0.1.0\")))" } ] } diff --git a/views/website/libraries/16-D.json b/views/website/libraries/16-D.json index e94f208d..bf8534f8 100644 --- a/views/website/libraries/16-D.json +++ b/views/website/libraries/16-D.json @@ -24,7 +24,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/olehlong", "authorName": "olehlong", @@ -52,7 +55,10 @@ "rs512": false, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/zolamk", "authorName": "zolamk", @@ -61,4 +67,4 @@ "installCommandHtml": "dub fetch jwt" } ] -} \ No newline at end of file +} diff --git a/views/website/libraries/17-Clojure.json b/views/website/libraries/17-Clojure.json index 5acdb6e5..cf7314fd 100644 --- a/views/website/libraries/17-Clojure.json +++ b/views/website/libraries/17-Clojure.json @@ -24,7 +24,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/niwinz", "authorName": "Andrey Antukh", diff --git a/views/website/libraries/18-Objective-C.json b/views/website/libraries/18-Objective-C.json index 5b6def1c..d60a9717 100644 --- a/views/website/libraries/18-Objective-C.json +++ b/views/website/libraries/18-Objective-C.json @@ -24,7 +24,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": null, "authorName": "yourkarma & lolgear", diff --git a/views/website/libraries/19-Swift.json b/views/website/libraries/19-Swift.json index 9bc6ad8d..eaee3b08 100644 --- a/views/website/libraries/19-Swift.json +++ b/views/website/libraries/19-Swift.json @@ -24,7 +24,10 @@ "rs512": false, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/kylef", "authorName": "Kyle Fuller", @@ -52,13 +55,17 @@ "rs512": true, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/siemensikkema", "authorName": "Siemen Sikkema", "gitHubRepoPath": "vapor/jwt", "repoUrl": "https://github.com/vapor/jwt", - "installCommandHtml": ".Package(url:\"https://github.com/vapor/jwt.git/", majorVersion: 1)" + "installCommandHtml": + ".Package(url:\"https://github.com/vapor/jwt.git/", majorVersion: 1)" }, { "minimumVersion": null, @@ -80,7 +87,10 @@ "rs512": true, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/Wstunes", "authorName": "Wstunes", @@ -100,21 +110,25 @@ "nbf": true, "iat": true, "jti": true, - "hs256": false, - "hs384": false, - "hs512": false, + "hs256": true, + "hs384": true, + "hs512": true, "rs256": true, "rs384": true, "rs512": true, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/IBM-Swift", "authorName": "IBM Swift", "gitHubRepoPath": "IBM-Swift/Swift-JWT", "repoUrl": "https://github.com/IBM-Swift/Swift-JWT", - "installCommandHtml": ".package(url:\"https://github.com/IBM-Swift/Swift-JWT/", from: \"1.0.0\")" + "installCommandHtml": + ".package(url:\"https://github.com/IBM-Swift/Swift-JWT/", from: \"1.0.0\")" } ] } diff --git a/views/website/libraries/2-Node.js.json b/views/website/libraries/2-Node.js.json index b15b546e..a4ad3651 100644 --- a/views/website/libraries/2-Node.js.json +++ b/views/website/libraries/2-Node.js.json @@ -24,7 +24,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/auth0", "authorName": "Auth0", diff --git a/views/website/libraries/20-C.json b/views/website/libraries/20-C.json index f71c0d3a..0f0acb72 100644 --- a/views/website/libraries/20-C.json +++ b/views/website/libraries/20-C.json @@ -24,7 +24,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/benmcollins", "authorName": "benmcollins", @@ -52,7 +55,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/cisco/cjose", "authorName": "linuxwolf", @@ -61,4 +67,4 @@ "installCommandHtml": "go get github.com/cisco/cjose" } ] -} \ No newline at end of file +} diff --git a/views/website/libraries/21-C++.json b/views/website/libraries/21-C++.json index e59adc28..8550a81c 100644 --- a/views/website/libraries/21-C++.json +++ b/views/website/libraries/21-C++.json @@ -24,7 +24,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/troian", "authorName": "Artur Troian", @@ -52,7 +55,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/Thalhammer", "authorName": "Dominik Thalhammer", @@ -80,7 +86,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/arun11299", "authorName": "Arun Muralidharan", @@ -89,4 +98,4 @@ "installCommandHtml": "git clone https://github.com/arun11299/cpp-jwt" } ] -} \ No newline at end of file +} diff --git a/views/website/libraries/22-kdb+_Q.json b/views/website/libraries/22-kdb+_Q.json index 880ecf52..8f923d98 100644 --- a/views/website/libraries/22-kdb+_Q.json +++ b/views/website/libraries/22-kdb+_Q.json @@ -24,7 +24,10 @@ "rs512": false, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/tjcelaya", "authorName": "tjcelaya", @@ -33,4 +36,4 @@ "installCommandHtml": "git clone https://github.com/tjcelaya/jwt.q" } ] -} \ No newline at end of file +} diff --git a/views/website/libraries/23-Delphi.json b/views/website/libraries/23-Delphi.json index c185e2e9..fa8e50f3 100644 --- a/views/website/libraries/23-Delphi.json +++ b/views/website/libraries/23-Delphi.json @@ -24,13 +24,17 @@ "rs512": true, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/paolo-rossi", "authorName": "Paolo Rossi", "gitHubRepoPath": "paolo-rossi/delphi-jose-jwt", "repoUrl": "https://github.com/paolo-rossi/delphi-jose-jwt", - "installCommandHtml": "git clone https://github.com/paolo-rossi/delphi-jose-jwt" + "installCommandHtml": + "git clone https://github.com/paolo-rossi/delphi-jose-jwt" }, { "minimumVersion": null, @@ -52,7 +56,10 @@ "rs512": false, "es256": true, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/synopse", "authorName": "Synopse", @@ -61,4 +68,4 @@ "installCommandHtml": "git clone https://github.com/synopse/mORMot" } ] -} \ No newline at end of file +} diff --git a/views/website/libraries/24-PHP.json b/views/website/libraries/24-PHP.json index cda695ea..b6366fdc 100644 --- a/views/website/libraries/24-PHP.json +++ b/views/website/libraries/24-PHP.json @@ -24,7 +24,10 @@ "rs512": true, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/firebase", "authorName": "Firebase", @@ -52,7 +55,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/lcobucci", "authorName": "Luís Cobucci", @@ -80,7 +86,10 @@ "rs512": true, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/emarref", "authorName": "Emarref", @@ -108,7 +117,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/Spomky-Labs/jose", "authorName": "Spomky", @@ -136,7 +148,10 @@ "rs512": true, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/nov", "authorName": "Nov Matake", @@ -164,7 +179,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/Spomky", "authorName": "Spomky", @@ -220,7 +238,10 @@ "rs512": true, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/lindelius", "authorName": "Tom Lindelius", @@ -248,7 +269,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/cdoco", "authorName": "ZiHang Gao", @@ -276,7 +300,10 @@ "rs512": true, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/adhocore", "authorName": "Jitendra Adhikari", diff --git a/views/website/libraries/25-Crystal.json b/views/website/libraries/25-Crystal.json index c8551f38..d7c86430 100644 --- a/views/website/libraries/25-Crystal.json +++ b/views/website/libraries/25-Crystal.json @@ -24,13 +24,17 @@ "rs512": false, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/greyblake", "authorName": "Sergey Potapov", "gitHubRepoPath": "crystal-community/jwt", "repoUrl": "https://github.com/crystal-community/jwt", - "installCommandHtml": "git clone https://github.com/crystal-community/jwt.git" + "installCommandHtml": + "git clone https://github.com/crystal-community/jwt.git" } ] -} \ No newline at end of file +} diff --git a/views/website/libraries/26-1C.json b/views/website/libraries/26-1C.json index a84938c2..e3181222 100644 --- a/views/website/libraries/26-1C.json +++ b/views/website/libraries/26-1C.json @@ -24,7 +24,10 @@ "rs512": false, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/pintov", "authorName": "Vasily Pintov", @@ -33,4 +36,4 @@ "installCommandHtml": "git clone https://github.com/pintov/1c-jwt" } ] -} \ No newline at end of file +} diff --git a/views/website/libraries/27-PostgreSQL.json b/views/website/libraries/27-PostgreSQL.json index 487589d5..7f7d8c7f 100644 --- a/views/website/libraries/27-PostgreSQL.json +++ b/views/website/libraries/27-PostgreSQL.json @@ -24,7 +24,10 @@ "rs512": false, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/michelp", "authorName": "Michel Pelletier", @@ -33,4 +36,4 @@ "installCommandHtml": "CREATE EXTENSION pgjwt;" } ] -} \ No newline at end of file +} diff --git a/views/website/libraries/3-Java.json b/views/website/libraries/3-Java.json index f67af9ca..33de6a88 100644 --- a/views/website/libraries/3-Java.json +++ b/views/website/libraries/3-Java.json @@ -24,7 +24,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/auth0", "authorName": "Auth0", @@ -52,7 +55,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://twitter.com/__b_c", "authorName": "Brian Campbell", @@ -80,7 +86,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/connect2id", "authorName": "connect2id", @@ -108,7 +117,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://twitter.com/lhazlewood", "authorName": "Les Hazlewood", @@ -136,7 +148,10 @@ "rs512": true, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/fusionauth", "authorName": "FusionAuth", diff --git a/views/website/libraries/4-JavaScript.json b/views/website/libraries/4-JavaScript.json index 0e21ca06..de69a760 100644 --- a/views/website/libraries/4-JavaScript.json +++ b/views/website/libraries/4-JavaScript.json @@ -52,7 +52,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/square", "authorName": "Square, Inc.", @@ -80,7 +83,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/cisco", "authorName": "Cisco Systems", diff --git a/views/website/libraries/5-Perl.json b/views/website/libraries/5-Perl.json index 1902baa6..13e28668 100644 --- a/views/website/libraries/5-Perl.json +++ b/views/website/libraries/5-Perl.json @@ -24,7 +24,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/DCIT", "authorName": "Karel Miko", @@ -33,4 +36,4 @@ "installCommandHtml": "cpanm Crypt::JWT" } ] -} \ No newline at end of file +} diff --git a/views/website/libraries/6-Ruby.json b/views/website/libraries/6-Ruby.json index 6b1fe8f2..090fe54a 100644 --- a/views/website/libraries/6-Ruby.json +++ b/views/website/libraries/6-Ruby.json @@ -24,7 +24,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": null, "authorName": "Lindsay & Rudat", @@ -52,7 +55,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": null, "authorName": "Fleshman", @@ -80,7 +86,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/nov", "authorName": "Nov Matake", @@ -117,4 +126,4 @@ "installCommandHtml": "gem install jose" } ] -} \ No newline at end of file +} diff --git a/views/website/libraries/7-Elixir.json b/views/website/libraries/7-Elixir.json index 43a75a26..1a7017bd 100644 --- a/views/website/libraries/7-Elixir.json +++ b/views/website/libraries/7-Elixir.json @@ -24,13 +24,17 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": null, "authorName": "Fleshman", "gitHubRepoPath": "garyf/json_web_token_ex", "repoUrl": "https://github.com/garyf/json_web_token_ex", - "installCommandHtml": "defp deps, do: [{:json_web_token, \"~> 0.2.5\"}]" + "installCommandHtml": + "defp deps, do: [{:json_web_token, \"~> 0.2.5\"}]" }, { "minimumVersion": null, @@ -52,7 +56,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": null, "authorName": "bryanjos", diff --git a/views/website/libraries/8-Erlang.json b/views/website/libraries/8-Erlang.json index aaac7b38..38ca8676 100644 --- a/views/website/libraries/8-Erlang.json +++ b/views/website/libraries/8-Erlang.json @@ -24,7 +24,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/glejeune", "authorName": "Gregoire Lejeune", diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index 77ccf1f7..6719dcd6 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -24,7 +24,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/dgrijalva", "authorName": "dgrijalva", @@ -52,7 +55,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/dvsekhvalnov/jose2go", "authorName": "DV", @@ -80,13 +86,17 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/SermoDigital/jose", "authorName": "SermoDigital", "gitHubRepoPath": "SermoDigital/jose", "repoUrl": "https://github.com/SermoDigital/jose", - "installCommandHtml": "go get github.com/SermoDigital/jose" + "installCommandHtml": + "go get github.com/SermoDigital/jose" }, { "minimumVersion": null, @@ -108,7 +118,10 @@ "rs512": false, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/robbert229", "authorName": "robbert229", @@ -136,7 +149,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/square", "authorName": "DV", @@ -164,7 +180,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/lestrrat", "authorName": "lestrrat", @@ -220,7 +239,10 @@ "rs512": false, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/nickvellios", "authorName": "nickvellios", @@ -248,7 +270,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/gbrlsnchs", "authorName": "gbrlsnchs", @@ -276,7 +301,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/pascaldekloe", "authorName": "Pascal de Kloe", @@ -304,7 +332,10 @@ "rs512": false, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://gitlab.com/rucuriousyet", "authorName": "Seth Moeckel", From 336a9503da3f3d57dad6d62ec5ed47d30a7b08f0 Mon Sep 17 00:00:00 2001 From: "Pascal S. de Kloe" Date: Tue, 15 Jan 2019 20:47:02 +0100 Subject: [PATCH 124/456] Propagate PPS support for a Go library. --- views/website/libraries/9-Go.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index 6719dcd6..b9f9aee6 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -302,9 +302,9 @@ "es256": true, "es384": true, "es512": true, - "ps256": false, - "ps384": false, - "ps512": false + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/pascaldekloe", "authorName": "Pascal de Kloe", From d1c289adf14313227fddf61fda674c66a42437c9 Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 21 Jan 2019 13:26:12 +0100 Subject: [PATCH 125/456] Swap segement lib for auth0-metrics --- src/editor/event-manager.js | 27 ++-- src/editor/index.js | 249 +++++++++++++++++++----------------- src/metrics.js | 90 +++++++------ src/website/index.js | 68 +++++----- views/website/layout.pug | 5 +- 5 files changed, 234 insertions(+), 205 deletions(-) diff --git a/src/editor/event-manager.js b/src/editor/event-manager.js index 290bf1c4..3cbf7613 100644 --- a/src/editor/event-manager.js +++ b/src/editor/event-manager.js @@ -12,10 +12,10 @@ function enableAll(events) { function tryAsResult(func) { const result = {}; - + try { result.result = func(); - } catch(e) { + } catch (e) { result.exception = e; } @@ -36,22 +36,27 @@ export default class EventManager { event: event, handler: handler }); - + target[enable](event, handler); } addDomEvent(target, event, handler) { - this.addEvent(target, 'addEventListener', - 'removeEventListener', event,handler); + this.addEvent( + target, + "addEventListener", + "removeEventListener", + event, + handler + ); } addCodeMirrorEvent(target, event, handler) { - this.addEvent(target, 'on', 'off', event, handler); + this.addEvent(target, "on", "off", event, handler); } - + withDisabledEvents(func) { // Nested calls are supported - if(this.callDepth === 0) { + if (this.callDepth === 0) { disableAll(this.events); } @@ -59,13 +64,13 @@ export default class EventManager { const result = tryAsResult(func); --this.callDepth; - if(this.callDepth === 0) { + if (this.callDepth === 0) { enableAll(this.events); } - if(result.exception) { + if (result.exception) { throw result.exception; - } + } return result.result; } diff --git a/src/editor/index.js b/src/editor/index.js index 7dcaf544..4af2209d 100644 --- a/src/editor/index.js +++ b/src/editor/index.js @@ -1,9 +1,7 @@ -import { - deferToNextLoop -} from '../utils.js'; -import { downloadPublicKeyIfPossible } from './public-key-download.js'; -import { setupClaimsTooltip } from './claims-tooltip.js'; -import { tokenEditor, headerEditor, payloadEditor } from './instances.js'; +import { deferToNextLoop } from "../utils.js"; +import { downloadPublicKeyIfPossible } from "./public-key-download.js"; +import { setupClaimsTooltip } from "./claims-tooltip.js"; +import { tokenEditor, headerEditor, payloadEditor } from "./instances.js"; import { getTrimmedValue, stringify, @@ -11,16 +9,16 @@ import { getSelectedAlgorithm, disableUnsupportedAlgorithms, getSafeTokenInfo -} from './utils.js'; -import { sign, verify, decode } from './jwt.js'; -import EventManager from './event-manager.js'; -import strings from '../strings.js'; -import defaultTokens from './default-tokens.js'; +} from "./utils.js"; +import { sign, verify, decode } from "./jwt.js"; +import EventManager from "./event-manager.js"; +import strings from "../strings.js"; +import defaultTokens from "./default-tokens.js"; import { minSecretLengthCheck, setupSecretLengthTooltip -} from './secret-length-tooltip.js'; -import * as metrics from '../metrics.js'; +} from "./secret-length-tooltip.js"; +import * as metrics from "../metrics.js"; import { algorithmSelect, signatureStatusElement, @@ -39,9 +37,9 @@ import { decodedTabLink, encodedTabElement, decodedTabElement -} from '../dom-elements.js'; +} from "../dom-elements.js"; -import log from 'loglevel'; +import log from "loglevel"; // The event manager lets us enable/disable events as needed without // manually tracking them. Events that need to be disabled should be @@ -51,59 +49,67 @@ const eventManager = new EventManager(); function trackToken(jwt, operation, extra) { const tokenInfo = getSafeTokenInfo(jwt); - metrics.track('editor-jwt-tracked', Object.assign({ - operation: operation, - tokenInfo: tokenInfo - }, extra)); + metrics.track( + "editor-jwt-tracked", + Object.assign( + { + operation: operation, + tokenInfo: tokenInfo + }, + extra + ) + ); return tokenInfo.hash; } function isSharedSecretAlgorithm(algorithm) { - return algorithm && algorithm.indexOf('HS') === 0; + return algorithm && algorithm.indexOf("HS") === 0; } function isPublicKeyAlgorithm(algorithm) { - return algorithm && algorithm.indexOf('HS') === -1; + return algorithm && algorithm.indexOf("HS") === -1; } function markAsInvalid() { - signatureStatusElement.classList.remove('valid-token'); - signatureStatusElement.classList.add('invalid-token'); - signatureStatusElement.innerHTML = - ` ${strings.editor.signatureInvalid}`; + signatureStatusElement.classList.remove("valid-token"); + signatureStatusElement.classList.add("invalid-token"); + signatureStatusElement.innerHTML = ` ${ + strings.editor.signatureInvalid + }`; } function markAsValid() { - const elementsWithError = document.getElementsByClassName('error'); + const elementsWithError = document.getElementsByClassName("error"); Array.prototype.forEach.call(elementsWithError, element => { - element.classList.remove('error'); + element.classList.remove("error"); }); - signatureStatusElement.classList.remove('invalid-token'); - signatureStatusElement.classList.add('valid-token'); - signatureStatusElement.innerHTML = - ` ${strings.editor.signatureVerified}`; + signatureStatusElement.classList.remove("invalid-token"); + signatureStatusElement.classList.add("valid-token"); + signatureStatusElement.innerHTML = ` ${ + strings.editor.signatureVerified + }`; } function displaySecretOrKeys(algorithm) { const algoType = algorithm.substr(0, 2); const algoSize = algorithm.substr(2, 3); - if(algoType === 'HS') { + if (algoType === "HS") { hmacShaTextSpan.firstChild.textContent = `HMACSHA${algoSize}`; - secretEditorContainer.style.display = ''; - keyEditorContainer.style.display = 'none'; + secretEditorContainer.style.display = ""; + keyEditorContainer.style.display = "none"; } else { const texts = { - RS: 'RSASHA', - PS: 'RSAPSSSHA', - ES: 'ECDSASHA' + RS: "RSASHA", + PS: "RSAPSSSHA", + ES: "ECDSASHA" }; rsaShaTextSpan.firstChild.textContent = `${texts[algoType]}${algoSize}`; - secretEditorContainer.style.display = 'none'; - keyEditorContainer.style.display = ''; + secretEditorContainer.style.display = "none"; + keyEditorContainer.style.display = ""; } deferToNextLoop(fixEditorHeight); @@ -111,10 +117,11 @@ function displaySecretOrKeys(algorithm) { function selectAlgorithm(algorithm) { eventManager.withDisabledEvents(() => { - const selected = - algorithmSelect.querySelector(`option[value="${algorithm}"]`); + const selected = algorithmSelect.querySelector( + `option[value="${algorithm}"]` + ); - if(!selected) { + if (!selected) { log.info(`Invalid algorithm ${algorithm}, ignoring...`); return; } @@ -126,8 +133,8 @@ function selectAlgorithm(algorithm) { } function isDefaultToken(token) { - for(const algorithm of Object.keys(defaultTokens)) { - if(defaultTokens[algorithm].token === token) { + for (const algorithm of Object.keys(defaultTokens)) { + if (defaultTokens[algorithm].token === token) { return true; } } @@ -144,7 +151,7 @@ export function useDefaultToken(algorithm) { headerEditor.setValue(stringify(decoded.header)); payloadEditor.setValue(stringify(decoded.payload)); - if(isSharedSecretAlgorithm(algorithm)) { + if (isSharedSecretAlgorithm(algorithm)) { secretInput.value = defaults.secret; } else { publicKeyTextArea.value = defaults.publicKey; @@ -161,18 +168,18 @@ function setAlgorithmInHeader(algorithm) { const header = JSON.parse(headerEditor.getValue()); header.alg = algorithm; headerEditor.setValue(stringify(header)); - } catch(e) { + } catch (e) { // SyntaxError is expected while things are being edited, ignore those // errors. - if(!(e instanceof SyntaxError)) { + if (!(e instanceof SyntaxError)) { // If it's not a SyntaxError, log the error. - log.warn('Failed to encode token: ', e); + log.warn("Failed to encode token: ", e); } } try { encodeToken(); - } catch(e) { + } catch (e) { // Ignore error, this may fail in unexpected ways if the data // is being edited. } @@ -182,11 +189,11 @@ function setAlgorithmInHeader(algorithm) { function algorithmChangeHandler() { const algorithm = getSelectedAlgorithm(); - metrics.track('editor-algorithm-selected', { algorithm: algorithm }); + metrics.track("editor-algorithm-selected", { algorithm: algorithm }); displaySecretOrKeys(algorithm); - if(isDefaultToken(getTrimmedValue(tokenEditor))) { + if (isDefaultToken(getTrimmedValue(tokenEditor))) { useDefaultToken(algorithm); } else { setAlgorithmInHeader(algorithm); @@ -194,12 +201,12 @@ function algorithmChangeHandler() { } function markAsInvalidWithElement(element, clearTokenEditor = true) { - element.classList.add('error'); + element.classList.add("error"); markAsInvalid(); - if(clearTokenEditor) { + if (clearTokenEditor) { eventManager.withDisabledEvents(() => { - tokenEditor.setValue(''); + tokenEditor.setValue(""); }); } } @@ -211,12 +218,12 @@ function encodeToken() { let header; try { header = JSON.parse(headerEditor.getValue()); - } catch(e) { + } catch (e) { markAsInvalidWithElement(headerElement, true); return; } - if(!header.alg) { + if (!header.alg) { setAlgorithmInHeader(getSelectedAlgorithm()); return; } else { @@ -226,32 +233,35 @@ function encodeToken() { let payload; try { payload = JSON.parse(payloadEditor.getValue()); - } catch(e) { + } catch (e) { markAsInvalidWithElement(payloadElement, true); return; } - const key = isSharedSecretAlgorithm(header.alg) ? - secretInput.value : - privateKeyTextArea.value; + const key = isSharedSecretAlgorithm(header.alg) + ? secretInput.value + : privateKeyTextArea.value; - sign(header, payload, key, secretBase64Checkbox.checked).then(encoded => { - eventManager.withDisabledEvents(() => { - tokenEditor.setValue(encoded); - trackToken(encoded, 'encode', { - secretBase64Checkbox: secretBase64Checkbox.checked + sign(header, payload, key, secretBase64Checkbox.checked) + .then(encoded => { + eventManager.withDisabledEvents(() => { + tokenEditor.setValue(encoded); + trackToken(encoded, "encode", { + secretBase64Checkbox: secretBase64Checkbox.checked + }); }); + }) + .catch(e => { + eventManager.withDisabledEvents(() => { + log.warn("Failed to sign/encode token: ", e); + markAsInvalid(); + tokenEditor.setValue(""); + }); + metrics.track("editor-encoding-error"); + }) + .finally(() => { + verifyToken(); }); - }).catch(e => { - eventManager.withDisabledEvents(() => { - log.warn('Failed to sign/encode token: ', e); - markAsInvalid(); - tokenEditor.setValue(''); - }); - metrics.track('editor-encoding-error'); - }).finally(() => { - verifyToken(); - }); }); } @@ -263,12 +273,12 @@ function decodeToken() { const jwt = getTrimmedValue(tokenEditor); const decoded = decode(jwt); - const tokenHash = trackToken(jwt, 'decode'); + const tokenHash = trackToken(jwt, "decode"); selectAlgorithm(decoded.header.alg); - if(isPublicKeyAlgorithm(decoded.header.alg)) { + if (isPublicKeyAlgorithm(decoded.header.alg)) { downloadPublicKeyIfPossible(decoded).then(publicKey => { - metrics.track('editor-jwt-public-key-downloaded', { + metrics.track("editor-jwt-public-key-downloaded", { tokenHash: tokenHash }); @@ -282,19 +292,19 @@ function decodeToken() { headerEditor.setValue(stringify(decoded.header)); payloadEditor.setValue(stringify(decoded.payload)); - if(decoded.errors) { + if (decoded.errors) { markAsInvalidWithElement(editorElement, false); - metrics.track('editor-jwt-invalid', { + metrics.track("editor-jwt-invalid", { reason: `partial decode`, tokenHash: tokenHash }); } else { verifyToken(); } - } catch(e) { - log.warn('Failed to decode token: ', e); + } catch (e) { + log.warn("Failed to decode token: ", e); - metrics.track('editor-jwt-invalid', { + metrics.track("editor-jwt-invalid", { reason: `failed to decode token`, tokenHash: trackToken(jwt) }); @@ -306,33 +316,32 @@ function verifyToken() { const jwt = getTrimmedValue(tokenEditor); const decoded = decode(jwt); - const tokenHash = trackToken(jwt, 'verify'); + const tokenHash = trackToken(jwt, "verify"); - if(!decoded.header.alg || decoded.header.alg === 'none') { + if (!decoded.header.alg || decoded.header.alg === "none") { markAsInvalid(); - metrics.track('editor-jwt-invalid', { + metrics.track("editor-jwt-invalid", { reason: `header.alg value is ${decoded.header.alg}`, tokenHash: tokenHash }); return; } - const publicKeyOrSecret = - isSharedSecretAlgorithm(decoded.header.alg) ? - secretInput.value : - publicKeyTextArea.value; + const publicKeyOrSecret = isSharedSecretAlgorithm(decoded.header.alg) + ? secretInput.value + : publicKeyTextArea.value; verify(jwt, publicKeyOrSecret, secretBase64Checkbox.checked).then(valid => { - if(valid) { + if (valid) { markAsValid(); - metrics.track('editor-jwt-verified', { + metrics.track("editor-jwt-verified", { tokenHash: tokenHash, secretBase64Checkbox: secretBase64Checkbox.checked }); } else { markAsInvalid(); - metrics.track('editor-jwt-invalid', { - reason: 'invalid signature', + metrics.track("editor-jwt-invalid", { + reason: "invalid signature", tokenHash: tokenHash, secretBase64Checkbox: secretBase64Checkbox.checked }); @@ -345,29 +354,29 @@ function verifyToken() { // Once a considerable amount of time has passed since this was put in place, // it may be safe to remove it. Enabled at: 2018-06-12. function removeSavedTokens() { - localStorage.removeItem('lastToken'); - localStorage.removeItem('lastPublicKey'); + localStorage.removeItem("lastToken"); + localStorage.removeItem("lastPublicKey"); } function setupTabEvents() { // These are relevant for portrait or mobile screens. - encodedTabLink.addEventListener('click', event => { + encodedTabLink.addEventListener("click", event => { event.preventDefault(); - decodedTabLink.parentNode.classList.remove('current'); - encodedTabLink.parentNode.classList.add('current'); - decodedTabElement.classList.remove('current'); - encodedTabElement.classList.add('current'); + decodedTabLink.parentNode.classList.remove("current"); + encodedTabLink.parentNode.classList.add("current"); + decodedTabElement.classList.remove("current"); + encodedTabElement.classList.add("current"); }); - decodedTabLink.addEventListener('click', event => { + decodedTabLink.addEventListener("click", event => { event.preventDefault(); - encodedTabLink.parentNode.classList.remove('current'); - decodedTabLink.parentNode.classList.add('current'); - encodedTabElement.classList.remove('current'); - decodedTabElement.classList.add('current'); + encodedTabLink.parentNode.classList.remove("current"); + decodedTabLink.parentNode.classList.add("current"); + encodedTabElement.classList.remove("current"); + decodedTabElement.classList.add("current"); }); } @@ -376,25 +385,25 @@ function setupEvents() { // manually tracking them. Events that need to be disabled should be // passed to the event manager. - eventManager.addDomEvent(algorithmSelect, 'change', algorithmChangeHandler); + eventManager.addDomEvent(algorithmSelect, "change", algorithmChangeHandler); // When an encoded token is inserted, it must be decoded. - eventManager.addCodeMirrorEvent(tokenEditor, 'change', decodeToken); + eventManager.addCodeMirrorEvent(tokenEditor, "change", decodeToken); // When parts of the decoded token are changed, it must be reencoded. - eventManager.addCodeMirrorEvent(headerEditor, 'change', encodeToken); - eventManager.addCodeMirrorEvent(payloadEditor, 'change', encodeToken); + eventManager.addCodeMirrorEvent(headerEditor, "change", encodeToken); + eventManager.addCodeMirrorEvent(payloadEditor, "change", encodeToken); // HMAC secret, show tooltip if secret is too short. - eventManager.addDomEvent(secretInput, 'input', minSecretLengthCheck); + eventManager.addDomEvent(secretInput, "input", minSecretLengthCheck); // HMAC secret, when changed the encoded token must be updated. - eventManager.addDomEvent(secretInput, 'input', encodeToken); + eventManager.addDomEvent(secretInput, "input", encodeToken); // Base64 checkbox, when changes the encoded token must be updated. - eventManager.addDomEvent(secretBase64Checkbox, 'change', encodeToken); + eventManager.addDomEvent(secretBase64Checkbox, "change", encodeToken); // Private key, when changed the encoded token must be updated. - eventManager.addDomEvent(privateKeyTextArea, 'input', encodeToken); + eventManager.addDomEvent(privateKeyTextArea, "input", encodeToken); // Public key, when changed the encoded token must NOT be updated // (only verified). - eventManager.addDomEvent(publicKeyTextArea, 'input', verifyToken); + eventManager.addDomEvent(publicKeyTextArea, "input", verifyToken); // The following events are never disabled, so it is not necessary to go // through the event manager for them. @@ -408,17 +417,17 @@ export function setTokenEditorValue(value) { export function getTokenEditorValue() { return { token: getTrimmedValue(tokenEditor), - publicKey: isPublicKeyAlgorithm(getSelectedAlgorithm()) ? - publicKeyTextArea.value : - undefined + publicKey: isPublicKeyAlgorithm(getSelectedAlgorithm()) + ? publicKeyTextArea.value + : undefined }; } export function setupTokenEditor() { disableUnsupportedAlgorithms(); setupEvents(); - selectAlgorithm('HS256'); - useDefaultToken('HS256'); + selectAlgorithm("HS256"); + useDefaultToken("HS256"); fixEditorHeight(); setupSecretLengthTooltip(); setupClaimsTooltip(); diff --git a/src/metrics.js b/src/metrics.js index 3458aadc..f1bf82bb 100644 --- a/src/metrics.js +++ b/src/metrics.js @@ -1,8 +1,8 @@ -import log from 'loglevel'; +import log from "loglevel"; export function init(apiKey) { // Create a queue, but don't obliterate an existing one! - var analytics = window.analytics = window.analytics || []; + var analytics = (window.metrics = window.metrics || []); // If the real analytics.js is already on the page return. if (analytics.initialize) return; @@ -10,7 +10,7 @@ export function init(apiKey) { // If the snippet was invoked already show an error. if (analytics.invoked) { if (window.console && console.error) { - console.error('Segment snippet included twice.'); + console.error("Segment snippet included twice."); } return; } @@ -19,32 +19,32 @@ export function init(apiKey) { // is never invoked twice. analytics.invoked = true; - // A list of the methods in Analytics.js to stub. + // A list of the methods in Auth0-metrics to stub. analytics.methods = [ - 'trackSubmit', - 'trackClick', - 'trackLink', - 'trackForm', - 'pageview', - 'identify', - 'reset', - 'group', - 'track', - 'ready', - 'alias', - 'debug', - 'page', - 'once', - 'off', - 'on' + "trackSubmit", + "trackClick", + "trackLink", + "trackForm", + "pageview", + "identify", + "reset", + "group", + "track", + "ready", + "alias", + "debug", + "page", + "once", + "off", + "on" ]; // Define a factory to create stubs. These are placeholders - // for methods in Analytics.js so that you never have to wait + // for methods in Auth0-metrics so that you never have to wait // for it to load to actually record data. The `method` is // stored as the first argument, so we can replay the data. - analytics.factory = function(method){ - return function(){ + analytics.factory = function(method) { + return function() { var args = Array.prototype.slice.call(arguments); args.unshift(method); analytics.push(args); @@ -58,28 +58,43 @@ export function init(apiKey) { analytics[key] = analytics.factory(key); } - // Define a method to load Analytics.js from our CDN, + // Define a method to load Auth0-metrics from our CDN, // and that will be sure to only ever load it once. - analytics.load = function(key, options){ + analytics.load = function(key, options) { // Create an async script element based on your key. - var script = document.createElement('script'); - script.type = 'text/javascript'; + var script = document.createElement("script"); + script.type = "text/javascript"; script.async = true; - script.src = 'https://cdn.segment.com/analytics.js/v1/' - + key + '/analytics.min.js'; + script.src = "https://cdn.auth0.com/website/js/1.6.0/auth0-metrics-min.js"; + + script.onerror = function() { + console.error("No metrics"); + }; + + script.onload = function() { + // Grab analytics and make it private + window.metrics = new Auth0Metrics( + key, + "https://dwh-tracking.it.auth0.com/external", + "jwt.io" + ); + }; // Insert our script next to the first script element. - var first = document.getElementsByTagName('script')[0]; + var first = document.getElementsByTagName("script")[0]; first.parentNode.insertBefore(script, first); - analytics._loadOptions = options; }; // Add a version to keep track of what's in the wild. - analytics.SNIPPET_VERSION = '4.1.0'; + analytics.SNIPPET_VERSION = "4.1.0"; - // Load Analytics.js with your key, which will automatically + // Load Auth0-metrics with your key, which will automatically // load the tools you've enabled for your account. Boosh! - analytics.load(apiKey); + analytics.load( + apiKey, + "https://dwh-tracking.it.auth0.com/external", + "jwt.io" + ); // Make the first page call to load the integrations. If // you'd like to manually name or tag the page, edit or @@ -88,10 +103,11 @@ export function init(apiKey) { } export function track(event, data) { - if(window.analytics) { + if (window.metrics) { try { - window.analytics.track(event, data); - } catch(e) { + window.metrics.track(event, data); + console.log(); + } catch (e) { log.error(`Metrics library error for event ${event}: ${e}`); } } diff --git a/src/website/index.js b/src/website/index.js index b0a6f0ef..30afd6f1 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -1,15 +1,15 @@ -import '../google-analytics.js'; -import * as metrics from '../metrics.js'; -import metricsApiKey from './metrics-api-key.js'; -import { setupNavbar } from './navbar.js'; -import { setupExtensionButton } from './extension.js'; -import { setupLibraries } from './libraries.js'; -import { setupTokenEditor, setTokenEditorValue } from '../editor'; -import { setupJwtCounter } from './counter.js'; -import { setupSmoothScrolling } from './smooth-scrolling.js'; -import { setupHighlighting } from './highlighting.js'; -import { isChrome, isFirefox, isPartiallyInViewport, once } from './utils.js'; -import { setupShareJwtButton } from '../share-button.js'; +import "../google-analytics.js"; +import * as metrics from "../metrics.js"; +import metricsApiKey from "./metrics-api-key.js"; +import { setupNavbar } from "./navbar.js"; +import { setupExtensionButton } from "./extension.js"; +import { setupLibraries } from "./libraries.js"; +import { setupTokenEditor, setTokenEditorValue } from "../editor"; +import { setupJwtCounter } from "./counter.js"; +import { setupSmoothScrolling } from "./smooth-scrolling.js"; +import { setupHighlighting } from "./highlighting.js"; +import { isChrome, isFirefox, isPartiallyInViewport, once } from "./utils.js"; +import { setupShareJwtButton } from "../share-button.js"; import { publicKeyTextArea, debuggerSection, @@ -18,9 +18,9 @@ import { shareJwtButton, shareJwtTextElement, librariesElement -} from './dom-elements.js'; +} from "./dom-elements.js"; -import queryString from 'querystring'; +import queryString from "querystring"; /* For initialization, look at the end of this file */ @@ -29,22 +29,22 @@ function parseLocationQuery() { const locHash = queryString.parse(document.location.hash.substr(1)); const keys = [ - 'id_token', - 'access_token', - 'value', - 'token', - 'debugger-io?token' + "id_token", + "access_token", + "value", + "token", + "debugger-io?token" ]; - for(const key of keys) { + for (const key of keys) { const token = locSearch[key] || locHash[key]; - if(token) { - metrics.track('token-in-url', { type: key }); + if (token) { + metrics.track("token-in-url", { type: key }); setTokenEditorValue(token); - if(locSearch.publicKey || locHash.publicKey) { - metrics.track('pubkey-in-url'); + if (locSearch.publicKey || locHash.publicKey) { + metrics.track("pubkey-in-url"); publicKeyTextArea.value = locSearch.publicKey || locHash.publicKey; } @@ -56,12 +56,12 @@ function parseLocationQuery() { } function pickEbookOrExtensionBanner() { - if((isChrome() || isFirefox()) && (Math.random() >= 0.5)) { - metrics.track('extension-banner-shown'); - extensionSection.style.display = 'block'; + if ((isChrome() || isFirefox()) && Math.random() >= 0.5) { + metrics.track("extension-banner-shown"); + extensionSection.style.display = "block"; } else { - metrics.track('ebook-banner-shown'); - ebookSection.style.display = 'block'; + metrics.track("ebook-banner-shown"); + ebookSection.style.display = "block"; } } @@ -69,13 +69,13 @@ function setupMetrics() { metrics.init(metricsApiKey); // Section visible metrics - window.addEventListener('scroll', e => { - if(isPartiallyInViewport(librariesElement)) { - once('libraries-visible', () => metrics.track('libraries-visible-once')); + window.addEventListener("scroll", e => { + if (isPartiallyInViewport(librariesElement)) { + once("libraries-visible", () => metrics.track("libraries-visible-once")); } - if(isPartiallyInViewport(debuggerSection)) { - once('editor-visible', () => metrics.track('editor-visible-once')); + if (isPartiallyInViewport(debuggerSection)) { + once("editor-visible", () => metrics.track("editor-visible-once")); } }); } diff --git a/views/website/layout.pug b/views/website/layout.pug index 6753c072..28da8ad9 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -27,16 +27,15 @@ html(lang='en') meta(property='og:image:type', content='image/png') meta(property='og:image:width', content='1200') meta(property='og:image:height', content='630') - + include ../stylesheets.pug link(rel='search', type='application/opensearchdescription+xml', title='JWT.io', href='http://github.com/opensearch.xml') include ../icons.pug - + // Chrome extension link, required for inline installs link(rel="chrome-webstore-item", href="https://chrome.google.com/webstore/detail/ppmmlchacdbknfphdeafcbmklcghghmd") - body // Google Tag Manager From 07b7817cd3f3f61ce63f60bb33674ba60fae20b6 Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 21 Jan 2019 14:14:05 +0100 Subject: [PATCH 126/456] Throttle editor changes --- src/editor/index.js | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/src/editor/index.js b/src/editor/index.js index 4af2209d..d6571ecb 100644 --- a/src/editor/index.js +++ b/src/editor/index.js @@ -40,6 +40,7 @@ import { } from "../dom-elements.js"; import log from "loglevel"; +import _ from "lodash"; // The event manager lets us enable/disable events as needed without // manually tracking them. Events that need to be disabled should be @@ -388,10 +389,22 @@ function setupEvents() { eventManager.addDomEvent(algorithmSelect, "change", algorithmChangeHandler); // When an encoded token is inserted, it must be decoded. - eventManager.addCodeMirrorEvent(tokenEditor, "change", decodeToken); + eventManager.addCodeMirrorEvent( + tokenEditor, + "change", + _.throttle(decodeToken, 1000) + ); // When parts of the decoded token are changed, it must be reencoded. - eventManager.addCodeMirrorEvent(headerEditor, "change", encodeToken); - eventManager.addCodeMirrorEvent(payloadEditor, "change", encodeToken); + eventManager.addCodeMirrorEvent( + headerEditor, + "change", + _.throttle(encodeToken, 1000) + ); + eventManager.addCodeMirrorEvent( + payloadEditor, + "change", + _.throttle(encodeToken, 1000) + ); // HMAC secret, show tooltip if secret is too short. eventManager.addDomEvent(secretInput, "input", minSecretLengthCheck); From 2fff713f5c267ea04f5a256b442a9ec758d89d2c Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 11 Feb 2019 11:33:43 +0100 Subject: [PATCH 127/456] Track metrics in our dwh --- src/metrics.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/metrics.js b/src/metrics.js index f1bf82bb..90fbf097 100644 --- a/src/metrics.js +++ b/src/metrics.js @@ -75,7 +75,7 @@ export function init(apiKey) { // Grab analytics and make it private window.metrics = new Auth0Metrics( key, - "https://dwh-tracking.it.auth0.com/external", + "https://dwh-tracking.it.auth0.com/external-metrics", "jwt.io" ); }; From bbef06f060e56fe61343657fd6d49d6137b7a305 Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 11 Feb 2019 12:03:45 +0100 Subject: [PATCH 128/456] Add Throttle to tests --- test/functional/editor.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/test/functional/editor.js b/test/functional/editor.js index 2f9dcede..423e3801 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -21,6 +21,7 @@ const expect = chai.expect; const typingDelay = 0; const tokenProcessingWait = 300; +const editorThrottle = 1000; describe('Editor', function() { this.timeout(75000); @@ -134,6 +135,7 @@ describe('Editor', function() { return window.test.tokenEditor.getValue() }); + await this.page.waitFor(editorThrottle); await this.page.click('.js-header'); await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); @@ -340,6 +342,7 @@ describe('Editor', function() { await secretInput.type(tokens[alg].secret, { delay: typingDelay }); + await this.page.waitFor(1250); await this.page.click('.js-input'); await this.page.keyboard.down('ControlLeft'); From eae28239f2852fe49a2c8c1e7537cedcd3e61430 Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 11 Feb 2019 12:20:26 +0100 Subject: [PATCH 129/456] Fix timeout --- test/functional/editor.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/functional/editor.js b/test/functional/editor.js index 423e3801..f739aa0c 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -21,7 +21,7 @@ const expect = chai.expect; const typingDelay = 0; const tokenProcessingWait = 300; -const editorThrottle = 1000; +const editorThrottle = 1500; describe('Editor', function() { this.timeout(75000); @@ -342,7 +342,7 @@ describe('Editor', function() { await secretInput.type(tokens[alg].secret, { delay: typingDelay }); - await this.page.waitFor(1250); + await this.page.waitFor(editorThrottle); await this.page.click('.js-input'); await this.page.keyboard.down('ControlLeft'); From de7da25528e80d5e01601e5f4138f74b49306b96 Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 11 Feb 2019 13:51:33 +0100 Subject: [PATCH 130/456] Fix failing tests due to editor throttling --- test/functional/editor.js | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/test/functional/editor.js b/test/functional/editor.js index f739aa0c..f7ef213b 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -21,7 +21,7 @@ const expect = chai.expect; const typingDelay = 0; const tokenProcessingWait = 300; -const editorThrottle = 1500; +const tokenEditorThrottleWait = 1200; describe('Editor', function() { this.timeout(75000); @@ -135,7 +135,6 @@ describe('Editor', function() { return window.test.tokenEditor.getValue() }); - await this.page.waitFor(editorThrottle); await this.page.click('.js-header'); await this.page.keyboard.down('ControlLeft'); await this.page.keyboard.press('KeyA'); @@ -152,6 +151,7 @@ describe('Editor', function() { // Wait for token processing. await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); const newToken = await this.page.evaluate(() => { return window.test.tokenEditor.getValue(); @@ -190,6 +190,7 @@ describe('Editor', function() { // Wait for token processing. await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); const newToken = await this.page.evaluate(() => { return window.test.tokenEditor.getValue() @@ -224,6 +225,10 @@ describe('Editor', function() { delay: typingDelay }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); + const selectedAfter = await this.page.$eval('#algorithm-select', select => { return select.options[select.selectedIndex].value; @@ -234,6 +239,7 @@ describe('Editor', function() { // Wait for token processing. await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); const valid = await this.page.$eval('.validation-status', status => { return status.classList.contains('valid-token') && @@ -342,7 +348,6 @@ describe('Editor', function() { await secretInput.type(tokens[alg].secret, { delay: typingDelay }); - await this.page.waitFor(editorThrottle); await this.page.click('.js-input'); await this.page.keyboard.down('ControlLeft'); @@ -354,6 +359,7 @@ describe('Editor', function() { // Wait for token processing. await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); const valid = await this.page.$eval('.validation-status', status => { return status.classList.contains('valid-token') && @@ -463,6 +469,7 @@ describe('Editor', function() { // Wait for token processing. await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); const valid = await this.page.$eval('.validation-status', status => { return status.classList.contains('valid-token') && @@ -545,6 +552,7 @@ describe('Editor', function() { // Wait for token processing. await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); const newToken = await this.page.evaluate(() => { return window.test.tokenEditor.getValue(); @@ -627,6 +635,7 @@ describe('Editor', function() { // Wait for token processing. await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); const newToken = await this.page.evaluate(() => { return window.test.tokenEditor.getValue(); @@ -701,6 +710,7 @@ describe('Editor', function() { }); await this.page.waitFor(2000); + await this.page.waitFor(tokenEditorThrottleWait); const publicKey = await this.page.$eval('textarea[name="public-key"]', publicKeyElement => publicKeyElement.value); @@ -742,6 +752,7 @@ describe('Editor', function() { }); await this.page.waitFor(2000); + await this.page.waitFor(tokenEditorThrottleWait); const publicKey = await this.page.$eval('textarea[name="public-key"]', publicKeyElement => publicKeyElement.value); @@ -867,7 +878,7 @@ describe('Editor', function() { it('Marks token as invalid when there is no public key', async function() { //this.timeout(20000); - + await this.page.waitFor(tokenEditorThrottleWait); await this.page.select('#algorithm-select', 'RS256'); await this.page.click('.js-input'); @@ -889,6 +900,7 @@ describe('Editor', function() { // Wait for token processing. await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); const valid = await this.page.$eval('.validation-status', status => { return status.classList.contains('valid-token') && @@ -905,6 +917,7 @@ describe('Editor', function() { // Wait for token processing. await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); const invalid = await this.page.$eval('.validation-status', status => { return status.classList.contains('invalid-token') && @@ -938,6 +951,7 @@ describe('Editor', function() { // Wait for token processing. await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); const valid = await this.page.$eval('.validation-status', status => { return status.classList.contains('valid-token') && @@ -1150,6 +1164,8 @@ describe('Editor', function() { delay: typingDelay }); + await this.page.waitFor(tokenEditorThrottleWait); + const shareJwtButton = await this.page.$('.website-share button'); await shareJwtButton.click(); @@ -1220,6 +1236,8 @@ describe('Editor', function() { delay: typingDelay }); + await this.page.waitFor(tokenEditorThrottleWait); + const shareJwtButton = await this.page.$('.website-share button'); await shareJwtButton.click(); From 05f2aa43f0d67a8024dc4b5bfdc1490ea6a3c675 Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 11 Feb 2019 21:57:13 +0100 Subject: [PATCH 131/456] Add heroku run build script to package.json --- package.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index a1b0c289..20fd7df1 100644 --- a/package.json +++ b/package.json @@ -68,9 +68,9 @@ "xhr-mock": "^2.0.3" }, "scripts": { - "postinstall": "grunt build-website", "start": "node server.js", "test": "grunt test", - "build": "grunt build" - } + "build": "grunt build-website" + }, + "heroku-run-build-script": true } From 4b6aeaed929b9686a4b1127f37b9441020971c2f Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 11 Feb 2019 22:44:47 +0100 Subject: [PATCH 132/456] Remove console.log --- src/metrics.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/metrics.js b/src/metrics.js index 90fbf097..6e4d45ad 100644 --- a/src/metrics.js +++ b/src/metrics.js @@ -92,7 +92,7 @@ export function init(apiKey) { // load the tools you've enabled for your account. Boosh! analytics.load( apiKey, - "https://dwh-tracking.it.auth0.com/external", + "https://dwh-tracking.it.auth0.com/external-metrics", "jwt.io" ); @@ -106,7 +106,6 @@ export function track(event, data) { if (window.metrics) { try { window.metrics.track(event, data); - console.log(); } catch (e) { log.error(`Metrics library error for event ${event}: ${e}`); } From ce9c0ddf952a383ae343392943daa1645ee3dbc7 Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 11 Feb 2019 22:46:10 +0100 Subject: [PATCH 133/456] Cleanup metrics --- src/metrics.js | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/metrics.js b/src/metrics.js index 6e4d45ad..3c962249 100644 --- a/src/metrics.js +++ b/src/metrics.js @@ -91,9 +91,7 @@ export function init(apiKey) { // Load Auth0-metrics with your key, which will automatically // load the tools you've enabled for your account. Boosh! analytics.load( - apiKey, - "https://dwh-tracking.it.auth0.com/external-metrics", - "jwt.io" + apiKey ); // Make the first page call to load the integrations. If From 46085d4e2ccff90d712fdbae55bdf1b21f5772e1 Mon Sep 17 00:00:00 2001 From: Sam Bellen Date: Wed, 20 Feb 2019 15:11:07 +0100 Subject: [PATCH 134/456] Update auth0/node-jsonwebtoken PS support --- views/website/libraries/2-Node.js.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/views/website/libraries/2-Node.js.json b/views/website/libraries/2-Node.js.json index a4ad3651..5e71f6b0 100644 --- a/views/website/libraries/2-Node.js.json +++ b/views/website/libraries/2-Node.js.json @@ -25,9 +25,9 @@ "es256": true, "es384": true, "es512": true, - "ps256": false, - "ps384": false, - "ps512": false + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/auth0", "authorName": "Auth0", From aab2869d648b84b57e97cb438ccb7d53b099a12f Mon Sep 17 00:00:00 2001 From: Gabriel Sanches Date: Thu, 21 Feb 2019 17:19:07 -0300 Subject: [PATCH 135/456] Update available signing methods for gbrlsnchs/jwt I have released a new major version for [gbrlsnchs/jwt](https://github.com/gbrlsnchs/jwt) and now it also supports all signing methods using RSA-PSS. --- views/website/libraries/9-Go.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index b9f9aee6..9bccf3de 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -271,15 +271,15 @@ "es256": true, "es384": true, "es512": true, - "ps256": false, - "ps384": false, - "ps512": false + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/gbrlsnchs", - "authorName": "gbrlsnchs", + "authorName": "Gabriel Sanches", "gitHubRepoPath": "gbrlsnchs/jwt", "repoUrl": "https://github.com/gbrlsnchs/jwt", - "installCommandHtml": "go get github.com/gbrlsnchs/jwt" + "installCommandHtml": "go get -u github.com/gbrlsnchs/jwt/v3" }, { "minimumVersion": null, From 893449cbf98d06e3c42701f5a4dbade78c16a240 Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 28 Feb 2019 17:44:18 +0100 Subject: [PATCH 136/456] Remove segment key and strip tokens from url --- src/metrics.js | 32 ++++++++++++++++++++++++------- src/website/index.js | 3 +-- src/website/introduction/index.js | 9 ++++----- src/website/metrics-api-key.js | 5 ----- 4 files changed, 30 insertions(+), 19 deletions(-) delete mode 100644 src/website/metrics-api-key.js diff --git a/src/metrics.js b/src/metrics.js index 3c962249..c73b5d5f 100644 --- a/src/metrics.js +++ b/src/metrics.js @@ -1,6 +1,6 @@ import log from "loglevel"; -export function init(apiKey) { +export function init() { // Create a queue, but don't obliterate an existing one! var analytics = (window.metrics = window.metrics || []); @@ -60,7 +60,7 @@ export function init(apiKey) { // Define a method to load Auth0-metrics from our CDN, // and that will be sure to only ever load it once. - analytics.load = function(key, options) { + analytics.load = function() { // Create an async script element based on your key. var script = document.createElement("script"); script.type = "text/javascript"; @@ -74,9 +74,29 @@ export function init(apiKey) { script.onload = function() { // Grab analytics and make it private window.metrics = new Auth0Metrics( - key, + "", "https://dwh-tracking.it.auth0.com/external-metrics", - "jwt.io" + "jwt.io", + { + removeQueryParam: [ + { + key: "token", + value: "[a-z0-9._~-]+" + }, + { + key: "value", + value: "[a-z0-9._~-]+" + }, + { + key: "id_token", + value: "[a-z0-9._~-]+" + }, + { + key: "access_token", + value: "[a-z0-9._~-]+" + } + ] + } ); }; @@ -90,9 +110,7 @@ export function init(apiKey) { // Load Auth0-metrics with your key, which will automatically // load the tools you've enabled for your account. Boosh! - analytics.load( - apiKey - ); + analytics.load(); // Make the first page call to load the integrations. If // you'd like to manually name or tag the page, edit or diff --git a/src/website/index.js b/src/website/index.js index 30afd6f1..543c652b 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -1,6 +1,5 @@ import "../google-analytics.js"; import * as metrics from "../metrics.js"; -import metricsApiKey from "./metrics-api-key.js"; import { setupNavbar } from "./navbar.js"; import { setupExtensionButton } from "./extension.js"; import { setupLibraries } from "./libraries.js"; @@ -66,7 +65,7 @@ function pickEbookOrExtensionBanner() { } function setupMetrics() { - metrics.init(metricsApiKey); + metrics.init(); // Section visible metrics window.addEventListener("scroll", e => { diff --git a/src/website/introduction/index.js b/src/website/introduction/index.js index 850b7dc0..c41bde5e 100644 --- a/src/website/introduction/index.js +++ b/src/website/introduction/index.js @@ -1,10 +1,9 @@ -import { setupHighlighting } from '../highlighting.js'; -import { setupJwtCounter } from '../counter.js'; -import * as metrics from '../../metrics.js'; -import metricsApiKey from '../metrics-api-key.js'; +import { setupHighlighting } from "../highlighting.js"; +import { setupJwtCounter } from "../counter.js"; +import * as metrics from "../../metrics.js"; function setupMetrics() { - metrics.init(metricsApiKey); + metrics.init(); } // Initialization diff --git a/src/website/metrics-api-key.js b/src/website/metrics-api-key.js deleted file mode 100644 index 5d39d90f..00000000 --- a/src/website/metrics-api-key.js +++ /dev/null @@ -1,5 +0,0 @@ -const key = (typeof PRODUCTION !== 'undefined') && PRODUCTION ? - '693wciz6BgZdlmW0qDlbgxpyj7gtVxRR' : - 'xBxBArADMejN3aqs9NhISky9PHPXIr80'; - -export default key; From 0cd5059635620f17d55a5af3faebff1a7a57bddd Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 28 Feb 2019 18:08:43 +0100 Subject: [PATCH 137/456] Adjust query param filter args --- src/metrics.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/metrics.js b/src/metrics.js index c73b5d5f..990cab1a 100644 --- a/src/metrics.js +++ b/src/metrics.js @@ -79,10 +79,6 @@ export function init() { "jwt.io", { removeQueryParam: [ - { - key: "token", - value: "[a-z0-9._~-]+" - }, { key: "value", value: "[a-z0-9._~-]+" @@ -94,6 +90,10 @@ export function init() { { key: "access_token", value: "[a-z0-9._~-]+" + }, + { + key: "token", + value: "[a-z0-9._~-]+" } ] } From 02a658806093c9603a80c9ea8dd7b87400505ff5 Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 28 Feb 2019 20:22:53 +0100 Subject: [PATCH 138/456] Upgrade auth0-metrics --- src/metrics.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/metrics.js b/src/metrics.js index 990cab1a..55964f84 100644 --- a/src/metrics.js +++ b/src/metrics.js @@ -65,7 +65,8 @@ export function init() { var script = document.createElement("script"); script.type = "text/javascript"; script.async = true; - script.src = "https://cdn.auth0.com/website/js/1.6.0/auth0-metrics-min.js"; + script.src = + "https://cdn.auth0.com/website/js/m/1.6.1/auth0-metrics.min.js"; script.onerror = function() { console.error("No metrics"); From 6b51485142b586b85c433ef8ce1e5b51dc3c157f Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 28 Feb 2019 21:12:47 +0100 Subject: [PATCH 139/456] Upgrade auth0-metrics --- src/metrics.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/metrics.js b/src/metrics.js index 55964f84..a7b931b5 100644 --- a/src/metrics.js +++ b/src/metrics.js @@ -66,7 +66,7 @@ export function init() { script.type = "text/javascript"; script.async = true; script.src = - "https://cdn.auth0.com/website/js/m/1.6.1/auth0-metrics.min.js"; + "https://cdn.auth0.com/website/js/m/1.6.2/auth0-metrics.min.js"; script.onerror = function() { console.error("No metrics"); From 9897792e3d6e304d72c134b076aee43e05389494 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Fri, 1 Mar 2019 18:55:09 +0100 Subject: [PATCH 140/456] add @panva/jose --- views/website/libraries/2-Node.js.json | 31 ++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/views/website/libraries/2-Node.js.json b/views/website/libraries/2-Node.js.json index 5e71f6b0..3ee29448 100644 --- a/views/website/libraries/2-Node.js.json +++ b/views/website/libraries/2-Node.js.json @@ -34,6 +34,37 @@ "gitHubRepoPath": "auth0/node-jsonwebtoken", "repoUrl": "https://github.com/auth0/node-jsonwebtoken", "installCommandHtml": "npm install jsonwebtoken" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true + }, + "authorUrl": "https://github.com/panva", + "authorName": "Filip Skokan", + "gitHubRepoPath": "panva/jose", + "repoUrl": "https://github.com/panva/jose", + "installCommandHtml": "npm install @panva/jose" } ] } From 6cee8c5353aca45dbfd86bf24e1ff12142f5a5f4 Mon Sep 17 00:00:00 2001 From: Milad Rahimi Date: Tue, 5 Mar 2019 14:16:06 +0330 Subject: [PATCH 141/456] update miladrahimi/php-jwt info Add status of PS algorithms for `miladrahimi/php-jwt` --- views/website/libraries/24-PHP.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/24-PHP.json b/views/website/libraries/24-PHP.json index ac01754b..08cf40bd 100644 --- a/views/website/libraries/24-PHP.json +++ b/views/website/libraries/24-PHP.json @@ -331,7 +331,10 @@ "rs512": true, "es256": false, "es384": false, - "es512": false + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false }, "authorUrl": "https://github.com/miladrahimi", "authorName": "Milad Rahimi", From fd36cf9bd62a3d51957e3bf87d911599daebf712 Mon Sep 17 00:00:00 2001 From: Ian Partridge Date: Tue, 5 Mar 2019 17:02:25 +0000 Subject: [PATCH 142/456] IBM-Swift/Swift-JWT supports ECDSA from v3.3 --- views/website/libraries/19-Swift.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/views/website/libraries/19-Swift.json b/views/website/libraries/19-Swift.json index eaee3b08..a4b41fd4 100644 --- a/views/website/libraries/19-Swift.json +++ b/views/website/libraries/19-Swift.json @@ -116,9 +116,9 @@ "rs256": true, "rs384": true, "rs512": true, - "es256": false, - "es384": false, - "es512": false, + "es256": true, + "es384": true, + "es512": true, "ps256": false, "ps384": false, "ps512": false From e98268321f2f2eaaa431b6749735086b9fa63a66 Mon Sep 17 00:00:00 2001 From: Sambego Date: Wed, 6 Mar 2019 09:48:08 +0100 Subject: [PATCH 143/456] Remove hardcoded GA scripts --- src/extension/index.js | 17 ++++++++--------- src/google-analytics.js | 13 ------------- src/website/index.js | 1 - 3 files changed, 8 insertions(+), 23 deletions(-) diff --git a/src/extension/index.js b/src/extension/index.js index 188c3c3f..ae22ba0f 100644 --- a/src/extension/index.js +++ b/src/extension/index.js @@ -1,18 +1,17 @@ -import '../google-analytics.js'; -import { +import { setupTokenEditor, setTokenEditorValue, getTokenEditorValue -} from '../editor'; -import { setupTokenPageInspector } from './page-inspector.js'; -import { shareJwtLink, shareJwtTextElement } from './dom-elements.js'; -import { getTokenFromClipboardIfPossible } from './utils.js'; -import { setupShareJwtButton } from '../share-button.js'; -import strings from '../strings.js'; +} from "../editor"; +import { setupTokenPageInspector } from "./page-inspector.js"; +import { shareJwtLink, shareJwtTextElement } from "./dom-elements.js"; +import { getTokenFromClipboardIfPossible } from "./utils.js"; +import { setupShareJwtButton } from "../share-button.js"; +import strings from "../strings.js"; function loadFromClipboardIfPossible() { const token = getTokenFromClipboardIfPossible(); - if(token) { + if (token) { setTokenEditorValue(token); } } diff --git a/src/google-analytics.js b/src/google-analytics.js index a54f80ff..e69de29b 100644 --- a/src/google-analytics.js +++ b/src/google-analytics.js @@ -1,13 +0,0 @@ -//Google Analytics -var _gaq = _gaq || []; -_gaq.push(['_setAccount', 'UA-37952868-23']); -_gaq.push(['_trackPageview']); - -(function() { - var ga = document.createElement('script'); - ga.type = 'text/javascript'; - ga.async = true; - ga.src = 'https://ssl.google-analytics.com/ga.js'; - var s = document.getElementsByTagName('script')[0]; - s.parentNode.insertBefore(ga, s); -})(); diff --git a/src/website/index.js b/src/website/index.js index 543c652b..a3aca97e 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -1,4 +1,3 @@ -import "../google-analytics.js"; import * as metrics from "../metrics.js"; import { setupNavbar } from "./navbar.js"; import { setupExtensionButton } from "./extension.js"; From f77a598f7d66a3bf592d36d3c7c80de021d071b7 Mon Sep 17 00:00:00 2001 From: Sambego Date: Wed, 6 Mar 2019 09:50:00 +0100 Subject: [PATCH 144/456] Remove GA script from view --- views/website/layout.pug | 8 -------- 1 file changed, 8 deletions(-) diff --git a/views/website/layout.pug b/views/website/layout.pug index 28da8ad9..ebf32c0c 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -66,14 +66,6 @@ html(lang='en') .column.social-counter a.twitter-follow-button(href='https://twitter.com/auth0', data-show-count='true') Follow @auth0 - script. - (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ - (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), - m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) - })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); - ga('create', 'UA-37952868-2', 'auto'); - ga('send', 'pageview'); - script. !function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs'); From 94b30510e39194cdd73097ad6068f9cab0ddf87e Mon Sep 17 00:00:00 2001 From: Sambego Date: Fri, 15 Mar 2019 12:30:25 +0100 Subject: [PATCH 145/456] Temporary expose the JOSE lib for debugging purposes --- src/editor/jwt.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/editor/jwt.js b/src/editor/jwt.js index 022e9bd8..d6024cae 100644 --- a/src/editor/jwt.js +++ b/src/editor/jwt.js @@ -5,6 +5,8 @@ import { pki } from 'node-forge'; import log from 'loglevel'; +window.jose = jose; + // node-jose does not support keys shorter than block size. This is a // limitation from their implementation and could be resolved in the future. // See: https://github.com/cisco/node-jose/blob/master/lib/jwk/octkey.js#L141 From c7cc044e007322350785c51c3b52b01799833bb7 Mon Sep 17 00:00:00 2001 From: Sambego Date: Sat, 16 Mar 2019 10:00:38 +0100 Subject: [PATCH 146/456] Remove debug global jose access --- src/editor/jwt.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/editor/jwt.js b/src/editor/jwt.js index d6024cae..022e9bd8 100644 --- a/src/editor/jwt.js +++ b/src/editor/jwt.js @@ -5,8 +5,6 @@ import { pki } from 'node-forge'; import log from 'loglevel'; -window.jose = jose; - // node-jose does not support keys shorter than block size. This is a // limitation from their implementation and could be resolved in the future. // See: https://github.com/cisco/node-jose/blob/master/lib/jwk/octkey.js#L141 From dbae575bb4b0167a1155a301ed8c55669c06a082 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Sat, 16 Mar 2019 12:00:01 +0100 Subject: [PATCH 147/456] use 2048 rsa keys by default --- src/editor/default-tokens.js | 49 +++++++++++++++++++++++------------- 1 file changed, 32 insertions(+), 17 deletions(-) diff --git a/src/editor/default-tokens.js b/src/editor/default-tokens.js index 337053aa..6c57c9ab 100644 --- a/src/editor/default-tokens.js +++ b/src/editor/default-tokens.js @@ -3,27 +3,42 @@ const rsaPrivateKey = `-----BEGIN RSA PRIVATE KEY----- -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 -----END RSA PRIVATE KEY-----`; const rsaPublicKey = `-----BEGIN PUBLIC KEY----- -MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDdlatRjRjogo3WojgGHFHYLugd -UWAY9iR3fy4arWNA1KoS8kVw33cJibXr8bvwUAUparCwlvdbH6dvEOfou0/gCFQs -HUfQrSDv+MuSUMAe8jzKE4qW+jK+xQU9a03GUnKHkkle+Q0pX/g6jXZ7r1/xAK5D -o2kQ+X5xK9cipRgEKwIDAQAB +MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnzyis1ZjfNB0bBgKFMSv +vkTtwlvBsaJq7S5wA+kzeVOVpVWwkWdVha4s38XM/pa/yr47av7+z3VTmvDRyAHc +aT92whREFpLv9cj5lTeJSibyr/Mrm/YtjCZVWgaOYIhwrXwKLqPr/11inWsAkfIy +tvHWTxZYEcXLgAXFuUuaS3uF9gEiNQwzGTU1v0FqkqTBr4B8nW3HCN47XUu0t8Y0 +e+lf4s4OxQawWD79J9/5d3Ry0vbV3Am1FtGJiJvOwRsIfVChDpYStTcHTCMqtvWb +V6L11BWkpzGXSW4Hv43qa+GSYOD2QU68Mb59oSk2OB+BtOLpJofmbGEGgvmwyCI9 +MwIDAQAB -----END PUBLIC KEY-----`; const ecPrivateKey256 = From 42f916a8a61332fa841e56818f59c990083a466c Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Sat, 16 Mar 2019 12:09:24 +0100 Subject: [PATCH 148/456] update default tokens --- src/editor/default-tokens.js | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/editor/default-tokens.js b/src/editor/default-tokens.js index 6c57c9ab..3844f818 100644 --- a/src/editor/default-tokens.js +++ b/src/editor/default-tokens.js @@ -100,17 +100,17 @@ export default { secret: 'your-512-bit-secret' }, rs256: { - token: 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.TCYt5XsITJX1CxPCT8yAV-TVkIEq_PbChOMqsLfRoPsnsgw5WEuts01mq-pQy7UJiN5mgRxD-WUcX16dUEMGlv50aqzpqh4Qktb3rk-BuQy72IFLOqV0G_zS245-kronKb78cPN25DGlcTwLtjPAYuNzVBAh4vGHSrQyHUdBBPM', + token: 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.POstGetfAytaZS82wHcjoTyoqhMyxXiWdR7Nn7A29DNSl0EiXLdwJ6xC6AfgZWF1bOsS_TuYI3OG85AmiExREkrS6tDfTQ2B3WXlrr-wp5AokiRbz3_oB4OxG-W9KcEEbDRcZc0nH3L7LzYptiy1PtAylQGxHTWZXtGz4ht0bAecBgmpdgXMguEIcoqPJ1n3pIWk_dUZegpqx0Lka21H6XxUTxiy8OcaarA8zdnPUnV6AmNP3ecFawIFYdvJB_cm-GvpCSbr8G8y_Mllj8f4x9nBH8pQux89_6gUY618iYv7tuPWBFfEbLxtF2pZS6YC1aSfLQxeNe8djT9YjpvRZA', privateKey: rsaPrivateKey, publicKey: rsaPublicKey }, rs384: { - token: 'eyJhbGciOiJSUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.CN9hqUMdVb5LGo06Geb8ap1qYfbJ4rEZIMqTE9gxA2m6GGmsXkznRxzoFpAzQUey9q5HehRTk_-TxYydN3QtFPfrTbAHep7PLhp3XhdvTJ1ok__UBjv4aP6UWTF-Rflr3qeC18LdlM4nyKL7ZwSGDzytWihGod5vn4GAXErUUE4', + token: 'eyJhbGciOiJSUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.D4kXa3UspFjRA9ys5tsD4YDyxxam3l_XnOb3hMEdPDTfSLRHPv4HPwxvin-pIkEmfJshXPSK7O4zqSXWAXFO52X-upJjFc_gpGDswctNWpOJeXe1xBgJ--VuGDzUQCqkr9UBpN-Q7TE5u9cgIVisekSFSH5Ax6aXQC9vCO5LooNFx_WnbTLNZz7FUia9vyJ544kLB7UcacL-_idgRNIWPdd_d1vvnNGkknIMarRjCsjAEf6p5JGhYZ8_C18g-9DsfokfUfSpKgBR23R8v8ZAAmPPPiJ6MZXkefqE7p3jRbA--58z5TlHmH9nTB1DYE2872RYvyzG3LoQ-2s93VaVuw', privateKey: rsaPrivateKey, publicKey: rsaPublicKey }, rs512: { - token: 'eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.MejLezWY6hjGgbIXkq6Qbvx_-q5vWaTR6qPiNHphvla-XaZD3up1DN6Ib5AEOVtuB3fC9l-0L36noK4qQA79lhpSK3gozXO6XPIcCp4C8MU_ACzGtYe7IwGnnK3Emr6IHQE0bpGinHX1Ak1pAuwJNawaQ6Nvmz2ozZPsyxmiwoo', + token: 'eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.JlX3gXGyClTBFciHhknWrjo7SKqyJ5iBO0n-3S2_I7cIgfaZAeRDJ3SQEbaPxVC7X8aqGCOM-pQOjZPKUJN8DMFrlHTOdqMs0TwQ2PRBmVAxXTSOZOoEhD4ZNCHohYoyfoDhJDP4Qye_FCqu6POJzg0Jcun4d3KW04QTiGxv2PkYqmB7nHxYuJdnqE3704hIS56pc_8q6AW0WIT0W-nIvwzaSbtBU9RgaC7ZpBD2LiNE265UBIFraMDF8IAFw9itZSUCTKg1Q-q27NwwBZNGYStMdIBDor2Bsq5ge51EkWajzZ7ALisVp-bskzUsqUf77ejqX_CBAqkNdH1Zebn93A', privateKey: rsaPrivateKey, publicKey: rsaPublicKey }, @@ -130,19 +130,18 @@ export default { publicKey: ecPublicKey521 }, ps256: { - token: 'eyJhbGciOiJQUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.P9_X1ctIxnnoUpKSWpYw3rF62e-d8LXe3sETuLn4Lhigw5OQhi-mBBKoBMneHy4kimS84zxnMby0FYo9wKM3I3pEg8Qrz0Q00tNhKCwOnZ7Q-e86sW1luK1z82tufF-sZ9_BY_LGQsym0lQmQaHFzLmEDXnOzWsjUThHGVJTI64', + token: 'eyJhbGciOiJQUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.hZnl5amPk_I3tb4O-Otci_5XZdVWhPlFyVRvcqSwnDo_srcysDvhhKOD01DigPK1lJvTSTolyUgKGtpLqMfRDXQlekRsF4XhAjYZTmcynf-C-6wO5EI4wYewLNKFGGJzHAknMgotJFjDi_NCVSjHsW3a10nTao1lB82FRS305T226Q0VqNVJVWhE4G0JQvi2TssRtCxYTqzXVt22iDKkXeZJARZ1paXHGV5Kd1CljcZtkNZYIGcwnj65gvuCwohbkIxAnhZMJXCLaVvHqv9l-AAUV7esZvkQR1IpwBAiDQJh4qxPjFGylyXrHMqh5NlT_pWL2ZoULWTg_TJjMO9TuQ', privateKey: rsaPrivateKey, publicKey: rsaPublicKey }, ps384: { - token: 'eyJhbGciOiJQUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.oywIg-I6w59yw9jiPxewn5n2BhrD7hSifWSmzFKGBMPEMd0qweVNjlyxu2TodunPzlh49OW8QA0ygNRL9VQrWA3GXzb5FubNF4s7Y15QePx52anlvebzihx5-hR0UhKbVC0UODwYNMiY-v0L7iMbT9UvuSj0GAuZMxndo2Y2VFQ', + token: 'eyJhbGciOiJQUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.MqF1AKsJkijKnfqEI3VA1OnzAL2S4eIpAuievMgD3tEFyFMU67gCbg-fxsc5dLrxNwdZEXs9h0kkicJZ70mp6p5vdv-j2ycDKBWg05Un4OhEl7lYcdIsCsB8QUPmstF-lQWnNqnq3wra1GynJrOXDL27qIaJnnQKlXuayFntBF0j-82jpuVdMaSXvk3OGaOM-7rCRsBcSPmocaAO-uWJEGPw_OWVaC5RRdWDroPi4YL4lTkDEC-KEvVkqCnFm_40C-T_siXquh5FVbpJjb3W2_YvcqfDRj44TsRrpVhk6ohsHMNeUad_cxnFnpolIKnaXq_COv35e9EgeQIPAbgIeg', privateKey: rsaPrivateKey, publicKey: rsaPublicKey }/*, ps512: { - token: '', + token: 'eyJhbGciOiJQUzUxMiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.lLFQm3WUmHanSiQZBDcwEX9CH34ROOlPtgH3icJxaiesfvRHFDWHnG7GZQ6_-c6MU1h2LmP-mCpWM2evj7arIQCS63vp6K869CUZROhwCGZK1dfbOlYFAPg-AO4bBIKpS4NHkBIoo4O2LIbaIQT2gpBsYr4vMOX5UPCULWz8V8GlNKDv_2TYoHlttVm-2fpqQCt-ZEeCvaWEbWmk_dagewuxlhR7fXjdaSHo_6oQe6vic2sBu8RGv_NyQ97sB6X2jv1sXo0WIWihmPzDOpP0J4dmAIyCiGWQa8jXQfPN8JYbBD9j2w3xkKs7HCSl7VX3JfzxmSpTaOcVIGRnEt3kZA', privateKey: rsaPrivateKey, publicKey: rsaPublicKey }*/ }; - From 9de942e93c7a8782aaafc6f74c691058814003f9 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Sat, 16 Mar 2019 12:11:47 +0100 Subject: [PATCH 149/456] update publicKeyPlainRSA --- test/unit/editor/jwt.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/test/unit/editor/jwt.js b/test/unit/editor/jwt.js index 362f8175..9969aee9 100644 --- a/test/unit/editor/jwt.js +++ b/test/unit/editor/jwt.js @@ -12,9 +12,12 @@ chai.should(); const publicKeyPlainRSA = `-----BEGIN RSA PUBLIC KEY----- -MIGJAoGBAN2Vq1GNGOiCjdaiOAYcUdgu6B1RYBj2JHd/LhqtY0DUqhLyRXDfdwmJ -tevxu/BQBSlqsLCW91sfp28Q5+i7T+AIVCwdR9CtIO/4y5JQwB7yPMoTipb6Mr7F -BT1rTcZScoeSSV75DSlf+DqNdnuvX/EArkOjaRD5fnEr1yKlGAQrAgMBAAE= +MIIBCgKCAQEAnzyis1ZjfNB0bBgKFMSvvkTtwlvBsaJq7S5wA+kzeVOVpVWwkWdV +ha4s38XM/pa/yr47av7+z3VTmvDRyAHcaT92whREFpLv9cj5lTeJSibyr/Mrm/Yt +jCZVWgaOYIhwrXwKLqPr/11inWsAkfIytvHWTxZYEcXLgAXFuUuaS3uF9gEiNQwz +GTU1v0FqkqTBr4B8nW3HCN47XUu0t8Y0e+lf4s4OxQawWD79J9/5d3Ry0vbV3Am1 +FtGJiJvOwRsIfVChDpYStTcHTCMqtvWbV6L11BWkpzGXSW4Hv43qa+GSYOD2QU68 +Mb59oSk2OB+BtOLpJofmbGEGgvmwyCI9MwIDAQAB -----END RSA PUBLIC KEY-----`; describe('JWT', function() { From 95bb53b4a0dbbaa90a53a0fb3de8d6bcad735a8e Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Sat, 16 Mar 2019 12:37:19 +0100 Subject: [PATCH 150/456] update jwks.json --- test/functional/jwks.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/functional/jwks.json b/test/functional/jwks.json index 6cc07c10..969fd891 100644 --- a/test/functional/jwks.json +++ b/test/functional/jwks.json @@ -5,7 +5,7 @@ "kty": "RSA", "use": "sig", "x5c": [ - "MIICWzCCAcSgAwIBAgIJANbzPoQsRLVvMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwHhcNMTgwMjA5MTc1NDExWhcNMTgwMzExMTc1NDExWjBFMQswCQYDVQQGEwJVUzETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDdlatRjRjogo3WojgGHFHYLugdUWAY9iR3fy4arWNA1KoS8kVw33cJibXr8bvwUAUparCwlvdbH6dvEOfou0/gCFQsHUfQrSDv+MuSUMAe8jzKE4qW+jK+xQU9a03GUnKHkkle+Q0pX/g6jXZ7r1/xAK5Do2kQ+X5xK9cipRgEKwIDAQABo1MwUTAdBgNVHQ4EFgQUe2Yz57fovxPFVMuLYp8YtPh+b20wHwYDVR0jBBgwFoAUe2Yz57fovxPFVMuLYp8YtPh+b20wDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOBgQBdQJdFYpWe05D6uGq4nHROscqiIgNv07VSkVtSZ6GTvaeAAgQMz9In9fh/LQw37bf2pwsusGAvL6m3EicI/XxrkaxagNRkcqMJeYi0lcx1Kw4tmbu7MGn8Az9K7Czi5SM0N1/3FowuVhVvMIPosfUDuC4CBMJ+tiQYk/NPOF2k+Q==" + "MIIDBjCCAe4CCQCu9p2owjWCFjANBgkqhkiG9w0BAQsFADBFMQswCQYDVQQGEwJVUzETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMB4XDTE5MDMxNjExMzYyOVoXDTIwMDMxNTExMzYyOVowRTELMAkGA1UEBhMCVVMxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ88orNWY3zQdGwYChTEr75E7cJbwbGiau0ucAPpM3lTlaVVsJFnVYWuLN/FzP6Wv8q+O2r+/s91U5rw0cgB3Gk/dsIURBaS7/XI+ZU3iUom8q/zK5v2LYwmVVoGjmCIcK18Ci6j6/9dYp1rAJHyMrbx1k8WWBHFy4AFxblLmkt7hfYBIjUMMxk1Nb9BapKkwa+AfJ1txwjeO11LtLfGNHvpX+LODsUGsFg+/Sff+Xd0ctL21dwJtRbRiYibzsEbCH1QoQ6WErU3B0wjKrb1m1ei9dQVpKcxl0luB7+N6mvhkmDg9kFOvDG+faEpNjgfgbTi6SaH5mxhBoL5sMgiPTMCAwEAATANBgkqhkiG9w0BAQsFAAOCAQEAQItHIdKxBhnG6yqZIq9inhwQZJ2D/YV/FJfhLsHcvj/OnOvu/sZPn2SEwsi4w4LobS1MH2bxX15m+pK0sUdLxWysLr3afDEOIlI1pHPxPv4sXeJ2g/N2Wzr7ZMTEXSlCWgU+4Q9aIvNOlaAS5EBhQXTDZqwLer+tgeC+7da8rihuOnQWQraWGGXpKVHb2kbBpVZi61cjmvic6Caun4AZjL+UOEWpzPtFnvgTKJRD7Vh0fUfhxnKXHLAV/kcdcRPEeTg+ZDAWTThj20rDyxkWU87bptvI9VmxaummGwD/iknuiu84x3fiuEtwHbTCA4bz8ce6jzKQ2qBllvgfcVf4Dw==" ], "kid": "1", "x5t": "1" From 1d709c25cf36facb75eefbb661effd8fdb742649 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Sat, 16 Mar 2019 13:10:31 +0100 Subject: [PATCH 151/456] Properly handle `iss` in payload 1) resolve well-known openid-configuration 2) look and fetch jwks_uri 3) parse the jwks, look for a key based on kid, alg, use 4) if more than 1 or none match, fail 5) export key to pem as expected Resolves #367 --- src/editor/public-key-download.js | 35 +++++++++++++--- test/functional/editor.js | 9 +++- test/functional/jwks.json | 4 +- test/unit/editor/public-key-download.js | 56 +++++++++++++++---------- 4 files changed, 73 insertions(+), 31 deletions(-) diff --git a/src/editor/public-key-download.js b/src/editor/public-key-download.js index afb748d0..9cfee3df 100644 --- a/src/editor/public-key-download.js +++ b/src/editor/public-key-download.js @@ -1,3 +1,5 @@ +import jose from 'node-jose'; + import { httpGet } from '../utils.js'; function getKeyFromX5c(x5c) { @@ -28,13 +30,13 @@ function getKeyFromX5Claims(claims) { } else { reject('x5c or x5u claims not available'); } - }); + }); } function getKeyFromJwkKeySetUrl(kid, url) { return httpGet(url).then(data => { data = JSON.parse(data); - + if(!data || !data.keys || !(data.keys instanceof Array)) { throw new Error(`Could not get JWK key set from URL: ${url}`); } @@ -66,10 +68,31 @@ export function downloadPublicKeyIfPossible(decodedToken) { resolve(getKeyFromJwkKeySetUrl(header.kid, header.jku)); } else if(header.jwk) { resolve(getKeyFromX5Claims(header.jwk)); - } else if(header.kid && payload.iss) { - //Auth0-specific scheme - const url = payload.iss + '.well-known/jwks.json'; - resolve(getKeyFromJwkKeySetUrl(header.kid, url)); + } else if(payload.iss) { + const url = payload.iss + (payload.iss.substr(-1) === '/' ? '.well-known/openid-configuration' : '/.well-known/openid-configuration') + + httpGet(url).then(data => { + data = JSON.parse(data); + + if(!data || !data.jwks_uri || typeof data.jwks_uri !== 'string') { + throw new Error(`Could not get jwks_uri from URL: ${url}`); + } + + return httpGet(data.jwks_uri) + }).then(data => { + data = JSON.parse(data); + + return jose.JWK.asKeyStore(data); + }).then(jwks => { + + const keys = jwks.all({ alg: header.alg, kid: header.kid, use: 'sig' }) + + if (keys.length !== 1) { + throw new Error('Could not find a single definitive key in jwks_uri'); + } + + resolve(keys[0].toPEM()) + }).catch(reject); } else { reject('No details about key'); } diff --git a/test/functional/editor.js b/test/functional/editor.js index f7ef213b..bb9dfb29 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -660,6 +660,13 @@ describe('Editor', function() { before(async function() { this.app = express(); + this.app.get('/.well-known/openid-configuration', (req, res) => { + res.set('Access-Control-Allow-Origin', '*'); + res.json({ + jwks_uri: 'http://localhost:3000/.well-known/jwks.json' + }); + }); + this.app.get('/.well-known/jwks.json', (req, res) => { res.set('Access-Control-Allow-Origin', '*'); res.json(jwks); @@ -715,7 +722,7 @@ describe('Editor', function() { const publicKey = await this.page.$eval('textarea[name="public-key"]', publicKeyElement => publicKeyElement.value); - expect(publicKey).to.include(jwks.keys[0].x5c[0]); + expect(publicKey).to.include(`-----BEGIN PUBLIC KEY-----\nMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDdlatRjRjogo3WojgGHFHYLugd\nUWAY9iR3fy4arWNA1KoS8kVw33cJibXr8bvwUAUparCwlvdbH6dvEOfou0/gCFQs\nHUfQrSDv+MuSUMAe8jzKE4qW+jK+xQU9a03GUnKHkkle+Q0pX/g6jXZ7r1/xAK5D\no2kQ+X5xK9cipRgEKwIDAQAB\n-----END PUBLIC KEY-----\n`); const valid = await this.page.$eval('.validation-status', status => { return status.classList.contains('valid-token') && diff --git a/test/functional/jwks.json b/test/functional/jwks.json index 6cc07c10..96528a4f 100644 --- a/test/functional/jwks.json +++ b/test/functional/jwks.json @@ -8,7 +8,9 @@ "MIICWzCCAcSgAwIBAgIJANbzPoQsRLVvMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwHhcNMTgwMjA5MTc1NDExWhcNMTgwMzExMTc1NDExWjBFMQswCQYDVQQGEwJVUzETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDdlatRjRjogo3WojgGHFHYLugdUWAY9iR3fy4arWNA1KoS8kVw33cJibXr8bvwUAUparCwlvdbH6dvEOfou0/gCFQsHUfQrSDv+MuSUMAe8jzKE4qW+jK+xQU9a03GUnKHkkle+Q0pX/g6jXZ7r1/xAK5Do2kQ+X5xK9cipRgEKwIDAQABo1MwUTAdBgNVHQ4EFgQUe2Yz57fovxPFVMuLYp8YtPh+b20wHwYDVR0jBBgwFoAUe2Yz57fovxPFVMuLYp8YtPh+b20wDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOBgQBdQJdFYpWe05D6uGq4nHROscqiIgNv07VSkVtSZ6GTvaeAAgQMz9In9fh/LQw37bf2pwsusGAvL6m3EicI/XxrkaxagNRkcqMJeYi0lcx1Kw4tmbu7MGn8Az9K7Czi5SM0N1/3FowuVhVvMIPosfUDuC4CBMJ+tiQYk/NPOF2k+Q==" ], "kid": "1", - "x5t": "1" + "x5t": "1", + "e": "AQAB", + "n": "3ZWrUY0Y6IKN1qI4BhxR2C7oHVFgGPYkd38uGq1jQNSqEvJFcN93CYm16_G78FAFKWqwsJb3Wx-nbxDn6LtP4AhULB1H0K0g7_jLklDAHvI8yhOKlvoyvsUFPWtNxlJyh5JJXvkNKV_4Oo12e69f8QCuQ6NpEPl-cSvXIqUYBCs" } ] } diff --git a/test/unit/editor/public-key-download.js b/test/unit/editor/public-key-download.js index 8b9a453d..8ee23556 100644 --- a/test/unit/editor/public-key-download.js +++ b/test/unit/editor/public-key-download.js @@ -4,7 +4,7 @@ import _ from 'lodash'; import sinon from 'sinon'; import sinonChai from 'sinon-chai'; -import publicKeyDownloadInjector from +import publicKeyDownloadInjector from 'inject-loader!../../../src/editor/public-key-download.js'; chai.use(chaiAsPromised); @@ -26,11 +26,16 @@ describe('Public key downloader', function() { const jwks = { keys: [{ - kid: 1, - x5c: ['test-x5c-key'] + kty: 'RSA', + kid: '1', + e: 'AQAB', + n: '1GPz-Er5h7PCk4v3pSlnaLYNYrp4sVc6Tx7FVz9d8m4zIS2qzcTM_6dRbMgZ4hBdD35NpYzU4z-d8lN27-J_jOzHnCiMdkY-w52dCofAkICh6ftkFlG9bFQyH8Jz5UtpVkZyy1dxCRz_sbRAzUdjUYsGvrKXg-3UYCL5SBCnt0ycrvr3iKX9k8IlMrFRB8lBJ6eQVzkzGsuivPaThXjVZ_OpY7W-XsDjut7cFgPKIc843tW4CNaDJ6j3afm-RFOok__xLQH5uA7HXS_yqfEchvzXfYfMxJY2d-Eqw4xTurm3TT07RnwJuN9slDJUrTH9EKkJkjZ7dn7fZtGjGTpaDQ', + x5c: ['test-x5c-key'], }] }; + const keyAsPEM = `-----BEGIN PUBLIC KEY-----\r\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1GPz+Er5h7PCk4v3pSln\r\naLYNYrp4sVc6Tx7FVz9d8m4zIS2qzcTM/6dRbMgZ4hBdD35NpYzU4z+d8lN27+J/\r\njOzHnCiMdkY+w52dCofAkICh6ftkFlG9bFQyH8Jz5UtpVkZyy1dxCRz/sbRAzUdj\r\nUYsGvrKXg+3UYCL5SBCnt0ycrvr3iKX9k8IlMrFRB8lBJ6eQVzkzGsuivPaThXjV\r\nZ/OpY7W+XsDjut7cFgPKIc843tW4CNaDJ6j3afm+RFOok//xLQH5uA7HXS/yqfEc\r\nhvzXfYfMxJY2d+Eqw4xTurm3TT07RnwJuN9slDJUrTH9EKkJkjZ7dn7fZtGjGTpa\r\nDQIDAQAB\r\n-----END PUBLIC KEY-----\r\n`; + function httpGetMock(data) { return (url) => data ? Promise.resolve(data) : Promise.reject(); } @@ -38,14 +43,17 @@ describe('Public key downloader', function() { it('Finds keys in iss + .well-known URL', function(done) { const decodedToken = _.defaultsDeep({}, decodedBaseToken, { header: { - kid: 1 + kid: '1' }, payload: { iss: baseUrl } }); - const httpGetStub = sinon.stub().resolves(JSON.stringify(jwks)); + const httpGetStub = sinon.stub() + .onCall(0).resolves(JSON.stringify({ jwks_uri: '/.well-known/jwks.json' })) + .onCall(1).resolves(JSON.stringify(jwks)); + const downloadPublicKeyIfPossible = publicKeyDownloadInjector({ '../utils.js': { httpGet: httpGetStub @@ -53,17 +61,19 @@ describe('Public key downloader', function() { }).downloadPublicKeyIfPossible; downloadPublicKeyIfPossible(decodedToken) - .should.eventually.include(jwks.keys[0].x5c[0]) + .should.eventually.include(keyAsPEM) .then(() => { + httpGetStub.should.have.been + .calledWith(baseUrl + '.well-known/openid-configuration'); httpGetStub.should.have.been .calledWith(baseUrl + '.well-known/jwks.json'); - }).should.notify(done); + }).should.notify(done); }); it('Finds keys in jwk header claim', function(done) { const decodedToken = _.defaultsDeep({}, decodedBaseToken, { header: { - kid: 1, + kid: '1', jwk: jwks.keys[0] } }); @@ -79,13 +89,13 @@ describe('Public key downloader', function() { .should.eventually.include(jwks.keys[0].x5c[0]) .then(() => { httpGetStub.should.have.callCount(0); - }).should.notify(done); + }).should.notify(done); }); it('Finds keys in jku header claim', function(done) { const decodedToken = _.defaultsDeep({}, decodedBaseToken, { header: { - kid: 1, + kid: '1', jku: baseUrl } }); @@ -101,7 +111,7 @@ describe('Public key downloader', function() { .should.eventually.include(jwks.keys[0].x5c[0]) .then(() => { httpGetStub.should.have.been.calledWith(baseUrl); - }).should.notify(done); + }).should.notify(done); }); it('Finds keys in x5u header claim', function(done) { @@ -122,7 +132,7 @@ describe('Public key downloader', function() { .should.eventually.include(jwks.keys[0].x5c[0]) .then(() => { httpGetStub.should.have.been.calledWith(baseUrl); - }).should.notify(done); + }).should.notify(done); }); it('Finds keys in x5c string header claim', function(done) { @@ -143,7 +153,7 @@ describe('Public key downloader', function() { .should.eventually.include(jwks.keys[0].x5c[0]) .then(() => { httpGetStub.should.have.callCount(0); - }).should.notify(done); + }).should.notify(done); }); it('Finds keys in x5c array header claim', function(done) { @@ -164,13 +174,13 @@ describe('Public key downloader', function() { .should.eventually.include(jwks.keys[0].x5c[0]) .then(() => { httpGetStub.should.have.callCount(0); - }).should.notify(done); + }).should.notify(done); }); it('Rejects the promise when HTTP request fails', function(done) { const decodedToken = _.defaultsDeep({}, decodedBaseToken, { header: { - kid: 1, + kid: '1', jku: baseUrl } }); @@ -186,14 +196,14 @@ describe('Public key downloader', function() { .should.be.rejected .then(() => { httpGetStub.should.have.been.calledWith(baseUrl); - }).should.notify(done); + }).should.notify(done); }); - describe('Rejects the promise when invalid data ' + + describe('Rejects the promise when invalid data ' + 'is in jku claim URL', function() { const decodedToken = _.defaultsDeep({}, decodedBaseToken, { header: { - kid: 1, + kid: '1', jku: baseUrl } }); @@ -216,9 +226,9 @@ describe('Public key downloader', function() { httpGetStub.should.have.been.calledWith(baseUrl); }).should.notify(done); }); - + it('when the keys object does not exist', function(done) { - httpGetStub = sinon.stub().resolves({ + httpGetStub = sinon.stub().resolves({ }); downloadPublicKeyIfPossible(decodedToken) @@ -227,7 +237,7 @@ describe('Public key downloader', function() { httpGetStub.should.have.been.calledWith(baseUrl); }).should.notify(done); }); - + it('when there is no kid', function(done) { httpGetStub = sinon.stub().resolves({ keys: [{ @@ -241,11 +251,11 @@ describe('Public key downloader', function() { httpGetStub.should.have.been.calledWith(baseUrl); }).should.notify(done); }); - + it('when there are no x5u or x5c claims', function(done) { httpGetStub = sinon.stub().resolves({ keys: [{ - kid: 1 + kid: '1' }] }); From e0501f10139c02abee9b81f95159a1766b6126f4 Mon Sep 17 00:00:00 2001 From: samuela Date: Sun, 17 Mar 2019 23:03:57 -0700 Subject: [PATCH 152/456] Keats/jsonwebtoken supports some more claims --- views/website/libraries/13-Rust.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/views/website/libraries/13-Rust.json b/views/website/libraries/13-Rust.json index 463ee618..ce124804 100644 --- a/views/website/libraries/13-Rust.json +++ b/views/website/libraries/13-Rust.json @@ -40,12 +40,12 @@ "support": { "sign": true, "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, "jti": false, "hs256": true, "hs384": true, From 2c0737edb2ffe921ff2d9c2794cf517843ad7568 Mon Sep 17 00:00:00 2001 From: Simo Sorce Date: Fri, 5 Apr 2019 17:05:01 -0400 Subject: [PATCH 153/456] Update jwcrypto signature algorithm support This adds also edDSA which is currently not contemplated (see RFC 8037) --- views/website/libraries/1-Python.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/1-Python.json b/views/website/libraries/1-Python.json index da1a1c2d..6ed53bd8 100644 --- a/views/website/libraries/1-Python.json +++ b/views/website/libraries/1-Python.json @@ -86,7 +86,11 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true, + "edDSA": true }, "authorUrl": "https://github.com/simo5", "authorName": "Simo Sorce", From dcd049f36ce87679735ca3d77c88e96415a44016 Mon Sep 17 00:00:00 2001 From: Simo Sorce Date: Fri, 5 Apr 2019 17:09:02 -0400 Subject: [PATCH 154/456] Add EdDSA --- views/website/libraries/template.pug | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/template.pug b/views/website/libraries/template.pug index 9c4fe215..e0e429d3 100644 --- a/views/website/libraries/template.pug +++ b/views/website/libraries/template.pug @@ -81,7 +81,10 @@ article(data-accordion, class=`accordion ${lang.uniqueClass}`) p i(class=lib.support.ps512 ? 'icon-budicon-500' : (lib.support.ps512 !== undefined ? 'icon-budicon-501' : 'icon-unknown')) | PS512 - + p + i(class=lib.support.edDSA ? 'icon-budicon-500' : (lib.support.edDSA !== undefined ? 'icon-budicon-501' : 'icon-unknown')) + | EdDSA + .author-info .maintainer if lib.authorUrl From 3bbdd236ff672b83e248976882c692089b8be1fc Mon Sep 17 00:00:00 2001 From: Kingcean Tuan Date: Tue, 9 Apr 2019 13:17:41 +0800 Subject: [PATCH 155/456] Added a dotNet library Trivial. https://github.com/nuscien/trivial/wiki/oauth#jwt --- views/website/libraries/0-.NET.json | 46 ++++++++++++++++++++++------- 1 file changed, 36 insertions(+), 10 deletions(-) diff --git a/views/website/libraries/0-.NET.json b/views/website/libraries/0-.NET.json index 6135c3bd..15a4bc26 100644 --- a/views/website/libraries/0-.NET.json +++ b/views/website/libraries/0-.NET.json @@ -31,12 +31,9 @@ }, "authorUrl": "https://www.microsoft.com/", "authorName": "Microsoft", - "gitHubRepoPath": - "AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet", - "repoUrl": - "https://github.com/MSOpenTech/azure-activedirectory-identitymodel-extensions-for-dotnet", - "installCommandHtml": - "Install-Package
System.IdentityModel.Tokens.Jwt" + "gitHubRepoPath": "AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet", + "repoUrl": "https://github.com/MSOpenTech/azure-activedirectory-identitymodel-extensions-for-dotnet", + "installCommandHtml": "Install-Package
System.IdentityModel.Tokens.Jwt" }, { "minimumVersion": null, @@ -67,8 +64,7 @@ "authorName": "DV", "gitHubRepoPath": "dvsekhvalnov/jose-jwt", "repoUrl": "https://github.com/dvsekhvalnov/jose-jwt", - "installCommandHtml": - "Install-Package
jose-jwt" + "installCommandHtml": "Install-Package
jose-jwt" }, { "minimumVersion": null, @@ -96,8 +92,38 @@ "authorName": "DV", "gitHubRepoPath": "dvsekhvalnov/jose-rt", "repoUrl": "https://github.com/dvsekhvalnov/jose-rt", - "installCommandHtml": - "Install-Package
jose-rt" + "installCommandHtml": "Install-Package
jose-rt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false + }, + "authorUrl": "https://github.com/nuscien/trivial/wiki/oauth", + "authorName": "Kingcean Tuan", + "gitHubRepoPath": "nuscien/trivial", + "repoUrl": "https://github.com/nuscien/trivial", + "installCommandHtml": "Install-Package
Trivial" } ] } From d64a1ab8a2f9dded6141794de22c1458385d243b Mon Sep 17 00:00:00 2001 From: Nathaniel Fischer Date: Fri, 12 Apr 2019 15:45:14 -0700 Subject: [PATCH 156/456] Update jose library install command --- views/website/libraries/15-Scala.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/views/website/libraries/15-Scala.json b/views/website/libraries/15-Scala.json index 92234e44..c1896461 100644 --- a/views/website/libraries/15-Scala.json +++ b/views/website/libraries/15-Scala.json @@ -141,7 +141,7 @@ "aud": true, "exp": true, "nbf": true, - "iat": false, + "iat": true, "jti": true, "hs256": true, "hs384": true, @@ -161,7 +161,7 @@ "gitHubRepoPath": "blackdoor/jose", "repoUrl": "https://github.com/blackdoor/jose", "installCommandHtml": - "dependsOn(RootProject(uri(\"git://github.com/blackdoor/jose.git#0.1.0\")))" + "sbt: libraryDependencies += "black.door" %% "jose" % "0.2.2"\nmill: ivy"black.door::jose:0.2.2"" } ] } From 8de6363696af28ece7af00714a61c8146cfbec49 Mon Sep 17 00:00:00 2001 From: Daniel DeGroff Date: Fri, 26 Apr 2019 10:50:22 -0600 Subject: [PATCH 157/456] Update fusionauth-jwt to 3.1.0 --- views/website/libraries/3-Java.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/3-Java.json b/views/website/libraries/3-Java.json index 20fd3fea..ce33a31f 100644 --- a/views/website/libraries/3-Java.json +++ b/views/website/libraries/3-Java.json @@ -157,7 +157,7 @@ "authorName": "FusionAuth", "gitHubRepoPath": "fusionauth/fusionauth-jwt", "repoUrl": "https://github.com/fusionauth/fusionauth-jwt", - "installCommandHtml": "maven: io.fusionauth / fusionauth-jwt / 3.0.0" + "installCommandHtml": "maven: io.fusionauth / fusionauth-jwt / 3.1.0" }, { "minimumVersion": null, From 1f44f3bd4ac993e227bcccbf45f41847b99827ef Mon Sep 17 00:00:00 2001 From: "thomas@vinylfetish.net" Date: Tue, 7 May 2019 16:35:32 -0500 Subject: [PATCH 158/456] added Jwt.Net --- views/website/libraries/0-.NET.json | 31 +++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/views/website/libraries/0-.NET.json b/views/website/libraries/0-.NET.json index 15a4bc26..2e841745 100644 --- a/views/website/libraries/0-.NET.json +++ b/views/website/libraries/0-.NET.json @@ -124,6 +124,37 @@ "gitHubRepoPath": "nuscien/trivial", "repoUrl": "https://github.com/nuscien/trivial", "installCommandHtml": "Install-Package
Trivial" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false + }, + "authorUrl": "https://github.com/jwt-dotnet/jwt", + "authorName": "Alexander Batishchev, John Sheehan, Michael Lehenbauer", + "gitHubRepoPath": "jwt-dotnet/jwt", + "repoUrl": "https://github.com/jwt-dotnet/jwt", + "installCommandHtml": "Install-Package
JWT" } ] } From d5d5638b1f487f48c318253a5f566a81590230d7 Mon Sep 17 00:00:00 2001 From: Hsiaoming Yang Date: Sun, 12 May 2019 22:00:37 +0900 Subject: [PATCH 159/456] Authlib supports PS256, PS384, and PS512 --- views/website/libraries/1-Python.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/1-Python.json b/views/website/libraries/1-Python.json index 6ed53bd8..8eb06543 100644 --- a/views/website/libraries/1-Python.json +++ b/views/website/libraries/1-Python.json @@ -118,7 +118,10 @@ "rs512": true, "es256": true, "es384": true, - "es512": true + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/lepture", "authorName": "Hsiaoming Yang", From 7a706f4dc7f08911a0022de4363a4414d7598d82 Mon Sep 17 00:00:00 2001 From: andy Date: Tue, 14 May 2019 16:15:01 +0100 Subject: [PATCH 160/456] IBM-Swift/Swift-JWT supports RSA-PSS from 3.5.0 --- views/website/libraries/19-Swift.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/views/website/libraries/19-Swift.json b/views/website/libraries/19-Swift.json index a4b41fd4..c2373cef 100644 --- a/views/website/libraries/19-Swift.json +++ b/views/website/libraries/19-Swift.json @@ -119,16 +119,16 @@ "es256": true, "es384": true, "es512": true, - "ps256": false, - "ps384": false, - "ps512": false + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/IBM-Swift", "authorName": "IBM Swift", "gitHubRepoPath": "IBM-Swift/Swift-JWT", "repoUrl": "https://github.com/IBM-Swift/Swift-JWT", "installCommandHtml": - ".package(url:\"https://github.com/IBM-Swift/Swift-JWT/", from: \"1.0.0\")" + ".package(url:\"https://github.com/IBM-Swift/Swift-JWT/", from: \"3.5.0\")" } ] } From 49386e4fe9ac18fb103f4660935da0ba170f353d Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Wed, 29 May 2019 09:56:41 -0400 Subject: [PATCH 161/456] cisco/cjose: Not a Go package, I'm not sure why it mentioned `go get` --- views/website/libraries/20-C.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/20-C.json b/views/website/libraries/20-C.json index 0f0acb72..b8e85af9 100644 --- a/views/website/libraries/20-C.json +++ b/views/website/libraries/20-C.json @@ -64,7 +64,7 @@ "authorName": "linuxwolf", "gitHubRepoPath": "cisco/cjose", "repoUrl": "https://github.com/cisco/cjose", - "installCommandHtml": "go get github.com/cisco/cjose" + "installCommandHtml": "git clone https://github.com/cisco/cjose.git && cd cjose && ./configure && make" } ] } From cd162ba9105618da470fda6ec54d382bcaba3d4b Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Wed, 29 May 2019 10:11:29 -0400 Subject: [PATCH 162/456] 9-Go.json: Normalize installCommandHtml Always use `go get NAME`; don't sometimes include `-u` and sometimes not. Have NAME be a hyperlink to the godocs. Exception: Because of the trailing `/v3` for gbrlsnchs/jwt, it MUST be installed using Go modules, so I prefixed it with `GO111MODULE=on`. The `/v3` is not present in the href because godoc.org does not yet suppot modules. Unfortunately, this means that the linked docs might disagree with the version they'd get from installing it. This can't be helped. --- views/website/libraries/9-Go.json | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index 9bccf3de..da55886d 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -33,7 +33,7 @@ "authorName": "dgrijalva", "gitHubRepoPath": "dgrijalva/jwt-go", "repoUrl": "https://github.com/dgrijalva/jwt-go", - "installCommandHtml": "go get github.com/dgrijalva/jwt-go" + "installCommandHtml": "go get github.com/dgrijalva/jwt-go" }, { "minimumVersion": null, @@ -64,7 +64,7 @@ "authorName": "DV", "gitHubRepoPath": "dvsekhvalnov/jose2go", "repoUrl": "https://github.com/dvsekhvalnov/jose2go", - "installCommandHtml": "go get github.com/dvsekhvalnov/jose2go" + "installCommandHtml": "go get github.com/dvsekhvalnov/jose2go" }, { "minimumVersion": null, @@ -95,8 +95,7 @@ "authorName": "SermoDigital", "gitHubRepoPath": "SermoDigital/jose", "repoUrl": "https://github.com/SermoDigital/jose", - "installCommandHtml": - "go get github.com/SermoDigital/jose" + "installCommandHtml": "go get github.com/SermoDigital/jose" }, { "minimumVersion": null, @@ -127,7 +126,7 @@ "authorName": "robbert229", "gitHubRepoPath": "robbert229/jwt", "repoUrl": "https://github.com/robbert229/jwt", - "installCommandHtml": "go get github.com/robbert229/jwt" + "installCommandHtml": "go get github.com/robbert229/jwt" }, { "minimumVersion": null, @@ -158,7 +157,7 @@ "authorName": "DV", "gitHubRepoPath": "square/go-jose", "repoUrl": "https://github.com/square/go-jose", - "installCommandHtml": "go get github.com/square/go-jose" + "installCommandHtml": "go get github.com/square/go-jose" }, { "minimumVersion": null, @@ -189,7 +188,7 @@ "authorName": "lestrrat", "gitHubRepoPath": "lestrrat/go-jwx", "repoUrl": "https://github.com/lestrrat/go-jwx", - "installCommandHtml": "go get github.com/lestrrat/go-jwx" + "installCommandHtml": "go get github.com/lestrrat/go-jwx" }, { "minimumVersion": null, @@ -217,7 +216,7 @@ "authorName": "adam-hanna", "gitHubRepoPath": "adam-hanna/jwt-auth", "repoUrl": "https://github.com/adam-hanna/jwt-auth", - "installCommandHtml": "go get github.com/adam-hanna/jwt-auth" + "installCommandHtml": "go get github.com/adam-hanna/jwt-auth" }, { "minimumVersion": null, @@ -248,7 +247,7 @@ "authorName": "nickvellios", "gitHubRepoPath": "nickvellios/gojwt", "repoUrl": "https://github.com/nickvellios/gojwt", - "installCommandHtml": "go get github.com/nickvellios/gojwt" + "installCommandHtml": "go get github.com/nickvellios/gojwt" }, { "minimumVersion": null, @@ -279,7 +278,7 @@ "authorName": "Gabriel Sanches", "gitHubRepoPath": "gbrlsnchs/jwt", "repoUrl": "https://github.com/gbrlsnchs/jwt", - "installCommandHtml": "go get -u github.com/gbrlsnchs/jwt/v3" + "installCommandHtml": "GO111MODULE=on go get github.com/gbrlsnchs/jwt/v3" }, { "minimumVersion": null, @@ -310,7 +309,7 @@ "authorName": "Pascal de Kloe", "gitHubRepoPath": "pascaldekloe/jwt", "repoUrl": "https://github.com/pascaldekloe/jwt", - "installCommandHtml": "go get github.com/pascaldekloe/jwt" + "installCommandHtml": "go get github.com/pascaldekloe/jwt" }, { "minimumVersion": null, @@ -341,7 +340,7 @@ "authorName": "Seth Moeckel", "gitHubRepoPath": null, "repoUrl": "https://gitlab.com/rucuriousyet/jwt", - "installCommandHtml": "go get gitlab.com/rucuriousyet/jwt" + "installCommandHtml": "go get gitlab.com/rucuriousyet/jwt" } ] } From db6b8f856f0e03241485c8ac8a2e64aa7380621c Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Wed, 29 May 2019 10:16:26 -0400 Subject: [PATCH 163/456] lestrrat/go-jwx has moved to lestrrat-go/jwx --- views/website/libraries/9-Go.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index da55886d..d25ca855 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -186,9 +186,9 @@ }, "authorUrl": "https://github.com/lestrrat", "authorName": "lestrrat", - "gitHubRepoPath": "lestrrat/go-jwx", - "repoUrl": "https://github.com/lestrrat/go-jwx", - "installCommandHtml": "go get github.com/lestrrat/go-jwx" + "gitHubRepoPath": "lestrrat-go/jwx", + "repoUrl": "https://github.com/lestrrat-go/jwx", + "installCommandHtml": "go get github.com/lestrrat-go/jwx" }, { "minimumVersion": null, From 58a34e41c029b9a1740957eea4727c1867982472 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Wed, 5 Jun 2019 12:01:23 +0200 Subject: [PATCH 164/456] fix: ignore node-jose unsupported key types and EC curves during jwks_uri key fetch --- src/editor/public-key-download.js | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/editor/public-key-download.js b/src/editor/public-key-download.js index 9cfee3df..07b9209b 100644 --- a/src/editor/public-key-download.js +++ b/src/editor/public-key-download.js @@ -52,6 +52,19 @@ function getKeyFromJwkKeySetUrl(kid, url) { }); } +function supportedJwk({ kty, crv }) { + switch (kty) { + case 'RSA': + return true; + case 'EC': + return ['P-256', 'P-384', 'P-521'].includes(crv) + // node-jose does not support e.g. OKP keys or non-registered curves such as P-256K + // we also don't populate the HMAC secret + default: + return false; + } +} + export function downloadPublicKeyIfPossible(decodedToken) { return new Promise((resolve, reject) => { const header = decodedToken.header; @@ -80,9 +93,9 @@ export function downloadPublicKeyIfPossible(decodedToken) { return httpGet(data.jwks_uri) }).then(data => { - data = JSON.parse(data); + const { keys } = JSON.parse(data); - return jose.JWK.asKeyStore(data); + return jose.JWK.asKeyStore({ keys: keys.filter(supportedJwk) }); }).then(jwks => { const keys = jwks.all({ alg: header.alg, kid: header.kid, use: 'sig' }) From 8b84d6fa46974bfc000964de9ea00c92ea22879a Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Wed, 5 Jun 2019 13:07:57 +0200 Subject: [PATCH 165/456] test: fix CI and test suite for macOS users resolves #401 --- package-lock.json | 12052 +++++++++++++++++++----------------- package.json | 66 +- test/functional/editor.js | 204 +- test/functional/jwks.json | 4 +- test/functional/utils.js | 82 +- 5 files changed, 6417 insertions(+), 5991 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4b0c7aa6..4a9ed317 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5,630 +5,942 @@ "requires": true, "dependencies": { "@babel/code-frame": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0-beta.40.tgz", - "integrity": "sha512-eVXQSbu/RimU6OKcK2/gDJVTFcxXJI4sHbIqw2mhwMZeQ2as/8AhS9DGkEDoHMBBNJZ5B0US63lF56x+KDcxiA==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", + "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", "dev": true, "requires": { - "@babel/highlight": "7.0.0-beta.40" + "@babel/highlight": "^7.0.0" } }, "@babel/core": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.0.0-beta.40.tgz", - "integrity": "sha512-jJMjn/EMg89xDGv7uq4BoFg+fHEchSeqNc9YUMnGuAi/FWKBkSsDbhh2y5euw4qaGOFD2jw1le0rvCu5gPUc6Q==", - "dev": true, - "requires": { - "@babel/code-frame": "7.0.0-beta.40", - "@babel/generator": "7.0.0-beta.40", - "@babel/helpers": "7.0.0-beta.40", - "@babel/template": "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", + "version": "7.4.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.4.5.tgz", + "integrity": "sha512-OvjIh6aqXtlsA8ujtGKfC7LYWksYSX8yQcM8Ay3LuvVeQ63lcOKgoZWVqcpFwkd29aYU9rVx7jxhfhiEDV9MZA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/generator": "^7.4.4", + "@babel/helpers": "^7.4.4", + "@babel/parser": "^7.4.5", + "@babel/template": "^7.4.4", + "@babel/traverse": "^7.4.5", + "@babel/types": "^7.4.4", "convert-source-map": "^1.1.0", - "debug": "^3.0.1", - "json5": "^0.5.0", - "lodash": "^4.2.0", - "micromatch": "^2.3.11", + "debug": "^4.1.0", + "json5": "^2.1.0", + "lodash": "^4.17.11", "resolve": "^1.3.2", + "semver": "^5.4.1", "source-map": "^0.5.0" }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" + } + }, + "json5": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.0.tgz", + "integrity": "sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ==", + "dev": true, + "requires": { + "minimist": "^1.2.0" } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true } } }, "@babel/generator": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.0.0-beta.40.tgz", - "integrity": "sha512-c91BQcXyTq/5aFV4afgOionxZS1dxWt8OghEx5Q52SKssdGRFSiMKnk9tGkev1pYULPJBqjSDZU2Pcuc58ffZw==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.4.4.tgz", + "integrity": "sha512-53UOLK6TVNqKxf7RUh8NE851EHRxOOeVXKbK2bivdb+iziMyk03Sr4eaE9OELCbyZAAafAKPDwF2TPUES5QbxQ==", "dev": true, "requires": { - "@babel/types": "7.0.0-beta.40", + "@babel/types": "^7.4.4", "jsesc": "^2.5.1", - "lodash": "^4.2.0", + "lodash": "^4.17.11", "source-map": "^0.5.0", "trim-right": "^1.0.1" } }, "@babel/helper-annotate-as-pure": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0-beta.40.tgz", - "integrity": "sha512-bJd92d70QTlcqCO9WiE8C94r7NwVzJx1V6Yz7rYi4IQ53P0jbh9jjKL2zl8YoU2S8M/KX1jpu+yIgXbx+LOruQ==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz", + "integrity": "sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q==", "dev": true, "requires": { - "@babel/types": "7.0.0-beta.40" + "@babel/types": "^7.0.0" } }, "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.0.0-beta.40.tgz", - "integrity": "sha512-rMfjqkQrfHsA3ppMc2MsICoMqXH1b0BD77fTr4Kf+aUzEt5GSx5ZP5aNYlCqaPzhafg3znEEg/LVeq2EyGY8JQ==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz", + "integrity": "sha512-qNSR4jrmJ8M1VMM9tibvyRAHXQs2PmaksQF7c1CGJNipfe3D8p+wgNwgso/P2A2r2mdgBWAXljNWR0QRZAMW8w==", "dev": true, "requires": { - "@babel/helper-explode-assignable-expression": "7.0.0-beta.40", - "@babel/types": "7.0.0-beta.40" + "@babel/helper-explode-assignable-expression": "^7.1.0", + "@babel/types": "^7.0.0" } }, "@babel/helper-call-delegate": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.0.0-beta.40.tgz", - "integrity": "sha512-kfLlTpTayyCwj3/Rq4zDaK85GVPzRIR433QLhuNb0qjJfMQgLit2UEfBHUPPMRvKlb0FelrlXGTxXfsHLmfgzw==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.4.4.tgz", + "integrity": "sha512-l79boDFJ8S1c5hvQvG+rc+wHw6IuH7YldmRKsYtpbawsxURu/paVy57FZMomGK22/JckepaikOkY0MoAmdyOlQ==", "dev": true, "requires": { - "@babel/helper-hoist-variables": "7.0.0-beta.40", - "@babel/traverse": "7.0.0-beta.40", - "@babel/types": "7.0.0-beta.40" + "@babel/helper-hoist-variables": "^7.4.4", + "@babel/traverse": "^7.4.4", + "@babel/types": "^7.4.4" } }, "@babel/helper-define-map": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.0.0-beta.40.tgz", - "integrity": "sha512-hDg3sFSAxYQ/CSXzIBzGeNRD4yp89MkC3wkwvGBH80LXobL6csEdQpzCPhwpL0K8RNB07awRnck1OtPqjeCpgA==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.4.4.tgz", + "integrity": "sha512-IX3Ln8gLhZpSuqHJSnTNBWGDE9kdkTEWl21A/K7PQ00tseBwbqCHTvNLHSBd9M0R5rER4h5Rsvj9vw0R5SieBg==", "dev": true, "requires": { - "@babel/helper-function-name": "7.0.0-beta.40", - "@babel/types": "7.0.0-beta.40", - "lodash": "^4.2.0" + "@babel/helper-function-name": "^7.1.0", + "@babel/types": "^7.4.4", + "lodash": "^4.17.11" } }, "@babel/helper-explode-assignable-expression": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.0.0-beta.40.tgz", - "integrity": "sha512-EUbu+uVNtHVp9emICjYO5wYodqWnSTx/s4Hfk++7IdnPTQi7UA9F/tPXf1GS8BLazlWc9tDwQ2aHFQLheHEXHw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.1.0.tgz", + "integrity": "sha512-NRQpfHrJ1msCHtKjbzs9YcMmJZOg6mQMmGRB+hbamEdG5PNpaSm95275VD92DvJKuyl0s2sFiDmMZ+EnnvufqA==", "dev": true, "requires": { - "@babel/traverse": "7.0.0-beta.40", - "@babel/types": "7.0.0-beta.40" + "@babel/traverse": "^7.1.0", + "@babel/types": "^7.0.0" } }, "@babel/helper-function-name": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.0.0-beta.40.tgz", - "integrity": "sha512-cK9BVLtOfisSISTTHXKGvBc2OBh65tjEk4PgXhsSnnH0i8RP2v+5RCxoSlh2y/i+l2fxQqKqv++Qo5RMiwmRCA==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", + "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", "dev": true, "requires": { - "@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", + "@babel/template": "^7.1.0", + "@babel/types": "^7.0.0" } }, "@babel/helper-get-function-arity": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0-beta.40.tgz", - "integrity": "sha512-MwquaPznI4cUoZEgHC/XGkddOXtqKqD4DvZDOyJK2LR9Qi6TbMbAhc6IaFoRX7CRTFCmtGeu8gdXW2dBotBBTA==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", + "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", "dev": true, "requires": { - "@babel/types": "7.0.0-beta.40" + "@babel/types": "^7.0.0" } }, "@babel/helper-hoist-variables": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.0.0-beta.40.tgz", - "integrity": "sha512-ghnJxUUEmqK8mssF7Y7R5jNzF5xDu4hmWQ1aZghZtLNJSymmj3HrXCLl5m1dBYpq9gGk7TlZK8stIvIJsCGmTQ==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.4.4.tgz", + "integrity": "sha512-VYk2/H/BnYbZDDg39hr3t2kKyifAm1W6zHRfhx8jGjIHpQEBv9dry7oQ2f3+J703TLu69nYdxsovl0XYfcnK4w==", + "dev": true, + "requires": { + "@babel/types": "^7.4.4" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.0.0.tgz", + "integrity": "sha512-avo+lm/QmZlv27Zsi0xEor2fKcqWG56D5ae9dzklpIaY7cQMK5N8VSpaNVPPagiqmy7LrEjK1IWdGMOqPu5csg==", "dev": true, "requires": { - "@babel/types": "7.0.0-beta.40" + "@babel/types": "^7.0.0" } }, "@babel/helper-module-imports": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.0.0-beta.40.tgz", - "integrity": "sha512-QFOskAKWbqJSBbGIl/Y1igJI4mW0A+wD5NFqsgDJj85KSvj/dHM4wNGIeqCi85nN9aMa4DgTBBrzUK4zSMsN2Q==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz", + "integrity": "sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A==", "dev": true, "requires": { - "@babel/types": "7.0.0-beta.40", - "lodash": "^4.2.0" + "@babel/types": "^7.0.0" } }, "@babel/helper-module-transforms": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.0.0-beta.40.tgz", - "integrity": "sha512-1H7cBk7kUWJpTepPH77TIRGwKILRGpu1yXmz1OjOruR6y2z0qfbp7ZzzZ3/xg6NlLDENLArEyO2+J0mO+VyQsg==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.4.4.tgz", + "integrity": "sha512-3Z1yp8TVQf+B4ynN7WoHPKS8EkdTbgAEy0nU0rs/1Kw4pDgmvYH3rz3aI11KgxKCba2cn7N+tqzV1mY2HMN96w==", "dev": true, "requires": { - "@babel/helper-module-imports": "7.0.0-beta.40", - "@babel/helper-simple-access": "7.0.0-beta.40", - "@babel/template": "7.0.0-beta.40", - "@babel/types": "7.0.0-beta.40", - "lodash": "^4.2.0" + "@babel/helper-module-imports": "^7.0.0", + "@babel/helper-simple-access": "^7.1.0", + "@babel/helper-split-export-declaration": "^7.4.4", + "@babel/template": "^7.4.4", + "@babel/types": "^7.4.4", + "lodash": "^4.17.11" } }, "@babel/helper-optimise-call-expression": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0-beta.40.tgz", - "integrity": "sha512-2f4ZKEkvdnKiTUA/Nhju+oEoRcyHcpf6lFuQI5cxbo1Toxqa8E9HBO5tiOWwlIwuak7RZPYSnxnrJQy/0d4YUw==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz", + "integrity": "sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g==", "dev": true, "requires": { - "@babel/types": "7.0.0-beta.40" + "@babel/types": "^7.0.0" } }, + "@babel/helper-plugin-utils": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz", + "integrity": "sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA==", + "dev": true + }, "@babel/helper-regex": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.0.0-beta.40.tgz", - "integrity": "sha512-75zi8hZSdWLT7upmEyAemfN0hJ7522svItPGbIj4Pi2T/C5vbgNFXLy8o/iOCX4FzB+yVKhz0zWC3SzN9hyigA==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.4.4.tgz", + "integrity": "sha512-Y5nuB/kESmR3tKjU8Nkn1wMGEx1tjJX076HBMeL3XLQCu6vA/YRzuTW0bbb+qRnXvQGn+d6Rx953yffl8vEy7Q==", "dev": true, "requires": { - "lodash": "^4.2.0" + "lodash": "^4.17.11" } }, "@babel/helper-remap-async-to-generator": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.0.0-beta.40.tgz", - "integrity": "sha512-RISz7EebAqaf4ofdG9LdVNfeqhK+JlFYJxvqCGMcS+Pyz84dA41MxgtjrRQdT85be1lZLI2OArvD7zDrj1psag==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.1.0.tgz", + "integrity": "sha512-3fOK0L+Fdlg8S5al8u/hWE6vhufGSn0bN09xm2LXMy//REAF8kDCrYoOBKYmA8m5Nom+sV9LyLCwrFynA8/slg==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "7.0.0-beta.40", - "@babel/helper-wrap-function": "7.0.0-beta.40", - "@babel/template": "7.0.0-beta.40", - "@babel/traverse": "7.0.0-beta.40", - "@babel/types": "7.0.0-beta.40" + "@babel/helper-annotate-as-pure": "^7.0.0", + "@babel/helper-wrap-function": "^7.1.0", + "@babel/template": "^7.1.0", + "@babel/traverse": "^7.1.0", + "@babel/types": "^7.0.0" } }, "@babel/helper-replace-supers": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.0.0-beta.40.tgz", - "integrity": "sha512-Nu/5wpUV3rG35RzOq/upZlm61cP0lSAtmNkJLFfO5k2zOGCiHRczD1Y/xKqYOMl5f2iZmYw9fANi1jE4odMIIQ==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.4.4.tgz", + "integrity": "sha512-04xGEnd+s01nY1l15EuMS1rfKktNF+1CkKmHoErDppjAAZL+IUBZpzT748x262HF7fibaQPhbvWUl5HeSt1EXg==", "dev": true, "requires": { - "@babel/helper-optimise-call-expression": "7.0.0-beta.40", - "@babel/template": "7.0.0-beta.40", - "@babel/traverse": "7.0.0-beta.40", - "@babel/types": "7.0.0-beta.40" + "@babel/helper-member-expression-to-functions": "^7.0.0", + "@babel/helper-optimise-call-expression": "^7.0.0", + "@babel/traverse": "^7.4.4", + "@babel/types": "^7.4.4" } }, "@babel/helper-simple-access": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.0.0-beta.40.tgz", - "integrity": "sha512-hEKOIXUZFOiyqUPiGydGc+Jr0s8mVCFrD1OtAw2BDkXf1BaR+PxVEVcBAWcJVLOjqrr7oVZL9SENjR4B/Y+yEw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz", + "integrity": "sha512-Vk+78hNjRbsiu49zAPALxTb+JUQCz1aolpd8osOF16BGnLtseD21nbHgLPGUwrXEurZgiCOUmvs3ExTu4F5x6w==", + "dev": true, + "requires": { + "@babel/template": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz", + "integrity": "sha512-Ro/XkzLf3JFITkW6b+hNxzZ1n5OQ80NvIUdmHspih1XAhtN3vPTuUFT4eQnela+2MaZ5ulH+iyP513KJrxbN7Q==", "dev": true, "requires": { - "@babel/template": "7.0.0-beta.40", - "@babel/types": "7.0.0-beta.40", - "lodash": "^4.2.0" + "@babel/types": "^7.4.4" } }, "@babel/helper-wrap-function": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.0.0-beta.40.tgz", - "integrity": "sha512-VBXE/uGQuZC9IaYufa3eCoT5ZqcCPv21Uhs/vo4ZqNRDX5QemYEkgDj5SmV2p73bhC66jDwUHaQHKQIiW7ExxA==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.2.0.tgz", + "integrity": "sha512-o9fP1BZLLSrYlxYEYyl2aS+Flun5gtjTIG8iln+XuEzQTs0PLagAGSXUcqruJwD5fM48jzIEggCKpIfWTcR7pQ==", "dev": true, "requires": { - "@babel/helper-function-name": "7.0.0-beta.40", - "@babel/template": "7.0.0-beta.40", - "@babel/traverse": "7.0.0-beta.40", - "@babel/types": "7.0.0-beta.40" + "@babel/helper-function-name": "^7.1.0", + "@babel/template": "^7.1.0", + "@babel/traverse": "^7.1.0", + "@babel/types": "^7.2.0" } }, "@babel/helpers": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.0.0-beta.40.tgz", - "integrity": "sha512-NK/mM/I16inThgXmKPxoqrg+N6OCLt+e9Zsmy8TJ93/zMx4Eddd679I231YwDP2J1Z12UgkfWCLbbvauU5TLlQ==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.4.4.tgz", + "integrity": "sha512-igczbR/0SeuPR8RFfC7tGrbdTbFL3QTvH6D+Z6zNxnTe//GyqmtHmDkzrqDmyZ3eSwPqB/LhyKoU5DXsp+Vp2A==", "dev": true, "requires": { - "@babel/template": "7.0.0-beta.40", - "@babel/traverse": "7.0.0-beta.40", - "@babel/types": "7.0.0-beta.40" + "@babel/template": "^7.4.4", + "@babel/traverse": "^7.4.4", + "@babel/types": "^7.4.4" } }, "@babel/highlight": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0-beta.40.tgz", - "integrity": "sha512-mOhhTrzieV6VO7odgzFGFapiwRK0ei8RZRhfzHhb6cpX3QM8XXuCLXWjN8qBB7JReDdUR80V3LFfFrGUYevhNg==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", + "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", "dev": true, "requires": { "chalk": "^2.0.0", "esutils": "^2.0.2", - "js-tokens": "^3.0.0" + "js-tokens": "^4.0.0" + }, + "dependencies": { + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + } } }, + "@babel/parser": { + "version": "7.4.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.5.tgz", + "integrity": "sha512-9mUqkL1FF5T7f0WDFfAoDdiMVPWsdD1gZYzSnaXsxUCUqzuch/8of9G3VUSNiZmMBoRxT3neyVsqeiL/ZPcjew==", + "dev": true + }, "@babel/plugin-proposal-async-generator-functions": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.0.0-beta.40.tgz", - "integrity": "sha512-DU9JstbqQRAPhbW3Pk0yrEJA8GIiIDdylrnIuPI9x01jAwijxJfRwi6FbUAZUbS+3mzAAM5ALXUJkF1i1R5qbQ==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.2.0.tgz", + "integrity": "sha512-+Dfo/SCQqrwx48ptLVGLdE39YtWRuKc/Y9I5Fy0P1DDBB9lsAHpjcEJQt+4IifuSOSTLBKJObJqMvaO1pIE8LQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-remap-async-to-generator": "^7.1.0", + "@babel/plugin-syntax-async-generators": "^7.2.0" + } + }, + "@babel/plugin-proposal-json-strings": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.2.0.tgz", + "integrity": "sha512-MAFV1CA/YVmYwZG0fBQyXhmj0BHCB5egZHCKWIFVv/XCxAeVGIHfos3SwDck4LvCllENIAg7xMKOG5kH0dzyUg==", "dev": true, "requires": { - "@babel/helper-remap-async-to-generator": "7.0.0-beta.40", - "@babel/plugin-syntax-async-generators": "7.0.0-beta.40" + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-syntax-json-strings": "^7.2.0" } }, "@babel/plugin-proposal-object-rest-spread": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.0.0-beta.40.tgz", - "integrity": "sha512-nsQEWEvBgDcxYPBhmeIHqIXVVkPLQJBTD/bAdCMFhVe0vQdOR/px5E+rMsbP+9CywqV3AJ7PngYadnPgiuu4sg==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.4.4.tgz", + "integrity": "sha512-dMBG6cSPBbHeEBdFXeQ2QLc5gUpg4Vkaz8octD4aoW/ISO+jBOcsuxYL7bsb5WSu8RLP6boxrBIALEHgoHtO9g==", "dev": true, "requires": { - "@babel/plugin-syntax-object-rest-spread": "7.0.0-beta.40" + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-syntax-object-rest-spread": "^7.2.0" } }, "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.0.0-beta.40.tgz", - "integrity": "sha512-GKKY7LDS3Z2iAVsM0KP745LAML8jKUdFqD+rGLa6F4Q9pEqDh3pjbL8eqiWLv/g/phpuCdvjaj+4wmUHi/E5eg==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.2.0.tgz", + "integrity": "sha512-mgYj3jCcxug6KUcX4OBoOJz3CMrwRfQELPQ5560F70YQUBZB7uac9fqaWamKR1iWUzGiK2t0ygzjTScZnVz75g==", "dev": true, "requires": { - "@babel/plugin-syntax-optional-catch-binding": "7.0.0-beta.40" + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.2.0" } }, "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.0.0-beta.40.tgz", - "integrity": "sha512-BJlgIZcqodpkgNLOsKtkprA3zeXhg0O9Hru+IIaDVhcrZnkIIMVsdIG6gY5cKCAnpKFVN4kloQRTB61qYdKueA==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.4.4.tgz", + "integrity": "sha512-j1NwnOqMG9mFUOH58JTFsA/+ZYzQLUZ/drqWUqxCYLGeu2JFZL8YrNC9hBxKmWtAuOCHPcRpgv7fhap09Fb4kA==", "dev": true, "requires": { - "@babel/helper-regex": "7.0.0-beta.40", - "regexpu-core": "^4.1.3" + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-regex": "^7.4.4", + "regexpu-core": "^4.5.4" } }, "@babel/plugin-syntax-async-generators": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.0.0-beta.40.tgz", - "integrity": "sha512-UczObsgk1A4DaSMqTj59iETtmtuiXdBMs/1WBpy6LvLtf8AdjO/bZ2IbvrwKR5gEp8xJxBgzNq2sfK8RUsQBsQ==", - "dev": true + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz", + "integrity": "sha512-1ZrIRBv2t0GSlcwVoQ6VgSLpLgiN/FVQUzt9znxo7v2Ov4jJrs8RY8tv0wvDmFN3qIdMKWrmMMW6yZ0G19MfGg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-syntax-json-strings": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.2.0.tgz", + "integrity": "sha512-5UGYnMSLRE1dqqZwug+1LISpA403HzlSfsg6P9VXU6TBjcSHeNlw4DxDx7LgpF+iKZoOG/+uzqoRHTdcUpiZNg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } }, "@babel/plugin-syntax-object-rest-spread": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.0.0-beta.40.tgz", - "integrity": "sha512-LY96LEXC+qxuiOcoqrkrsyEUaD95gS7AQE7nZJ/lZBGG14h4cJhc+T0FYdJpVKqhqNuEqVHsJV9xfCYHI4Ksug==", - "dev": true + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz", + "integrity": "sha512-t0JKGgqk2We+9may3t0xDdmneaXmyxq0xieYcKHxIsrJO64n1OiMWNUtc5gQK1PA0NpdCRrtZp4z+IUaKugrSA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } }, "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.0.0-beta.40.tgz", - "integrity": "sha512-YP2Zqhi6r5mnp6LALz19pvF7szhEzBFybw4KqGFj6OwGmfF1nrvCG3h6cOTRhIKSwkfM7IlqGZm+GBhbYRYxGA==", - "dev": true + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz", + "integrity": "sha512-bDe4xKNhb0LI7IvZHiA13kff0KEfaGX/Hv4lMA9+7TEc63hMNvfKo6ZFpXhKuEp+II/q35Gc4NoMeDZyaUbj9w==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } }, "@babel/plugin-transform-arrow-functions": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.0.0-beta.40.tgz", - "integrity": "sha512-B6wh62BErLWS3XInOUHhLcqBSK1QGdBph8E2K82EEFgJdQvphy30QXb0vwLUr8YU1efYyZXTsRA0JZ12jcm30Q==", - "dev": true + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.2.0.tgz", + "integrity": "sha512-ER77Cax1+8/8jCB9fo4Ud161OZzWN5qawi4GusDuRLcDbDG+bIGYY20zb2dfAFdTRGzrfq2xZPvF0R64EHnimg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } }, "@babel/plugin-transform-async-to-generator": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.0.0-beta.40.tgz", - "integrity": "sha512-4yTmjiZQw0S6dpnJqj0os0hom2czOAFKPhAuPplDay2zyqzDjbNt3zHFadIRTU4ekTonMb6ghTbMO1vlKcLMiQ==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.4.4.tgz", + "integrity": "sha512-YiqW2Li8TXmzgbXw+STsSqPBPFnGviiaSp6CYOq55X8GQ2SGVLrXB6pNid8HkqkZAzOH6knbai3snhP7v0fNwA==", "dev": true, "requires": { - "@babel/helper-module-imports": "7.0.0-beta.40", - "@babel/helper-remap-async-to-generator": "7.0.0-beta.40" + "@babel/helper-module-imports": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-remap-async-to-generator": "^7.1.0" } }, "@babel/plugin-transform-block-scoped-functions": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.0.0-beta.40.tgz", - "integrity": "sha512-GC64FqQfGJ5Wt3i0zSMcwRxmnZwgrx8fVLCeONNNm3BlK7Ui5Usuc7WubygM3bDq47UiHfeKo8ih54pr/POsFw==", - "dev": true + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.2.0.tgz", + "integrity": "sha512-ntQPR6q1/NKuphly49+QiQiTN0O63uOwjdD6dhIjSWBI5xlrbUFh720TIpzBhpnrLfv2tNH/BXvLIab1+BAI0w==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } }, "@babel/plugin-transform-block-scoping": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.0.0-beta.40.tgz", - "integrity": "sha512-8QpOK9lXdzrq1QIrP3Hfx/BmGPaCKjBORd2QSjdghPNNRlQFZmO2l3kb0I6yC7w75U1M5q26KvUbAcPrE68E4w==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.4.4.tgz", + "integrity": "sha512-jkTUyWZcTrwxu5DD4rWz6rDB5Cjdmgz6z7M7RLXOJyCUkFBawssDGcGh8M/0FTSB87avyJI1HsTwUXp9nKA1PA==", "dev": true, "requires": { - "lodash": "^4.2.0" + "@babel/helper-plugin-utils": "^7.0.0", + "lodash": "^4.17.11" } }, "@babel/plugin-transform-classes": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.0.0-beta.40.tgz", - "integrity": "sha512-yjViyoOYJtt2vLDai8jluxl9quOtq/Xq4GTjT9uzy+mOfUTE77dcJySMGkWHE52Mu3n0TSI09ENBFYykpvXXDw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "7.0.0-beta.40", - "@babel/helper-define-map": "7.0.0-beta.40", - "@babel/helper-function-name": "7.0.0-beta.40", - "@babel/helper-optimise-call-expression": "7.0.0-beta.40", - "@babel/helper-replace-supers": "7.0.0-beta.40", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.4.4.tgz", + "integrity": "sha512-/e44eFLImEGIpL9qPxSRat13I5QNRgBLu2hOQJCF7VLy/otSM/sypV1+XaIw5+502RX/+6YaSAPmldk+nhHDPw==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.0.0", + "@babel/helper-define-map": "^7.4.4", + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-optimise-call-expression": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-replace-supers": "^7.4.4", + "@babel/helper-split-export-declaration": "^7.4.4", "globals": "^11.1.0" } }, "@babel/plugin-transform-computed-properties": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.0.0-beta.40.tgz", - "integrity": "sha512-1VBpE+6YN4bj72MtbQoIwXZxoI5VfPLutQ5uhOx/tIrjf1KbLKsFR0epPPGx4nZ13u++lUR8CjUFUHGJ6RJirA==", - "dev": true + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.2.0.tgz", + "integrity": "sha512-kP/drqTxY6Xt3NNpKiMomfgkNn4o7+vKxK2DDKcBG9sHj51vHqMBGy8wbDS/J4lMxnqs153/T3+DmCEAkC5cpA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } }, "@babel/plugin-transform-destructuring": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.0.0-beta.40.tgz", - "integrity": "sha512-/FJq+WUAw4R5kg+2XWkmk0rDJqVs76rNNSIPpxeE0SiJvp8tvou7y8u0D1IhoO29ZgC+53jbdL+MkVN7mrH/iQ==", - "dev": true + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.4.4.tgz", + "integrity": "sha512-/aOx+nW0w8eHiEHm+BTERB2oJn5D127iye/SUQl7NjHy0lf+j7h4MKMMSOwdazGq9OxgiNADncE+SRJkCxjZpQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } }, "@babel/plugin-transform-dotall-regex": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.0.0-beta.40.tgz", - "integrity": "sha512-5npi7X6QGNWWfXxVBMQl+fEAn0LceNNFT139yaGRkyWZtUXmueFLgXKsa9dY2DhuEis29KuZrwGcmGSQWnEmtg==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.4.4.tgz", + "integrity": "sha512-P05YEhRc2h53lZDjRPk/OektxCVevFzZs2Gfjd545Wde3k+yFDbXORgl2e0xpbq8mLcKJ7Idss4fAg0zORN/zg==", "dev": true, "requires": { - "@babel/helper-regex": "7.0.0-beta.40", - "regexpu-core": "^4.1.3" + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-regex": "^7.4.4", + "regexpu-core": "^4.5.4" } }, "@babel/plugin-transform-duplicate-keys": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.0.0-beta.40.tgz", - "integrity": "sha512-rxEyRbU/iEGR99oBMoer5QeGWLMhT3Kq4a8B03DFLCBpGLv3XirpSGC/Ys1YhUKAmEio4jIcVVI8dRBbcVeyDw==", - "dev": true + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.2.0.tgz", + "integrity": "sha512-q+yuxW4DsTjNceUiTzK0L+AfQ0zD9rWaTLiUqHA8p0gxx7lu1EylenfzjeIWNkPy6e/0VG/Wjw9uf9LueQwLOw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } }, "@babel/plugin-transform-exponentiation-operator": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.0.0-beta.40.tgz", - "integrity": "sha512-nh9qIA4P1wQczihazVOvTpkl2EBfoSMfkM6/21p8NBY4GxZJcEwT1O1nke/+RLludUekHqXHGH+9ekfEfLwKRQ==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.2.0.tgz", + "integrity": "sha512-umh4hR6N7mu4Elq9GG8TOu9M0bakvlsREEC+ialrQN6ABS4oDQ69qJv1VtR3uxlKMCQMCvzk7vr17RHKcjx68A==", "dev": true, "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "7.0.0-beta.40" + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.1.0", + "@babel/helper-plugin-utils": "^7.0.0" } }, "@babel/plugin-transform-for-of": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.0.0-beta.40.tgz", - "integrity": "sha512-ArDbLAGMzI++G5Ut8HIbLvnAxZNOC5tFzMXiud51JJTHRaeFB7AwX+duY9x/Hu/KypISXjels3BYVYCV/EH+ow==", - "dev": true + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.4.4.tgz", + "integrity": "sha512-9T/5Dlr14Z9TIEXLXkt8T1DU7F24cbhwhMNUziN3hB1AXoZcdzPcTiKGRn/6iOymDqtTKWnr/BtRKN9JwbKtdQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } }, "@babel/plugin-transform-function-name": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.0.0-beta.40.tgz", - "integrity": "sha512-wvpswFciLQ2eAnHAs6/NSWymPg88LhHH87BljjXDxNnyGBzckip/iEa051Dz6lDumVUUjXLukw3D2fv5NBitVA==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.4.4.tgz", + "integrity": "sha512-iU9pv7U+2jC9ANQkKeNF6DrPy4GBa4NWQtl6dHB4Pb3izX2JOEvDTFarlNsBj/63ZEzNNIAMs3Qw4fNCcSOXJA==", "dev": true, "requires": { - "@babel/helper-function-name": "7.0.0-beta.40" + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-plugin-utils": "^7.0.0" } }, "@babel/plugin-transform-literals": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.0.0-beta.40.tgz", - "integrity": "sha512-p7VlTod2r7srx0uKVrKqMJR1f6iyvDAnlLdTEDGrLHpP9pXXvIc/bP8xZTxVPn+IziSFh6FvOzHXXLMtnRKnow==", - "dev": true + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.2.0.tgz", + "integrity": "sha512-2ThDhm4lI4oV7fVQ6pNNK+sx+c/GM5/SaML0w/r4ZB7sAneD/piDJtwdKlNckXeyGK7wlwg2E2w33C/Hh+VFCg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-member-expression-literals": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.2.0.tgz", + "integrity": "sha512-HiU3zKkSU6scTidmnFJ0bMX8hz5ixC93b4MHMiYebmk2lUVNGOboPsqQvx5LzooihijUoLR/v7Nc1rbBtnc7FA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } }, "@babel/plugin-transform-modules-amd": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.0.0-beta.40.tgz", - "integrity": "sha512-o/XTve9C+M9203MVxGRBOXNx4f9DZGiPLbwPPeDobdtw3NKHUCymFNbh9xxMJy0MPMEe8JldxbVwGy2f8DY/3w==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.2.0.tgz", + "integrity": "sha512-mK2A8ucqz1qhrdqjS9VMIDfIvvT2thrEsIQzbaTdc5QFzhDjQv2CkJJ5f6BXIkgbmaoax3zBr2RyvV/8zeoUZw==", "dev": true, "requires": { - "@babel/helper-module-transforms": "7.0.0-beta.40" + "@babel/helper-module-transforms": "^7.1.0", + "@babel/helper-plugin-utils": "^7.0.0" } }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.0.0-beta.40.tgz", - "integrity": "sha512-1kRhaQP3K9kRiJhhLpP7J5NsMV+SiKWSsli6TUR6uxbuHHNAleRtlsZ76JgCRMaufBgPMLxq5pp7yibUhwTn8w==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.4.4.tgz", + "integrity": "sha512-4sfBOJt58sEo9a2BQXnZq+Q3ZTSAUXyK3E30o36BOGnJ+tvJ6YSxF0PG6kERvbeISgProodWuI9UVG3/FMY6iw==", "dev": true, "requires": { - "@babel/helper-module-transforms": "7.0.0-beta.40", - "@babel/helper-simple-access": "7.0.0-beta.40" + "@babel/helper-module-transforms": "^7.4.4", + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-simple-access": "^7.1.0" } }, "@babel/plugin-transform-modules-systemjs": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.0.0-beta.40.tgz", - "integrity": "sha512-q5IpFXNlzrK2ObpHkH5jzTCqRVzoNzmH8RoE8ZHQvLLiaIT346u8ynNv/BH1ltA49SPUPWyYpA+Z7OqCM4d3NA==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.4.4.tgz", + "integrity": "sha512-MSiModfILQc3/oqnG7NrP1jHaSPryO6tA2kOMmAQApz5dayPxWiHqmq4sWH2xF5LcQK56LlbKByCd8Aah/OIkQ==", "dev": true, "requires": { - "@babel/helper-hoist-variables": "7.0.0-beta.40" + "@babel/helper-hoist-variables": "^7.4.4", + "@babel/helper-plugin-utils": "^7.0.0" } }, "@babel/plugin-transform-modules-umd": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.0.0-beta.40.tgz", - "integrity": "sha512-LHKqJFwo7x/CeEwjLyUE99SlG/kbTl8LS1DQ26fWctVnW5JuPt3hwYrggnmo1L/g/dal7EP2IL56+UezDMpJUQ==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.2.0.tgz", + "integrity": "sha512-BV3bw6MyUH1iIsGhXlOK6sXhmSarZjtJ/vMiD9dNmpY8QXFFQTj+6v92pcfy1iqa8DeAfJFwoxcrS/TUZda6sw==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.1.0", + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.4.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.4.5.tgz", + "integrity": "sha512-z7+2IsWafTBbjNsOxU/Iv5CvTJlr5w4+HGu1HovKYTtgJ362f7kBcQglkfmlspKKZ3bgrbSGvLfNx++ZJgCWsg==", "dev": true, "requires": { - "@babel/helper-module-transforms": "7.0.0-beta.40" + "regexp-tree": "^0.1.6" } }, "@babel/plugin-transform-new-target": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.0.0-beta.40.tgz", - "integrity": "sha512-t4ivwZVGrVf1bhLgHcgaLhFH4loZhV5WmEKKNPEe7QnGikJBibrLmggOM1w5s6BMsHj03+j0rxUmcKLmGlC/fg==", - "dev": true + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.4.4.tgz", + "integrity": "sha512-r1z3T2DNGQwwe2vPGZMBNjioT2scgWzK9BCnDEh+46z8EEwXBq24uRzd65I7pjtugzPSj921aM15RpESgzsSuA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } }, "@babel/plugin-transform-object-super": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.0.0-beta.40.tgz", - "integrity": "sha512-a9kXy4amuvAz7eFuntXiyjg0eKXej1FH++xQg37ugh24zozD0cmfr3pvRbYOGlmbmOeZWJnlq+O6X8BSfLSycw==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.2.0.tgz", + "integrity": "sha512-VMyhPYZISFZAqAPVkiYb7dUe2AsVi2/wCT5+wZdsNO31FojQJa9ns40hzZ6U9f50Jlq4w6qwzdBB2uwqZ00ebg==", "dev": true, "requires": { - "@babel/helper-replace-supers": "7.0.0-beta.40" + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-replace-supers": "^7.1.0" } }, "@babel/plugin-transform-parameters": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.0.0-beta.40.tgz", - "integrity": "sha512-JShFDeKEzwwTB+pHcUuLdX9zPi98sRekvtdCEOt8UoF5pzW02k1XdsVOckp/PzcEdoGAgZiiI1PFkJZ+xanfPg==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.4.4.tgz", + "integrity": "sha512-oMh5DUO1V63nZcu/ZVLQFqiihBGo4OpxJxR1otF50GMeCLiRx5nUdtokd+u9SuVJrvvuIh9OosRFPP4pIPnwmw==", + "dev": true, + "requires": { + "@babel/helper-call-delegate": "^7.4.4", + "@babel/helper-get-function-arity": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-property-literals": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.2.0.tgz", + "integrity": "sha512-9q7Dbk4RhgcLp8ebduOpCbtjh7C0itoLYHXd9ueASKAG/is5PQtMR5VJGka9NKqGhYEGn5ITahd4h9QeBMylWQ==", "dev": true, "requires": { - "@babel/helper-call-delegate": "7.0.0-beta.40", - "@babel/helper-get-function-arity": "7.0.0-beta.40" + "@babel/helper-plugin-utils": "^7.0.0" } }, "@babel/plugin-transform-regenerator": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.0.0-beta.40.tgz", - "integrity": "sha512-hFj52wAXbEpXwwfKsMol5Y967D3L8tz46Jin9n/gYPgcNWugvsw6d7g+HknBJ8FzaUESrDruFRkGPXgD+FyjvQ==", + "version": "7.4.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.4.5.tgz", + "integrity": "sha512-gBKRh5qAaCWntnd09S8QC7r3auLCqq5DI6O0DlfoyDjslSBVqBibrMdsqO+Uhmx3+BlOmE/Kw1HFxmGbv0N9dA==", + "dev": true, + "requires": { + "regenerator-transform": "^0.14.0" + } + }, + "@babel/plugin-transform-reserved-words": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.2.0.tgz", + "integrity": "sha512-fz43fqW8E1tAB3DKF19/vxbpib1fuyCwSPE418ge5ZxILnBhWyhtPgz8eh1RCGGJlwvksHkyxMxh0eenFi+kFw==", "dev": true, "requires": { - "regenerator-transform": "^0.12.3" + "@babel/helper-plugin-utils": "^7.0.0" } }, "@babel/plugin-transform-shorthand-properties": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.0.0-beta.40.tgz", - "integrity": "sha512-1leHn9ST0PKFHwH7klJqGA76YPoqs3cR5zeJK6YGZETeX89YiAVtR+5JTSGhfI/1RR0Vcg9Tl1LnPpf7LmYlng==", - "dev": true + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.2.0.tgz", + "integrity": "sha512-QP4eUM83ha9zmYtpbnyjTLAGKQritA5XW/iG9cjtuOI8s1RuL/3V6a3DeSHfKutJQ+ayUfeZJPcnCYEQzaPQqg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } }, "@babel/plugin-transform-spread": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.0.0-beta.40.tgz", - "integrity": "sha512-RPrIpV+h8OqoqyMic7CNeM8TdSDk7ec+T6jM97vMb9XQQrRInAUWlwWvG6d36v72xobFtHoPA28VN/0aVsbQDg==", - "dev": true + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.2.2.tgz", + "integrity": "sha512-KWfky/58vubwtS0hLqEnrWJjsMGaOeSBn90Ezn5Jeg9Z8KKHmELbP1yGylMlm5N6TPKeY9A2+UaSYLdxahg01w==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } }, "@babel/plugin-transform-sticky-regex": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.0.0-beta.40.tgz", - "integrity": "sha512-dJPUaV2D5SwSXypaDFRJd+LIhabeaWhZ3McmNo0COn+lBINJ9iL7mYuPxnqwhM/KoBNv+vYIoFFZzT/I27K6AQ==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.2.0.tgz", + "integrity": "sha512-KKYCoGaRAf+ckH8gEL3JHUaFVyNHKe3ASNsZ+AlktgHevvxGigoIttrEJb8iKN03Q7Eazlv1s6cx2B2cQ3Jabw==", "dev": true, "requires": { - "@babel/helper-regex": "7.0.0-beta.40" + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-regex": "^7.0.0" } }, "@babel/plugin-transform-template-literals": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.0.0-beta.40.tgz", - "integrity": "sha512-ScGHntym1y5FweT751OJxGW4rydxdLA9BwkHfJ5o6RcCoq+LRubDeGu2HeuX4SMEvAw0MnZeSk8vw5TwIOzEIQ==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.4.4.tgz", + "integrity": "sha512-mQrEC4TWkhLN0z8ygIvEL9ZEToPhG5K7KDW3pzGqOfIGZ28Jb0POUkeWcoz8HnHvhFy6dwAT1j8OzqN8s804+g==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "7.0.0-beta.40" + "@babel/helper-annotate-as-pure": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0" } }, "@babel/plugin-transform-typeof-symbol": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.0.0-beta.40.tgz", - "integrity": "sha512-y+mXC0tIlTZj04ZD9326grEIvFjI/IeLSIVVKMIf8nSodLDCgipuM6zXhxqXVvjcTrvvUKuxPrvPeSuht0eeMg==", - "dev": true + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.2.0.tgz", + "integrity": "sha512-2LNhETWYxiYysBtrBTqL8+La0jIoQQnIScUJc74OYvUGRmkskNY4EzLCnjHBzdmb38wqtTaixpo1NctEcvMDZw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } }, "@babel/plugin-transform-unicode-regex": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.0.0-beta.40.tgz", - "integrity": "sha512-+eProDq93qiYnXOy+LDSMoKF2lEQVQ+r6DF3ZZXJV5QJ3f2+vwpSqGIQy61sSkVMEaoNtYL/Jy+G8HrWFw9p3w==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.4.4.tgz", + "integrity": "sha512-il+/XdNw01i93+M9J9u4T7/e/Ue/vWfNZE4IRUQjplu2Mqb/AFTDimkw2tdEdSH50wuQXZAbXSql0UphQke+vA==", "dev": true, "requires": { - "@babel/helper-regex": "7.0.0-beta.40", - "regexpu-core": "^4.1.3" + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-regex": "^7.4.4", + "regexpu-core": "^4.5.4" } }, "@babel/polyfill": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.0.0-beta.40.tgz", - "integrity": "sha512-aUO+KHYJDFAnyRU/g3sBofp9WVKI0ROriGpeKXBTq8DsMYnvbZkNQaEwrzKi6TzmVuRDBNpVAkArZQ9qbQrqRA==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.4.4.tgz", + "integrity": "sha512-WlthFLfhQQhh+A2Gn5NSFl0Huxz36x86Jn+E9OW7ibK8edKPq+KLy4apM1yDpQ8kJOVi1OVjpP4vSDLdrI04dg==", "dev": true, "requires": { - "core-js": "^2.5.3", - "regenerator-runtime": "^0.11.1" + "core-js": "^2.6.5", + "regenerator-runtime": "^0.13.2" + }, + "dependencies": { + "core-js": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz", + "integrity": "sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A==", + "dev": true + }, + "regenerator-runtime": { + "version": "0.13.2", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.2.tgz", + "integrity": "sha512-S/TQAZJO+D3m9xeN1WTI8dLKBBiRgXBlTJvbWjCThHWZj9EvHK70Ff50/tYj2J/fvBY6JtFVwRuazHN2E7M9BA==", + "dev": true + } } }, "@babel/preset-env": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.0.0-beta.40.tgz", - "integrity": "sha512-IBnkVmaM/K2pHB8RR0tC5oHrPdS4y0RZXrGc+lmfDuj4tgyCAmDBuQ1EWVaLOpWw8fXPwXfX70Vdp65L2df+RQ==", - "dev": true, - "requires": { - "@babel/plugin-proposal-async-generator-functions": "7.0.0-beta.40", - "@babel/plugin-proposal-object-rest-spread": "7.0.0-beta.40", - "@babel/plugin-proposal-optional-catch-binding": "7.0.0-beta.40", - "@babel/plugin-proposal-unicode-property-regex": "7.0.0-beta.40", - "@babel/plugin-syntax-async-generators": "7.0.0-beta.40", - "@babel/plugin-syntax-object-rest-spread": "7.0.0-beta.40", - "@babel/plugin-syntax-optional-catch-binding": "7.0.0-beta.40", - "@babel/plugin-transform-arrow-functions": "7.0.0-beta.40", - "@babel/plugin-transform-async-to-generator": "7.0.0-beta.40", - "@babel/plugin-transform-block-scoped-functions": "7.0.0-beta.40", - "@babel/plugin-transform-block-scoping": "7.0.0-beta.40", - "@babel/plugin-transform-classes": "7.0.0-beta.40", - "@babel/plugin-transform-computed-properties": "7.0.0-beta.40", - "@babel/plugin-transform-destructuring": "7.0.0-beta.40", - "@babel/plugin-transform-dotall-regex": "7.0.0-beta.40", - "@babel/plugin-transform-duplicate-keys": "7.0.0-beta.40", - "@babel/plugin-transform-exponentiation-operator": "7.0.0-beta.40", - "@babel/plugin-transform-for-of": "7.0.0-beta.40", - "@babel/plugin-transform-function-name": "7.0.0-beta.40", - "@babel/plugin-transform-literals": "7.0.0-beta.40", - "@babel/plugin-transform-modules-amd": "7.0.0-beta.40", - "@babel/plugin-transform-modules-commonjs": "7.0.0-beta.40", - "@babel/plugin-transform-modules-systemjs": "7.0.0-beta.40", - "@babel/plugin-transform-modules-umd": "7.0.0-beta.40", - "@babel/plugin-transform-new-target": "7.0.0-beta.40", - "@babel/plugin-transform-object-super": "7.0.0-beta.40", - "@babel/plugin-transform-parameters": "7.0.0-beta.40", - "@babel/plugin-transform-regenerator": "7.0.0-beta.40", - "@babel/plugin-transform-shorthand-properties": "7.0.0-beta.40", - "@babel/plugin-transform-spread": "7.0.0-beta.40", - "@babel/plugin-transform-sticky-regex": "7.0.0-beta.40", - "@babel/plugin-transform-template-literals": "7.0.0-beta.40", - "@babel/plugin-transform-typeof-symbol": "7.0.0-beta.40", - "@babel/plugin-transform-unicode-regex": "7.0.0-beta.40", - "browserslist": "^3.0.0", + "version": "7.4.5", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.4.5.tgz", + "integrity": "sha512-f2yNVXM+FsR5V8UwcFeIHzHWgnhXg3NpRmy0ADvALpnhB0SLbCvrCRr4BLOUYbQNLS+Z0Yer46x9dJXpXewI7w==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-async-generator-functions": "^7.2.0", + "@babel/plugin-proposal-json-strings": "^7.2.0", + "@babel/plugin-proposal-object-rest-spread": "^7.4.4", + "@babel/plugin-proposal-optional-catch-binding": "^7.2.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-syntax-async-generators": "^7.2.0", + "@babel/plugin-syntax-json-strings": "^7.2.0", + "@babel/plugin-syntax-object-rest-spread": "^7.2.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.2.0", + "@babel/plugin-transform-arrow-functions": "^7.2.0", + "@babel/plugin-transform-async-to-generator": "^7.4.4", + "@babel/plugin-transform-block-scoped-functions": "^7.2.0", + "@babel/plugin-transform-block-scoping": "^7.4.4", + "@babel/plugin-transform-classes": "^7.4.4", + "@babel/plugin-transform-computed-properties": "^7.2.0", + "@babel/plugin-transform-destructuring": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/plugin-transform-duplicate-keys": "^7.2.0", + "@babel/plugin-transform-exponentiation-operator": "^7.2.0", + "@babel/plugin-transform-for-of": "^7.4.4", + "@babel/plugin-transform-function-name": "^7.4.4", + "@babel/plugin-transform-literals": "^7.2.0", + "@babel/plugin-transform-member-expression-literals": "^7.2.0", + "@babel/plugin-transform-modules-amd": "^7.2.0", + "@babel/plugin-transform-modules-commonjs": "^7.4.4", + "@babel/plugin-transform-modules-systemjs": "^7.4.4", + "@babel/plugin-transform-modules-umd": "^7.2.0", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.4.5", + "@babel/plugin-transform-new-target": "^7.4.4", + "@babel/plugin-transform-object-super": "^7.2.0", + "@babel/plugin-transform-parameters": "^7.4.4", + "@babel/plugin-transform-property-literals": "^7.2.0", + "@babel/plugin-transform-regenerator": "^7.4.5", + "@babel/plugin-transform-reserved-words": "^7.2.0", + "@babel/plugin-transform-shorthand-properties": "^7.2.0", + "@babel/plugin-transform-spread": "^7.2.0", + "@babel/plugin-transform-sticky-regex": "^7.2.0", + "@babel/plugin-transform-template-literals": "^7.4.4", + "@babel/plugin-transform-typeof-symbol": "^7.2.0", + "@babel/plugin-transform-unicode-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "browserslist": "^4.6.0", + "core-js-compat": "^3.1.1", "invariant": "^2.2.2", - "semver": "^5.3.0" + "js-levenshtein": "^1.1.3", + "semver": "^5.5.0" + } + }, + "@babel/register": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.0.0.tgz", + "integrity": "sha512-f/+CRmaCe7rVEvcvPvxeA8j5aJhHC3aJie7YuqcMDhUOuyWLA7J/aNrTaHIzoWPEhpHA54mec4Mm8fv8KBlv3g==", + "dev": true, + "requires": { + "core-js": "^2.5.7", + "find-cache-dir": "^1.0.0", + "home-or-tmp": "^3.0.0", + "lodash": "^4.17.10", + "mkdirp": "^0.5.1", + "pirates": "^4.0.0", + "source-map-support": "^0.5.9" + }, + "dependencies": { + "core-js": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz", + "integrity": "sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A==", + "dev": true + }, + "find-cache-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", + "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^2.0.0" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "home-or-tmp": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-3.0.0.tgz", + "integrity": "sha1-V6j+JM8zzdUkhgoVgh3cJchmcfs=", + "dev": true + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "requires": { + "find-up": "^2.1.0" + } + } } }, "@babel/template": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.0.0-beta.40.tgz", - "integrity": "sha512-RlQiVB7eL7fxsKN6JvnCCwEwEL28CBYalXSgWWULuFlEHjtMoXBqQanSie3bNyhrANJx67sb+Sd/vuGivoMwLQ==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.4.4.tgz", + "integrity": "sha512-CiGzLN9KgAvgZsnivND7rkA+AeJ9JB0ciPOD4U59GKbQP2iQl+olF1l76kJOupqidozfZ32ghwBEJDhnk9MEcw==", "dev": true, "requires": { - "@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/code-frame": "^7.0.0", + "@babel/parser": "^7.4.4", + "@babel/types": "^7.4.4" } }, "@babel/traverse": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.0.0-beta.40.tgz", - "integrity": "sha512-h96SQorjvdSuxQ6hHFIuAa3oxnad1TA5bU1Zz88+XqzwmM5QM0/k2D+heXGGy/76gT5ajl7xYLKGiPA/KTyVhQ==", + "version": "7.4.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.5.tgz", + "integrity": "sha512-Vc+qjynwkjRmIFGxy0KYoPj4FdVDxLej89kMHFsWScq999uX+pwcX4v9mWRjW0KcAYTPAuVQl2LKP1wEVLsp+A==", "dev": true, "requires": { - "@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", + "@babel/code-frame": "^7.0.0", + "@babel/generator": "^7.4.4", + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-split-export-declaration": "^7.4.4", + "@babel/parser": "^7.4.5", + "@babel/types": "^7.4.4", + "debug": "^4.1.0", "globals": "^11.1.0", - "invariant": "^2.2.0", - "lodash": "^4.2.0" + "lodash": "^4.17.11" }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true } } }, "@babel/types": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.0.0-beta.40.tgz", - "integrity": "sha512-uXCGCzTgMZxcSUzutCPtZmXbVC+cvENgS2e0tRuhn+Y1hZnMb8IHP0Trq7Q2MB/eFmG5pKrAeTIUfQIe5kA4Tg==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.4.4.tgz", + "integrity": "sha512-dOllgYdnEFOebhkKCjzSVFqw/PmmB8pH6RGOWkY4GsboQNd47b1fBThBSwlHAq9alF9vc1M3+6oqR47R50L0tQ==", "dev": true, "requires": { "esutils": "^2.0.2", - "lodash": "^4.2.0", + "lodash": "^4.17.11", "to-fast-properties": "^2.0.0" } }, @@ -668,6 +980,15 @@ } } }, + "@sinonjs/commons": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.4.0.tgz", + "integrity": "sha512-9jHK3YF/8HtJ9wCAbG+j8cD0i0+ATS9A7gXFqS36TblLPNy6rEEc+SB0imo91eCboGaBYGV/MT1/br/J+EE7Tw==", + "dev": true, + "requires": { + "type-detect": "4.0.8" + } + }, "@sinonjs/formatio": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-2.0.0.tgz", @@ -677,256 +998,238 @@ "samsam": "1.3.0" } }, + "@sinonjs/samsam": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.1.tgz", + "integrity": "sha512-wRSfmyd81swH0hA1bxJZJ57xr22kC07a1N4zuIL47yTS04bDk6AoCkczcqHEjcRPmJ+FruGJ9WBQiJwMtIElFw==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.0.2", + "array-from": "^2.1.1", + "lodash": "^4.17.11" + } + }, + "@sinonjs/text-encoding": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", + "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", + "dev": true + }, "@types/babel-types": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.1.tgz", - "integrity": "sha512-EkcOk09rjhivbovP8WreGRbXW20YRfe/qdgXOGq3it3u3aAOWDRNsQhL/XPAWFF7zhZZ+uR+nT+3b+TCkIap1w==", + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.7.tgz", + "integrity": "sha512-dBtBbrc+qTHy1WdfHYjBwRln4+LWqASWakLHsWHR2NWHIFkv4W3O070IGoGLEBrJBvct3r0L1BUPuvURi7kYUQ==", "dev": true }, "@types/babylon": { - "version": "6.16.2", - "resolved": "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.2.tgz", - "integrity": "sha512-+Jty46mPaWe1VAyZbfvgJM4BAdklLWxrT5tc/RjvCgLrtk6gzRY6AOnoWFv4p6hVxhJshDdr2hGVn56alBp97Q==", + "version": "6.16.5", + "resolved": "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.5.tgz", + "integrity": "sha512-xH2e58elpj1X4ynnKp9qSnWlsRTIs6n3tgLGNfwAGHwePw0mulHQllV34n0T25uYSu1k0hRKkWXF890B1yS47w==", "dev": true, "requires": { "@types/babel-types": "*" } }, "@types/node": { - "version": "10.1.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-10.1.4.tgz", - "integrity": "sha512-GpQxofkdlHYxjHad98UUdNoMO7JrmzQZoAaghtNg14Gwg7YkohcrCoJEcEMSgllx4VIZ+mYw7ZHjfaeIagP/rg==", + "version": "12.0.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.0.4.tgz", + "integrity": "sha512-j8YL2C0fXq7IONwl/Ud5Kt0PeXw22zGERt+HSSnwbKOJVsAGkEz3sFCYwaF9IOuoG1HOtE0vKCj6sXF7Q0+Vaw==", "dev": true }, "@webassemblyjs/ast": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.5.9.tgz", - "integrity": "sha512-xL3hC0TOc4ic1UNG8ZZNeaiPf1klozt6rqajcy7hfO/qqfkEhLff1AFt5g2LJkTjhw+QSEYVMt7qOaaApu7JzA==", + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.8.5.tgz", + "integrity": "sha512-aJMfngIZ65+t71C3y2nBBg5FFG0Okt9m0XEgWZ7Ywgn1oMAT8cNwx00Uv1cQyHtidq0Xn94R4TAywO+LCQ+ZAQ==", "dev": true, "requires": { - "@webassemblyjs/helper-module-context": "1.5.9", - "@webassemblyjs/helper-wasm-bytecode": "1.5.9", - "@webassemblyjs/wast-parser": "1.5.9", - "debug": "^3.1.0", - "mamacro": "^0.0.3" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } + "@webassemblyjs/helper-module-context": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/wast-parser": "1.8.5" } }, "@webassemblyjs/floating-point-hex-parser": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.5.9.tgz", - "integrity": "sha512-naMJjuBqDqx4dPSzwpI9pkjdLds4tDTzvsOEzwxPDp655IfgLLP/QEvK/9PQp4p5DExqrR87rk8DWByoqWWlGA==", + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.8.5.tgz", + "integrity": "sha512-9p+79WHru1oqBh9ewP9zW95E3XAo+90oth7S5Re3eQnECGq59ly1Ri5tsIipKGpiStHsUYmY3zMLqtk3gTcOtQ==", "dev": true }, "@webassemblyjs/helper-api-error": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.5.9.tgz", - "integrity": "sha512-tzGdqBo7Xf3McJcXbwbwzwElRzF/nELJN+G4MGGfm0DGRQB6UTmMe44jFIOQYT1Za89Aiz5DMQJotdnnLheixw==", + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.8.5.tgz", + "integrity": "sha512-Za/tnzsvnqdaSPOUXHyKJ2XI7PDX64kWtURyGiJJZKVEdFOsdKUCPTNEVFZq3zJ2R0G5wc2PZ5gvdTRFgm81zA==", "dev": true }, "@webassemblyjs/helper-buffer": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.5.9.tgz", - "integrity": "sha512-WYkys6y33viEY23tHJ+KkSd9yHZBd54Sy6gcSgwLGPP1or9pLqWBrjWWATHuDuIkpvSJSt/+3qjAV6zHd1nS0g==", + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.8.5.tgz", + "integrity": "sha512-Ri2R8nOS0U6G49Q86goFIPNgjyl6+oE1abW1pS84BuhP1Qcr5JqMwRFT3Ah3ADDDYGEgGs1iyb1DGX+kAi/c/Q==", + "dev": true + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.8.5.tgz", + "integrity": "sha512-VQAadSubZIhNpH46IR3yWO4kZZjMxN1opDrzePLdVKAZ+DFjkGD/rf4v1jap744uPVU6yjL/smZbRIIJTOUnKQ==", "dev": true, "requires": { - "debug": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } - } - }, - "@webassemblyjs/helper-code-frame": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.5.9.tgz", - "integrity": "sha512-SYjNAlqcRH+YynslbIhFYOnGvE3WBl82/XlcFXiNkqnWsvHWnNkJbtxAtzrT/dcf69O/2pt8j1Q0+qc/rtacVw==", - "dev": true, - "requires": { - "@webassemblyjs/wast-printer": "1.5.9" + "@webassemblyjs/wast-printer": "1.8.5" } }, "@webassemblyjs/helper-fsm": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.5.9.tgz", - "integrity": "sha512-8D+VVIJTRbsn31zt3eyidYyUkhH1jk2/58mrIPiMarflRsisItJa5WZVu/gw0l+ubFOJf9PivTJB6Kw/Kgxx3g==", + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.8.5.tgz", + "integrity": "sha512-kRuX/saORcg8se/ft6Q2UbRpZwP4y7YrWsLXPbbmtepKr22i8Z4O3V5QE9DbZK908dh5Xya4Un57SDIKwB9eow==", "dev": true }, "@webassemblyjs/helper-module-context": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.5.9.tgz", - "integrity": "sha512-DbeLbFOhioEeY7yAff12+n5sf7WP7Fmi0lnhCSzfW4xBsgwXKmRjAx7nVmsUf3z+BDnwHHVKIXBUM+ucccNUsw==", - "dev": true + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.8.5.tgz", + "integrity": "sha512-/O1B236mN7UNEU4t9X7Pj38i4VoU8CcMHyy3l2cV/kIF4U5KoHXDVqcDuOs1ltkac90IM4vZdHc52t1x8Yfs3g==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "mamacro": "^0.0.3" + } }, "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.5.9.tgz", - "integrity": "sha512-zHQuTMMd2nTyEa3fbmGfzlJW305py1sgf1gHNCO/LVN8nWlKysB/+6J68sP1Cd+9USnT1VS2vyD1z+YJPS6GqQ==", + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.8.5.tgz", + "integrity": "sha512-Cu4YMYG3Ddl72CbmpjU/wbP6SACcOPVbHN1dI4VJNJVgFwaKf1ppeFJrwydOG3NDHxVGuCfPlLZNyEdIYlQ6QQ==", "dev": true }, "@webassemblyjs/helper-wasm-section": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.5.9.tgz", - "integrity": "sha512-+ff+8Ju6sLCMFNygcDdLRNRsmuD0PHwq77d2mbfWj5YzUvFaKN2q2kRppJSEAixOnM2xLADuG5y/blpMo5G90A==", + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.8.5.tgz", + "integrity": "sha512-VV083zwR+VTrIWWtgIUpqfvVdK4ff38loRmrdDBgBT8ADXYsEZ5mPQ4Nde90N3UYatHdYoDIFb7oHzMncI02tA==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.5.9", - "@webassemblyjs/helper-buffer": "1.5.9", - "@webassemblyjs/helper-wasm-bytecode": "1.5.9", - "@webassemblyjs/wasm-gen": "1.5.9", - "debug": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-buffer": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/wasm-gen": "1.8.5" } }, "@webassemblyjs/ieee754": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.5.9.tgz", - "integrity": "sha512-mhetZBDnpV3VYqZb5Aail9X01VyIqDDZrNYdYj8bfx/PsVPG2znX90wRyVNTeqC5ylqHCgGkJ63bPaPEyINfsw==", + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz", + "integrity": "sha512-aaCvQYrvKbY/n6wKHb/ylAJr27GglahUO89CcGXMItrOBqRarUMxWLJgxm9PJNuKULwN5n1csT9bYoMeZOGF3g==", "dev": true, "requires": { - "ieee754": "^1.1.11" + "@xtuc/ieee754": "^1.2.0" } }, "@webassemblyjs/leb128": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.5.9.tgz", - "integrity": "sha512-oZ3eUB9EViUtiuMwW/xeYamXgfFS2cmXl6aUIYBfpXJQ5v5aOC8ZuPpz2/LqlgNlT8ThpyFd6kfgkYVwKwkGvQ==", + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.8.5.tgz", + "integrity": "sha512-plYUuUwleLIziknvlP8VpTgO4kqNaH57Y3JnNa6DLpu/sGcP6hbVdfdX5aHAV716pQBKrfuU26BJK29qY37J7A==", "dev": true, "requires": { - "leb": "^0.3.0" + "@xtuc/long": "4.2.2" } }, + "@webassemblyjs/utf8": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.8.5.tgz", + "integrity": "sha512-U7zgftmQriw37tfD934UNInokz6yTmn29inT2cAetAsaU9YeVCveWEwhKL1Mg4yS7q//NGdzy79nlXh3bT8Kjw==", + "dev": true + }, "@webassemblyjs/wasm-edit": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.5.9.tgz", - "integrity": "sha512-pMWe3HomnWAMZytJ5sSNBS6qTbSoULUHkvDrtcarmLBTclmupZe25INy1jxbWGKsuFxw6w0xQ+eLRPlC8HPjhg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.5.9", - "@webassemblyjs/helper-buffer": "1.5.9", - "@webassemblyjs/helper-wasm-bytecode": "1.5.9", - "@webassemblyjs/helper-wasm-section": "1.5.9", - "@webassemblyjs/wasm-gen": "1.5.9", - "@webassemblyjs/wasm-opt": "1.5.9", - "@webassemblyjs/wasm-parser": "1.5.9", - "@webassemblyjs/wast-printer": "1.5.9", - "debug": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.8.5.tgz", + "integrity": "sha512-A41EMy8MWw5yvqj7MQzkDjU29K7UJq1VrX2vWLzfpRHt3ISftOXqrtojn7nlPsZ9Ijhp5NwuODuycSvfAO/26Q==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-buffer": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/helper-wasm-section": "1.8.5", + "@webassemblyjs/wasm-gen": "1.8.5", + "@webassemblyjs/wasm-opt": "1.8.5", + "@webassemblyjs/wasm-parser": "1.8.5", + "@webassemblyjs/wast-printer": "1.8.5" } }, "@webassemblyjs/wasm-gen": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.5.9.tgz", - "integrity": "sha512-UEhymlxupBUJuwnD2N860MqkpE7LHt0tNKqAgT4YAVjbx+88P6MBBk+q+9wr2FJCXxMgsPTxMWifqC4wd2FzVg==", + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.5.tgz", + "integrity": "sha512-BCZBT0LURC0CXDzj5FXSc2FPTsxwp3nWcqXQdOZE4U7h7i8FqtFK5Egia6f9raQLpEKT1VL7zr4r3+QX6zArWg==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.5.9", - "@webassemblyjs/helper-wasm-bytecode": "1.5.9", - "@webassemblyjs/ieee754": "1.5.9", - "@webassemblyjs/leb128": "1.5.9" + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/ieee754": "1.8.5", + "@webassemblyjs/leb128": "1.8.5", + "@webassemblyjs/utf8": "1.8.5" } }, "@webassemblyjs/wasm-opt": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.5.9.tgz", - "integrity": "sha512-oQm84US3e36dPq5bOeybVKA2ZyzeWR4fereg9kJa0Y9XLKxHwlsBa2kFyNXwZNrhMP33iyXAW+ym7om1zPZeAg==", + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.5.tgz", + "integrity": "sha512-HKo2mO/Uh9A6ojzu7cjslGaHaUU14LdLbGEKqTR7PBKwT6LdPtLLh9fPY33rmr5wcOMrsWDbbdCHq4hQUdd37Q==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.5.9", - "@webassemblyjs/helper-buffer": "1.5.9", - "@webassemblyjs/wasm-gen": "1.5.9", - "@webassemblyjs/wasm-parser": "1.5.9", - "debug": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-buffer": "1.8.5", + "@webassemblyjs/wasm-gen": "1.8.5", + "@webassemblyjs/wasm-parser": "1.8.5" } }, "@webassemblyjs/wasm-parser": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.5.9.tgz", - "integrity": "sha512-jBKBTKE4M/WYCSqLjRvK+/QD55E/HNcQjswbksof3GEXfkq0iMqYxoPfqR7uLAD9/jVf9HpBNW2FJOyfTTlYfw==", + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.5.tgz", + "integrity": "sha512-pi0SYE9T6tfcMkthwcgCpL0cM9nRYr6/6fjgDtL6q/ZqKHdMWvxitRi5JcZ7RI4SNJJYnYNaWy5UUrHQy998lw==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.5.9", - "@webassemblyjs/helper-api-error": "1.5.9", - "@webassemblyjs/helper-wasm-bytecode": "1.5.9", - "@webassemblyjs/ieee754": "1.5.9", - "@webassemblyjs/leb128": "1.5.9", - "@webassemblyjs/wasm-parser": "1.5.9" + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-api-error": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/ieee754": "1.8.5", + "@webassemblyjs/leb128": "1.8.5", + "@webassemblyjs/utf8": "1.8.5" } }, "@webassemblyjs/wast-parser": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.5.9.tgz", - "integrity": "sha512-bDuYH/NR5D+MmwVZdGW2rUvu4UcKGpodiHBSueajon3oNPu+PAKG+7br3BVFKxDUtDoVtuHLUQvkqp1lTrqPCA==", + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.8.5.tgz", + "integrity": "sha512-daXC1FyKWHF1i11obK086QRlsMsY4+tIOKgBqI1lxAnkp9xe9YMcgOxm9kLe+ttjs5aWV2KKE1TWJCN57/Btsg==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.5.9", - "@webassemblyjs/floating-point-hex-parser": "1.5.9", - "@webassemblyjs/helper-api-error": "1.5.9", - "@webassemblyjs/helper-code-frame": "1.5.9", - "@webassemblyjs/helper-fsm": "1.5.9", - "long": "^3.2.0", - "mamacro": "^0.0.3" + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/floating-point-hex-parser": "1.8.5", + "@webassemblyjs/helper-api-error": "1.8.5", + "@webassemblyjs/helper-code-frame": "1.8.5", + "@webassemblyjs/helper-fsm": "1.8.5", + "@xtuc/long": "4.2.2" } }, "@webassemblyjs/wast-printer": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.5.9.tgz", - "integrity": "sha512-04iV32TO69kZChP3DN6W8i6GCa5UtEn1Lnzb4sQGe5YNjIFz2k8+KZLxbovWIZgj9pk06k3Egq/wyD98lSKaLw==", + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.8.5.tgz", + "integrity": "sha512-w0U0pD4EhlnvRyeJzBqaVSJAo9w/ce7/WPogeXLzGkO6hzhr4GnQIZ4W4uUt5b9ooAaXPtnXlj0gzsXEOUNYMg==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.5.9", - "@webassemblyjs/wast-parser": "1.5.9", - "long": "^3.2.0" + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/wast-parser": "1.8.5", + "@xtuc/long": "4.2.2" } }, + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, + "@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "dev": true + }, "JSONSelect": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.2.1.tgz", @@ -943,6 +1246,7 @@ "version": "1.3.5", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", + "dev": true, "requires": { "mime-types": "~2.1.18", "negotiator": "0.6.1" @@ -955,21 +1259,10 @@ "dev": true }, "acorn-dynamic-import": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-3.0.0.tgz", - "integrity": "sha512-zVWV8Z8lislJoOKKqdNMOB+s6+XV5WERty8MnKBeFgwA+19XJjJHs2RP5dzM57FftIs+jQnRToLiWazKr6sSWg==", - "dev": true, - "requires": { - "acorn": "^5.0.0" - }, - "dependencies": { - "acorn": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.6.0.tgz", - "integrity": "sha512-QatFQ4C0n+PLqemyC6zXEv04tSqRR0hRqe+uGKPEVgKe2G8kl8wJvHzRYWwz6vqqEqt6idPVMFojZ4P1zlyAzQ==", - "dev": true - } - } + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-4.0.0.tgz", + "integrity": "sha512-d3OEjQV4ROpoflsnUA8HozoIR504TFxNivYEUi6uwz0IYhBkTDXGuWlNdMtybRt3nqVx/L6XqMt0FxkXuWKZhw==", + "dev": true }, "acorn-globals": { "version": "3.1.0", @@ -989,13 +1282,10 @@ } }, "acorn-jsx": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", - "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", - "dev": true, - "requires": { - "acorn": "^3.0.4" - } + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.1.tgz", + "integrity": "sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg==", + "dev": true }, "adbkit": { "version": "2.11.0", @@ -1017,6 +1307,12 @@ "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-2.9.34.tgz", "integrity": "sha1-L3tOyAIWMoqf3evfacjUlC/v99g=", "dev": true + }, + "node-forge": { + "version": "0.7.6", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.6.tgz", + "integrity": "sha512-sol30LUpz1jQFBjOKwbjxijiE3b6pjd74YwfD0fJOKPjF+fONKb2Yg8rYgS6+bK6VDl+/wfr4IYpC7jDzLUIfw==", + "dev": true } } }, @@ -1044,60 +1340,73 @@ } }, "addons-linter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/addons-linter/-/addons-linter-1.0.0.tgz", - "integrity": "sha512-6cC0Jcf0vMVgE86TV4A1lfjx78Fp0JltA1UH2icz/cALWMMfDZrD7YpB4dMrpobclsbKFPHexNOYhS4efAc5ng==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/addons-linter/-/addons-linter-1.4.1.tgz", + "integrity": "sha512-AX8nCD/gy/6DoX4B7vTMQV6pcP8tG0BjxB3Jv44VZrUTYG+ojHx26abRDyUn+fDqWGf8qzeVn0Vss/NMNjMouA==", "dev": true, "requires": { - "ajv": "6.5.0", - "ajv-merge-patch": "3.0.0", - "babel-register": "6.26.0", + "@babel/polyfill": "7.0.0", + "@babel/register": "7.0.0", + "ajv": "6.5.5", + "ajv-merge-patch": "4.1.0", "chalk": "2.4.0", "cheerio": "1.0.0-rc.2", "columnify": "1.5.4", - "common-tags": "1.7.2", + "common-tags": "1.8.0", "crx-parser": "0.1.2", - "deepmerge": "2.1.0", - "dispensary": "0.18.0", - "doctoc": "1.3.1", + "deepmerge": "2.2.1", + "dispensary": "0.27.0", "es6-promisify": "5.0.0", - "eslint": "4.19.1", + "eslint": "5.0.1", "eslint-plugin-no-unsafe-innerhtml": "1.0.16", + "eslint-visitor-keys": "1.0.0", + "espree": "4.1.0", "esprima": "3.1.3", "first-chunk-stream": "2.0.0", - "fluent-syntax": "^0.7.0", - "glob": "7.1.2", + "fluent-syntax": "0.7.0", + "fsevents": "2.0.1", + "glob": "7.1.3", "is-mergeable-object": "1.1.0", "jed": "1.1.1", - "os-locale": "2.1.0", - "pino": "4.16.1", + "os-locale": "3.0.1", + "pino": "5.9.0", "po2json": "0.4.5", - "postcss": "6.0.19", + "postcss": "7.0.6", "probe-image-size": "4.0.0", "relaxed-json": "1.0.1", - "semver": "5.5.0", - "shelljs": "0.8.1", - "snyk": "^1.78.1", + "semver": "5.6.0", + "shelljs": "0.8.3", + "snyk": "1.110.2", "source-map-support": "0.5.6", "strip-bom-stream": "3.0.0", "tosource": "1.0.0", - "upath": "1.0.5", - "whatwg-url": "6.4.1", + "upath": "1.1.0", + "whatwg-url": "7.0.0", "xmldom": "0.1.27", - "yargs": "11.0.0", - "yauzl": "2.9.1" + "yargs": "12.0.2", + "yauzl": "2.9.2" }, "dependencies": { + "@babel/polyfill": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.0.0.tgz", + "integrity": "sha512-dnrMRkyyr74CRelJwvgnnSUDh2ge2NCTyHVwpOdvRMHtJUyxLtMAfhBN3s64pY41zdw0kgiLPh6S20eb1NcX6Q==", + "dev": true, + "requires": { + "core-js": "^2.5.7", + "regenerator-runtime": "^0.11.1" + } + }, "ajv": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.0.tgz", - "integrity": "sha512-VDUX1oSajablmiyFyED9L1DFndg0P9h7p1F+NO8FkIzei6EPrR6Zu1n18rd5P8PqaSRd/FrWv3G1TVBqpM83gA==", + "version": "6.5.5", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.5.tgz", + "integrity": "sha512-7q7gtRQDJSyuEHjuVgHoUa2VuemFiCMrfQc9Tc08XTAc4Zj/5U1buQJ0HU6i7fKjXU09SVgSmxa4sLvuvS8Iyg==", "dev": true, "requires": { "fast-deep-equal": "^2.0.1", "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.3.0", - "uri-js": "^4.2.1" + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, "ansi-regex": { @@ -1106,6 +1415,12 @@ "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", "dev": true }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, "chalk": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", @@ -1128,22 +1443,40 @@ "wrap-ansi": "^2.0.0" } }, + "core-js": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz", + "integrity": "sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A==", + "dev": true + }, + "decamelize": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", + "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", + "dev": true, + "requires": { + "xregexp": "4.0.0" + } + }, "esprima": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", "dev": true }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true + "fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", + "dev": true, + "requires": { + "pend": "~1.2.0" + } }, "glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", "dev": true, "requires": { "fs.realpath": "^1.0.0", @@ -1154,6 +1487,12 @@ "path-is-absolute": "^1.0.0" } }, + "semver": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", + "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", + "dev": true + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -1179,83 +1518,99 @@ "ansi-regex": "^3.0.0" } }, - "y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "xregexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", + "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", "dev": true }, "yargs": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-11.0.0.tgz", - "integrity": "sha512-Rjp+lMYQOWtgqojx1dEWorjCofi1YN7AoFvYV7b1gx/7dAAeuI4kN5SZiEvr0ZmsZTOpDRcCqrpI10L31tFkBw==", + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.2.tgz", + "integrity": "sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ==", "dev": true, "requires": { "cliui": "^4.0.0", - "decamelize": "^1.1.1", - "find-up": "^2.1.0", + "decamelize": "^2.0.0", + "find-up": "^3.0.0", "get-caller-file": "^1.0.1", - "os-locale": "^2.0.0", + "os-locale": "^3.0.0", "require-directory": "^2.1.1", "require-main-filename": "^1.0.1", "set-blocking": "^2.0.0", "string-width": "^2.0.0", "which-module": "^2.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^9.0.2" + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^10.1.0" + } + }, + "yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "dev": true, + "requires": { + "camelcase": "^4.1.0" } }, "yauzl": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.9.1.tgz", - "integrity": "sha1-qBmB6nCleUYTOIPwKcWCGok1mn8=", + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.9.2.tgz", + "integrity": "sha1-T7G8euH8L1cDe1SvasyP4QMcW3c=", "dev": true, "requires": { "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.0.1" + "fd-slicer": "~1.1.0" } } } }, "adm-zip": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.11.tgz", - "integrity": "sha512-L8vcjDTCOIJk7wFvmlEUN7AsSb8T+2JrdP7KINBjzr24TJ5Mwj590sLu3BC7zNZowvJWa/JtPmD8eJCzdtDWjA==", + "version": "0.4.13", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.13.tgz", + "integrity": "sha512-fERNJX8sOXfel6qCBCMPvZLzENBEhZTzKqg6vrOW5pvoEaQuJhRU4ndTAh6lHOxn1I6jnz2NHra56ZODM751uw==", "dev": true }, "agent-base": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.0.tgz", - "integrity": "sha512-c+R/U5X+2zz2+UCrCFv6odQzJdoqI+YecuhnAJLa1zYaMc13zPfwMwZrr91Pd1DYNo/yPRbiM4WVf9whgwFsIg==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", + "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", "dev": true, "requires": { "es6-promisify": "^5.0.0" } }, "ajv": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.2.0.tgz", - "integrity": "sha1-r6wpW7qgFSRJ5SJ0LkVHwa6TKNI=", + "version": "6.10.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", + "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", "dev": true, "requires": { - "fast-deep-equal": "^1.0.0", + "fast-deep-equal": "^2.0.1", "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.3.0" + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, + "ajv-errors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", + "dev": true + }, "ajv-keywords": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.1.0.tgz", - "integrity": "sha1-rCsnk5xUPpXSwG5/f1wnvkqlQ74=", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.0.tgz", + "integrity": "sha512-aUjdRFISbuFOl0EIZc+9e4FfZp0bDZgAdOOf30bJmw8VM9v84SHyVyxDfbWxpGYbdZD/9XoKxfHVNmxPkhwyGw==", "dev": true }, "ajv-merge-patch": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ajv-merge-patch/-/ajv-merge-patch-3.0.0.tgz", - "integrity": "sha1-dvBx45H0Gf6f4/6n6SChrYJLK2E=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ajv-merge-patch/-/ajv-merge-patch-4.1.0.tgz", + "integrity": "sha512-0mAYXMSauA8RZ7r+B4+EAOYcZEcO9OK5EiQCR7W7Cv4E44pJj56ZnkKLJ9/PAcOc0dT+LlV9fdDcq2TxVJfOYw==", "dev": true, "requires": { - "fast-json-patch": "^1.0.0", + "fast-json-patch": "^2.0.6", "json-merge-patch": "^0.2.3" } }, @@ -1268,6 +1623,17 @@ "kind-of": "^3.0.2", "longest": "^1.0.1", "repeat-string": "^1.5.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } } }, "amdefine": { @@ -1276,15 +1642,6 @@ "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", "dev": true }, - "anchor-markdown-header": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/anchor-markdown-header/-/anchor-markdown-header-0.5.7.tgz", - "integrity": "sha1-BFBj125qH5zTJ6V6ASaqD97Dcac=", - "dev": true, - "requires": { - "emoji-regex": "~6.1.0" - } - }, "ansi-align": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", @@ -1295,9 +1652,9 @@ } }, "ansi-escapes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz", - "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", "dev": true }, "ansi-regex": { @@ -1335,314 +1692,38 @@ "requires": { "micromatch": "^3.1.4", "normalize-path": "^2.1.1" + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true + }, + "archiver": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-1.3.0.tgz", + "integrity": "sha1-TyGU1tj5nfP1MeaIHxTxXVX6ryI=", + "dev": true, + "requires": { + "archiver-utils": "^1.3.0", + "async": "^2.0.0", + "buffer-crc32": "^0.2.1", + "glob": "^7.0.0", + "lodash": "^4.8.0", + "readable-stream": "^2.0.0", + "tar-stream": "^1.5.0", + "walkdir": "^0.0.11", + "zip-stream": "^1.1.0" }, "dependencies": { - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "async": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", + "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", "dev": true, "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", - "dev": true - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.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.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - } - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true - }, - "archiver": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/archiver/-/archiver-1.3.0.tgz", - "integrity": "sha1-TyGU1tj5nfP1MeaIHxTxXVX6ryI=", - "dev": true, - "requires": { - "archiver-utils": "^1.3.0", - "async": "^2.0.0", - "buffer-crc32": "^0.2.1", - "glob": "^7.0.0", - "lodash": "^4.8.0", - "readable-stream": "^2.0.0", - "tar-stream": "^1.5.0", - "walkdir": "^0.0.11", - "zip-stream": "^1.1.0" - }, - "dependencies": { - "async": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", - "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", - "dev": true, - "requires": { - "lodash": "^4.14.0" + "lodash": "^4.14.0" } } } @@ -1685,13 +1766,10 @@ } }, "arr-diff": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", - "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", - "dev": true, - "requires": { - "arr-flatten": "^1.0.1" - } + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true }, "arr-flatten": { "version": "1.1.0", @@ -1705,6 +1783,18 @@ "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", "dev": true }, + "array-differ": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", + "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", + "dev": true + }, + "array-each": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", + "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=", + "dev": true + }, "array-filter": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", @@ -1740,6 +1830,12 @@ "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=", "dev": true }, + "array-slice": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", + "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==", + "dev": true + }, "array-union": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", @@ -1756,9 +1852,9 @@ "dev": true }, "array-unique": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", "dev": true }, "arrify": { @@ -1791,12 +1887,30 @@ } }, "assert": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz", - "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", + "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", "dev": true, "requires": { + "object-assign": "^4.1.1", "util": "0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "dev": true + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "dev": true, + "requires": { + "inherits": "2.0.1" + } + } } }, "assert-plus": { @@ -1818,9 +1932,9 @@ "dev": true }, "ast-types": { - "version": "0.11.5", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.11.5.tgz", - "integrity": "sha512-oJjo+5e7/vEc2FBK8gUalV0pba4L3VdBIs2EKhOLHLcOd2FgQIVQN9xb0eZ9IjEWyAL7vq6fGJxOvVvdCHNyMw==", + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.1.tgz", + "integrity": "sha512-b+EeK0WlzrSmpMw5jktWvQGxblpWnvMrV+vOp69RLjzGiHwWV0vgq75DPKtUjppKni3yWwSW8WLGV3Ch/XIWcQ==", "dev": true }, "async": { @@ -1830,9 +1944,9 @@ "dev": true }, "async-each": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", - "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", "dev": true }, "async-limiter": { @@ -1848,9 +1962,9 @@ "dev": true }, "atob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.1.tgz", - "integrity": "sha1-ri1acpR38onWDdf5amMUoi3Wwio=", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", "dev": true }, "aws-sign2": { @@ -1860,9 +1974,9 @@ "dev": true }, "aws4": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.7.0.tgz", - "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", + "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", "dev": true }, "babel-code-frame": { @@ -2009,14 +2123,15 @@ } }, "babel-loader": { - "version": "8.0.0-beta.2", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.0.0-beta.2.tgz", - "integrity": "sha512-P1zch1DvQy3RGmp/1CH78uPg5gTPQQ01S9r6ipCOWVamO0UIC8gnrx7m7LsUsXa470yB6IOZxhtEEwIUclRLNw==", + "version": "8.0.6", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.0.6.tgz", + "integrity": "sha512-4BmWKtBOBm13uoUwd08UwjZlaw3O9GWf456R9j+5YykFZ6LUIjIKLc0zEZf+hauxPOJs96C8k6FvYD09vWzhYw==", "dev": true, "requires": { - "find-cache-dir": "^1.0.0", + "find-cache-dir": "^2.0.0", "loader-utils": "^1.0.2", - "mkdirp": "^0.5.1" + "mkdirp": "^0.5.1", + "pify": "^4.0.1" } }, "babel-messages": { @@ -2173,15 +2288,9 @@ } }, "babylon": { - "version": "7.0.0-beta.40", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.40.tgz", - "integrity": "sha512-AVxF2EcxvGD5hhOuLTOLAXBb0VhwWpEX0HyHdAI2zU+AAP4qEwtQj8voz1JR3uclGai0rfcE+dCTHnNMOnimFg==", - "dev": true - }, - "bail": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.3.tgz", - "integrity": "sha512-1X8CnjFVQ+a+KW36uBNMTU5s8+v5FzeqrP7hTG5aTb4aPreSbZJlhwPon9VKMuEVgV++JM+SQrALY3kr7eswdg==", + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", "dev": true }, "balanced-match": { @@ -2242,31 +2351,19 @@ "is-data-descriptor": "^1.0.0", "kind-of": "^6.0.2" } - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", - "dev": true } } }, "base64-js": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-0.0.2.tgz", - "integrity": "sha1-Ak8Pcq+iW3X5wO5zzU9V7Bvtl4Q=", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", + "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==", "dev": true }, "base64url": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.0.tgz", - "integrity": "sha512-LIVmqIrIWuiqTvn4RzcrwCOuHo2DD6tKmKBPXXlr4p4n4l6BZBkwFTIa3zu1XkX5MbZgro4a6BvPi+n2Mns5Gg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", + "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", "dev": true }, "basic-auth": { @@ -2285,25 +2382,24 @@ "dev": true }, "bcrypt-pbkdf": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", - "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", "dev": true, - "optional": true, "requires": { "tweetnacl": "^0.14.3" } }, "big.js": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz", - "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", "dev": true }, "binary-extensions": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz", - "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=", + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", "dev": true }, "bl": { @@ -2316,9 +2412,9 @@ } }, "bluebird": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz", - "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==", + "version": "3.5.5", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.5.tgz", + "integrity": "sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w==", "dev": true }, "bn.js": { @@ -2364,20 +2460,44 @@ } }, "body-parser": { - "version": "1.18.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", - "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", + "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", "requires": { - "bytes": "3.0.0", + "bytes": "3.1.0", "content-type": "~1.0.4", "debug": "2.6.9", - "depd": "~1.1.1", - "http-errors": "~1.6.2", - "iconv-lite": "0.4.19", + "depd": "~1.1.2", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", "on-finished": "~2.3.0", - "qs": "6.5.1", - "raw-body": "2.3.2", - "type-is": "~1.6.15" + "qs": "6.7.0", + "raw-body": "2.4.0", + "type-is": "~1.6.17" + }, + "dependencies": { + "http-errors": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", + "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + } + }, + "qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" + } } }, "boolbase": { @@ -2386,35 +2506,10 @@ "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", "dev": true }, - "boom": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz", - "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=", - "dev": true, - "requires": { - "hoek": "4.x.x" - } - }, "bootstrap": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-3.3.7.tgz", - "integrity": "sha1-WjiTlFSfIzMIdaOxUGVldPip63E=", - "dev": true - }, - "bops": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/bops/-/bops-0.1.1.tgz", - "integrity": "sha1-Bi4CqNqoAfoQ8uXb5nQM/4Af4X4=", - "dev": true, - "requires": { - "base64-js": "0.0.2", - "to-utf8": "0.0.1" - } - }, - "boundary": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/boundary/-/boundary-1.0.1.tgz", - "integrity": "sha1-TWfcJgLAzBbdm85+v4fpSCkPWBI=", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-3.4.1.tgz", + "integrity": "sha512-yN5oZVmRCwe5aKwzRj6736nSmKDX7pLYwsXiCj/EYmo16hODaBiT4En5btW/jhBF/seV+XMx3aYwukYC3A49DA==", "dev": true }, "boxen": { @@ -2451,14 +2546,32 @@ } }, "braces": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", - "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, "requires": { - "expand-range": "^1.8.1", - "preserve": "^0.2.0", - "repeat-element": "^1.1.2" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } } }, "brorand": { @@ -2468,9 +2581,9 @@ "dev": true }, "browser-stdout": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.0.tgz", - "integrity": "sha1-81HTKWnTL6XXpVZxVCY9korjvR8=", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", "dev": true }, "browserify-aes": { @@ -2499,14 +2612,23 @@ } }, "browserify-des": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.1.tgz", - "integrity": "sha512-zy0Cobe3hhgpiOM32Tj7KQ3Vl91m0njwsjzZQK1L+JDf11dzP9qIvjreVinsvXrgfjhStXwUWAEpB9D7Gwmayw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", "dev": true, "requires": { "cipher-base": "^1.0.1", "des.js": "^1.0.0", - "inherits": "^2.0.1" + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + } } }, "browserify-rsa": { @@ -2544,13 +2666,14 @@ } }, "browserslist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-3.1.1.tgz", - "integrity": "sha512-zHGaPnTt70ywm+glR7uMJFZSl+ADGO67SgD2ae20L+Y3KJUeH4fVa89OkTqKCqAnXFE9mO4LTHBKBqKRlr7VNw==", + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.6.1.tgz", + "integrity": "sha512-1MC18ooMPRG2UuVFJTHFIAkk6mpByJfxCrnUyvSlu/hyQSFHMrlhM02SzNuCV+quTP4CKmqtOMAIjrifrpBJXQ==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30000809", - "electron-to-chromium": "^1.3.33" + "caniuse-lite": "^1.0.30000971", + "electron-to-chromium": "^1.3.137", + "node-releases": "^1.1.21" } }, "buffer": { @@ -2562,14 +2685,6 @@ "base64-js": "^1.0.2", "ieee754": "^1.1.4", "isarray": "^1.0.0" - }, - "dependencies": { - "base64-js": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", - "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==", - "dev": true - } } }, "buffer-crc32": { @@ -2585,9 +2700,9 @@ "dev": true }, "buffer-from": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.0.tgz", - "integrity": "sha512-c5mRlguI/Pe2dSZmpER62rSCu0ryKmWddzRYsuXc50U2/g8jMOulc31VZMa4mYx31U5xsmSOpDCgH88Vl9cDGQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", "dev": true }, "buffer-xor": { @@ -2596,12 +2711,6 @@ "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", "dev": true }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true - }, "builtin-status-codes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", @@ -2621,9 +2730,9 @@ } }, "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" }, "cacache": { "version": "10.0.4", @@ -2647,9 +2756,9 @@ }, "dependencies": { "glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", + "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", "dev": true, "requires": { "fs.realpath": "^1.0.0", @@ -2659,15 +2768,6 @@ "once": "^1.3.0", "path-is-absolute": "^1.0.0" } - }, - "rimraf": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", - "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", - "dev": true, - "requires": { - "glob": "^7.0.5" - } } } }, @@ -2686,14 +2786,6 @@ "to-object-path": "^0.3.0", "union-value": "^1.0.0", "unset-value": "^1.0.0" - }, - "dependencies": { - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - } } }, "caller-path": { @@ -2728,15 +2820,15 @@ } }, "caniuse-lite": { - "version": "1.0.30000810", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000810.tgz", - "integrity": "sha512-/0Q00Oie9C72P8zQHtFvzmkrMC3oOFUnMWjCy5F2+BE8lzICm91hQPhh0+XIsAFPKOe2Dh3pKgbRmU3EKxfldA==", + "version": "1.0.30000973", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000973.tgz", + "integrity": "sha512-/F3t/Yo8LEdRSEPCmI15fLu5vepVh9UCg/9inJXF5AAfW7xRRJkbaM2ut52iRMQMnGCLQouLbFdbOA+VEFOIsg==", "dev": true }, "capture-stack-trace": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz", - "integrity": "sha1-Sm+gc5nCa7pH8LJJa00PtAjFVQ0=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz", + "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==", "dev": true }, "caseless": { @@ -2745,12 +2837,6 @@ "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", "dev": true }, - "ccount": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.0.3.tgz", - "integrity": "sha512-Jt9tIBkRc9POUof7QA/VwWd+58fKkEEfI+/t1/eOlxKM7ZhrczNzMFefge7Ai+39y1pR/pP6cI19guHy3FSLmw==", - "dev": true - }, "center-align": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", @@ -2762,17 +2848,17 @@ } }, "chai": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.1.2.tgz", - "integrity": "sha1-D2RYS6ZC8PKs4oBiefTwbKI61zw=", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz", + "integrity": "sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw==", "dev": true, "requires": { - "assertion-error": "^1.0.1", - "check-error": "^1.0.1", - "deep-eql": "^3.0.0", + "assertion-error": "^1.1.0", + "check-error": "^1.0.2", + "deep-eql": "^3.0.1", "get-func-name": "^2.0.0", - "pathval": "^1.0.0", - "type-detect": "^4.0.0" + "pathval": "^1.1.0", + "type-detect": "^4.0.5" } }, "chai-arrays": { @@ -2791,19 +2877,19 @@ } }, "chai-json-schema": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/chai-json-schema/-/chai-json-schema-1.5.0.tgz", - "integrity": "sha1-aWBxnkD3H9Wzd8koLlyaRnmUdPY=", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/chai-json-schema/-/chai-json-schema-1.5.1.tgz", + "integrity": "sha512-TR/xPDxRhqwFFCWg1HgL8nNWbpNfUwaib6pBN++QKpnd0t+o3+MBvAn5CM1mpdUMaM76oJAtUjGKdjGad01lIA==", "dev": true, "requires": { "jsonpointer.js": "0.4.0", - "tv4": "~1.2.7" + "tv4": "^1.3.0" } }, "chalk": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz", - "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "requires": { "ansi-styles": "^3.2.1", @@ -2811,24 +2897,6 @@ "supports-color": "^5.3.0" } }, - "character-entities": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.2.tgz", - "integrity": "sha512-sMoHX6/nBiy3KKfC78dnEalnpn0Az0oSNvqUWYTtYrhRI5iUIYsROU48G+E+kMFQzqXaJ8kHJZ85n7y6/PHgwQ==", - "dev": true - }, - "character-entities-html4": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-1.1.2.tgz", - "integrity": "sha512-sIrXwyna2+5b0eB9W149izTPJk/KkJTg6mEzDGibwBUkyH1SbDa+nf515Ppdi3MaH35lW0JFJDWeq9Luzes1Iw==", - "dev": true - }, - "character-entities-legacy": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.2.tgz", - "integrity": "sha512-9NB2VbXtXYWdXzqrvAHykE/f0QJxzaKIpZ5QzNZrrgQ7Iyxr2vnfS8fCBNVW9nUEZE0lo57nxKRqnzY/dKrwlA==", - "dev": true - }, "character-parser": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", @@ -2838,12 +2906,6 @@ "is-regex": "^1.0.3" } }, - "character-reference-invalid": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.2.tgz", - "integrity": "sha512-7I/xceXfKyUJmSAn/jw8ve/9DyOP7XxufNYLI9Px7CmsKgEUaZLUTax6nZxGQtaoiZCjpu6cHPj20xC/vqRReQ==", - "dev": true - }, "chardet": { "version": "0.4.2", "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", @@ -2871,2980 +2933,3177 @@ } }, "chokidar": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.3.tgz", - "integrity": "sha512-zW8iXYZtXMx4kux/nuZVXjkLP+CyIK5Al5FHnj1OgTKGZfp4Oy6/ymtMSKFv3GD8DviEmUPmJg9eFdJ/JzudMg==", + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.6.tgz", + "integrity": "sha512-V2jUo67OKkc6ySiRpJrjlpJKl9kDuG+Xb8VgsGzb+aEouhgS1D0weyPU4lEzdAcsCAvrih2J2BqyXqHWvVLw5g==", "dev": true, "requires": { "anymatch": "^2.0.0", - "async-each": "^1.0.0", - "braces": "^2.3.0", - "fsevents": "^1.1.2", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "fsevents": "^1.2.7", "glob-parent": "^3.1.0", - "inherits": "^2.0.1", + "inherits": "^2.0.3", "is-binary-path": "^1.0.0", "is-glob": "^4.0.0", - "normalize-path": "^2.1.1", + "normalize-path": "^3.0.0", "path-is-absolute": "^1.0.0", - "readdirp": "^2.0.0", - "upath": "^1.0.0" + "readdirp": "^2.2.1", + "upath": "^1.1.1" }, "dependencies": { - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - } - }, - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "fsevents": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz", + "integrity": "sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==", "dev": true, + "optional": true, "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" + "nan": "^2.12.1", + "node-pre-gyp": "^0.12.0" }, "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "abbrev": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "aproba": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.5", + "bundled": true, "dev": true, + "optional": true, "requires": { - "is-extglob": "^2.1.0" + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" } - } - } - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true - }, - "is-glob": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz", - "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - } - } - }, - "chownr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz", - "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=", - "dev": true - }, - "chrome-trace-event": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-0.1.3.tgz", - "integrity": "sha512-sjndyZHrrWiu4RY7AkHgjn80GfAM2ZSzUkZLV/Js59Ldmh6JDThf0SUmOHU53rFu2rVxxfCzJ30Ukcfch3Gb/A==", - "dev": true - }, - "cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "circular-json": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", - "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", - "dev": true - }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - } - } - }, - "clean-css": { - "version": "3.4.28", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-3.4.28.tgz", - "integrity": "sha1-vxlF6C/ICPVWlebd6uwBQA79A/8=", - "dev": true, - "requires": { - "commander": "2.8.x", - "source-map": "0.4.x" - }, - "dependencies": { - "source-map": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", - "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", - "dev": true, - "requires": { - "amdefine": ">=0.0.4" - } - } - } - }, - "cli-boxes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", - "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", - "dev": true - }, - "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", - "dev": true, - "requires": { - "restore-cursor": "^2.0.0" - } - }, - "cli-width": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", - "dev": true - }, - "clipboard-polyfill": { - "version": "2.4.6", - "resolved": "https://registry.npmjs.org/clipboard-polyfill/-/clipboard-polyfill-2.4.6.tgz", - "integrity": "sha1-n88q2eCjoOdsJWGCsVneDmebJwk=", - "dev": true, - "requires": { - "es6-promise": "4.1.1" - }, - "dependencies": { - "es6-promise": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.1.1.tgz", - "integrity": "sha512-OaU1hHjgJf+b0NzsxCg7NdIYERD6Hy/PEmFLTjw+b65scuisG3Kt4QoTvJ66BBkPZ581gr0kpoVzKnxniM8nng==", - "dev": true - } - } - }, - "cliui": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", - "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", - "dev": true, - "requires": { - "center-align": "^0.1.1", - "right-align": "^0.1.1", - "wordwrap": "0.0.2" - } - }, - "clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", - "dev": true - }, - "clone-deep": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-0.3.0.tgz", - "integrity": "sha1-NIxhrpzb4O3+BT2R/0zFIdeQ7eg=", - "dev": true, - "requires": { - "for-own": "^1.0.0", - "is-plain-object": "^2.0.1", - "kind-of": "^3.2.2", - "shallow-clone": "^0.1.2" - }, - "dependencies": { - "for-own": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", - "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", - "dev": true, - "requires": { - "for-in": "^1.0.1" - } - } - } - }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "dev": true - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true - }, - "codemirror": { - "version": "5.35.0", - "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.35.0.tgz", - "integrity": "sha512-8HQICjZlDfe1ai7bvU6m2uHxuZuFgsUCdDRU9OHVB+2RTRd+FftN1ezVCqbquG0Fyq+wETqyadKhUX46DswSUQ==", - "dev": true - }, - "coffeescript": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/coffeescript/-/coffeescript-1.10.0.tgz", - "integrity": "sha1-56qDAZF+9iGzXYo580jc3R234z4=", - "dev": true - }, - "collapse-white-space": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.4.tgz", - "integrity": "sha512-YfQ1tAUZm561vpYD+5eyWN8+UsceQbSrqqlc/6zDY2gtAE+uZLSdkkovhnGpmCThsvKBFakq4EdY/FF93E8XIw==", - "dev": true - }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "dev": true, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, - "color-convert": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", - "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", - "dev": true, - "requires": { - "color-name": "^1.1.1" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "colors": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", - "dev": true - }, - "columnify": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/columnify/-/columnify-1.5.4.tgz", - "integrity": "sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs=", - "dev": true, - "requires": { - "strip-ansi": "^3.0.0", - "wcwidth": "^1.0.0" - } - }, - "combined-stream": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", - "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", - "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", - "dev": true, - "requires": { - "graceful-readlink": ">= 1.0.0" - } - }, - "common-tags": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.7.2.tgz", - "integrity": "sha512-joj9ZlUOjCrwdbmiLqafeUSgkUM74NqhLsZtSqDmhKudaIY197zTrb8JMl31fMnCUuxwFT23eC/oWvrZzDLRJQ==", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0" - } - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true - }, - "component-emitter": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", - "dev": true - }, - "compress-commons": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz", - "integrity": "sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=", - "dev": true, - "requires": { - "buffer-crc32": "^0.2.1", - "crc32-stream": "^2.0.0", - "normalize-path": "^2.0.0", - "readable-stream": "^2.0.0" - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz", - "integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "configstore": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", - "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", - "dev": true, - "requires": { - "dot-prop": "^4.1.0", - "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "unique-string": "^1.0.0", - "write-file-atomic": "^2.0.0", - "xdg-basedir": "^3.0.0" - } - }, - "connect": { - "version": "3.6.6", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.6.6.tgz", - "integrity": "sha1-Ce/2xVr3I24TcTWnJXSFi2eG9SQ=", - "dev": true, - "requires": { - "debug": "2.6.9", - "finalhandler": "1.1.0", - "parseurl": "~1.3.2", - "utils-merge": "1.0.1" - } - }, - "connect-livereload": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/connect-livereload/-/connect-livereload-0.5.4.tgz", - "integrity": "sha1-gBV9E3HJ83zBQDmrGJWXDRGdw7w=", - "dev": true - }, - "console-browserify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", - "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", - "dev": true, - "requires": { - "date-now": "^0.1.4" - } - }, - "constantinople": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-3.1.2.tgz", - "integrity": "sha512-yePcBqEFhLOqSBtwYOGGS1exHo/s1xjekXiinh4itpNQGCu4KA1euPh1fg07N2wMITZXQkBz75Ntdt1ctGZouw==", - "dev": true, - "requires": { - "@types/babel-types": "^7.0.0", - "@types/babylon": "^6.16.2", - "babel-types": "^6.26.0", - "babylon": "^6.18.0" - }, - "dependencies": { - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - } - } - }, - "constants-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", - "dev": true - }, - "content-disposition": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", - "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=" - }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" - }, - "continuable-cache": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/continuable-cache/-/continuable-cache-0.3.1.tgz", - "integrity": "sha1-vXJ6f67XfnH/OYWskzUakSczrQ8=", - "dev": true - }, - "convert-source-map": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", - "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=", - "dev": true - }, - "cookie": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", - "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" - }, - "copy-concurrently": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", - "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", - "dev": true, - "requires": { - "aproba": "^1.1.1", - "fs-write-stream-atomic": "^1.0.8", - "iferr": "^0.1.5", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.0" - }, - "dependencies": { - "rimraf": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", - "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", - "dev": true, - "requires": { - "glob": "^7.0.5" - } - } - } - }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true - }, - "core-js": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz", - "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=", - "dev": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "crc": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/crc/-/crc-3.5.0.tgz", - "integrity": "sha1-mLi6fUiWZbo5efWbITgTdBAaGWQ=", - "dev": true - }, - "crc32-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz", - "integrity": "sha1-483TtN8xaN10494/u8t7KX/pCPQ=", - "dev": true, - "requires": { - "crc": "^3.4.4", - "readable-stream": "^2.0.0" - } - }, - "create-ecdh": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", - "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "elliptic": "^6.0.0" - } - }, - "create-error-class": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", - "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", - "dev": true, - "requires": { - "capture-stack-trace": "^1.0.0" - } - }, - "create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "dev": true, - "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "crx": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/crx/-/crx-3.2.1.tgz", - "integrity": "sha1-Fyk+51790IxtHIs+F0nS1XV89Cs=", - "dev": true, - "requires": { - "archiver": "^1.1.0", - "commander": "^2.5.0", - "es6-promise": "^3.0.0", - "node-rsa": "^0.2.10" - } - }, - "crx-parser": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/crx-parser/-/crx-parser-0.1.2.tgz", - "integrity": "sha1-fu7tnt3JXiLBiTguNGJARKiaWm0=", - "dev": true - }, - "cryptiles": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz", - "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=", - "dev": true, - "requires": { - "boom": "5.x.x" - }, - "dependencies": { - "boom": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz", - "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==", - "dev": true, - "requires": { - "hoek": "4.x.x" - } - } - } - }, - "crypto-browserify": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", - "dev": true, - "requires": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" - } - }, - "crypto-random-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", - "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", - "dev": true - }, - "css-parse": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-1.7.0.tgz", - "integrity": "sha1-Mh9s9zeCpv91ERE5D8BeLGV9jJs=", - "dev": true - }, - "css-select": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", - "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", - "dev": true, - "requires": { - "boolbase": "~1.0.0", - "css-what": "2.1", - "domutils": "1.5.1", - "nth-check": "~1.0.1" - } - }, - "css-what": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.0.tgz", - "integrity": "sha1-lGfQMsOM+u+58teVASUwYvh/ob0=", - "dev": true - }, - "currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "dev": true, - "requires": { - "array-find-index": "^1.0.1" - } - }, - "cyclist": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-0.2.2.tgz", - "integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA=", - "dev": true - }, - "d": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", - "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", - "dev": true, - "requires": { - "es5-ext": "^0.10.9" - } - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "data-uri-to-buffer": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-1.2.0.tgz", - "integrity": "sha512-vKQ9DTQPN1FLYiiEEOQ6IBGFqvjCa5rSK3cWMy/Nespm5d/x3dGFT9UBZnkLxCwua/IXBi2TYnwTEpsOvhC4UQ==", - "dev": true - }, - "date-now": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", - "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", - "dev": true - }, - "dateformat": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz", - "integrity": "sha1-nxJLZ1lMk3/3BpMuSmQsyo27/uk=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1", - "meow": "^3.3.0" - } - }, - "debounce": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.1.0.tgz", - "integrity": "sha512-ZQVKfRVlwRfD150ndzEK8M90ABT+Y/JQKs4Y7U4MXdpuoUkkrr4DwKbVux3YjylA5bUMUj0Nc3pMxPJX6N2QQQ==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "dev": true - }, - "deep-eql": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", - "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", - "dev": true, - "requires": { - "type-detect": "^4.0.0" - } - }, - "deep-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", - "dev": true - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true - }, - "deep-for-each": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/deep-for-each/-/deep-for-each-1.0.6.tgz", - "integrity": "sha1-r6DOJJxYSSqXIFOUeKGNN+GxC64=", - "dev": true, - "requires": { - "is-plain-object": "^2.0.1" - } - }, - "deep-freeze": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/deep-freeze/-/deep-freeze-0.0.1.tgz", - "integrity": "sha1-OgsABd4YZygZ39OM0x+RF5yJPoQ=", - "dev": true - }, - "deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", - "dev": true - }, - "deepcopy": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/deepcopy/-/deepcopy-0.6.3.tgz", - "integrity": "sha1-Y0eA8vhlardxr4+oQx7RzO5Vx7A=", - "dev": true - }, - "deepmerge": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-2.1.0.tgz", - "integrity": "sha512-Q89Z26KAfA3lpPGhbF6XMfYAm3jIV3avViy6KOJ2JLzFbeWHOvPQUu5aSJIWXap3gDZC2y1eF5HXEPI2wGqgvw==", - "dev": true - }, - "defaults": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", - "dev": true, - "requires": { - "clone": "^1.0.2" - } - }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" + }, + "balanced-match": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "chownr": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "debug": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ms": "^2.1.1" + } + }, + "deep-extend": { + "version": "0.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "fs-minipass": { + "version": "1.2.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "glob": { + "version": "7.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "iconv-lite": { + "version": "0.4.24", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore-walk": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "ini": { + "version": "1.3.5", + "bundled": true, + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true, + "optional": true + }, + "minipass": { + "version": "2.3.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.2.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "needle": { + "version": "2.3.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "debug": "^4.1.0", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.12.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.1", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.2.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "optional": true + }, + "npm-packlist": { + "version": "1.4.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" + } + }, + "npmlog": { + "version": "4.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "wrappy": "1" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "osenv": { + "version": "0.1.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "process-nextick-args": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "rc": { + "version": "1.2.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.3.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "rimraf": { + "version": "2.6.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "glob": "^7.1.3" + } + }, + "safe-buffer": { + "version": "5.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "safer-buffer": { + "version": "2.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "sax": { + "version": "1.2.4", + "bundled": true, + "dev": true, + "optional": true + }, + "semver": { + "version": "5.7.0", + "bundled": true, + "dev": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "tar": { + "version": "4.4.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.3.4", + "minizlib": "^1.1.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.2" + } + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "wide-align": { + "version": "1.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "yallist": { + "version": "3.0.3", + "bundled": true, + "dev": true, + "optional": true + } } }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", "dev": true, "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" + "is-extglob": "^2.1.1" } }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "upath": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.2.tgz", + "integrity": "sha512-kXpym8nmDmlCBr7nKdIx8P2jNBa+pBpIUFRnKJ4dr8htyYGJFokkr2ZvERRtUN+9SY+JqXouNgUPtv6JQva/2Q==", "dev": true } } }, - "degenerator": { + "chownr": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", + "dev": true + }, + "chrome-trace-event": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", + "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, + "cipher-base": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-1.0.4.tgz", - "integrity": "sha1-/PSQo37OJmRk2cxDGrmMWBnO0JU=", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", "dev": true, "requires": { - "ast-types": "0.x.x", - "escodegen": "1.x.x", - "esprima": "3.x.x" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "circular-json": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", + "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", + "dev": true + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" }, "dependencies": { - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", - "dev": true + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } } } }, - "del": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", - "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", + "clean-css": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.1.tgz", + "integrity": "sha512-4ZxI6dy4lrY6FHzfiy1aEOXgu4LIsW2MhwG0VBKdcoGoH/XLFgaHSdLTGr4O8Be6A8r3MOphEiI8Gc1n0ecf3g==", "dev": true, "requires": { - "globby": "^5.0.0", - "is-path-cwd": "^1.0.0", - "is-path-in-cwd": "^1.0.0", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "rimraf": "^2.2.8" + "source-map": "~0.6.0" }, "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true } } }, - "delayed-stream": { + "cli-boxes": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", + "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", "dev": true }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" - }, - "des.js": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", - "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", "dev": true, "requires": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" + "restore-cursor": "^2.0.0" } }, - "desandro-matches-selector": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/desandro-matches-selector/-/desandro-matches-selector-2.0.2.tgz", - "integrity": "sha1-cXvu1NwT59jzdi9wem1YpndCGOE=", + "cli-width": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", + "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", "dev": true }, - "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + "clipboard-polyfill": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/clipboard-polyfill/-/clipboard-polyfill-2.8.1.tgz", + "integrity": "sha512-2qclMYSM/L5Wv8mNeF2rvvtaKFJiG3y5mI2wwsFIUt0yE2hWjNg6qvsRo6D8TTaLTNXDfEI47TyaxSxjwD8ADQ==", + "dev": true }, - "detect-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", - "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "cliui": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", + "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", "dev": true, "requires": { - "repeating": "^2.0.0" + "center-align": "^0.1.1", + "right-align": "^0.1.1", + "wordwrap": "0.0.2" } }, - "diff": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.3.1.tgz", - "integrity": "sha512-MKPHZDMB0o6yHyDryUOScqZibp914ksXwAMYMTHj6KO8UeKsRYNJD3oNCKjTqZon+V488P7N/HzXF8t7ZR95ww==", + "clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", "dev": true }, - "diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - } - }, - "dispensary": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/dispensary/-/dispensary-0.18.0.tgz", - "integrity": "sha512-ikVxjigcj4leoPgjqYcHV1YhmLEZ5eXMq30CIPTf1BniWrH1C0X35F5iVCa4U2/JXZYcQJyHWniSRSOpM+hiNw==", + "clone-deep": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-0.3.0.tgz", + "integrity": "sha1-NIxhrpzb4O3+BT2R/0zFIdeQ7eg=", "dev": true, "requires": { - "array-from": "~2.1.1", - "async": "~2.6.0", - "natural-compare-lite": "~1.4.0", - "pino": "~4.16.1", - "request": "~2.85.0", - "semver": "~5.5.0", - "sha.js": "~2.4.4", - "source-map-support": "~0.5.4", - "yargs": "~11.0.0" + "for-own": "^1.0.0", + "is-plain-object": "^2.0.1", + "kind-of": "^3.2.2", + "shallow-clone": "^0.1.2" }, "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", - "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", - "dev": true, - "requires": { - "lodash": "^4.17.10" - } - }, - "cliui": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", - "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", - "dev": true, - "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" - } - }, - "lodash": { - "version": "4.17.10", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", - "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "source-map-support": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.6.tgz", - "integrity": "sha512-N4KXEz7jcKqPf2b2vZF11lQIz9W5ZMuUcIOGj243lduidkf2fjkVKJS9vNxVWn3u/uxX38AcE8U9nnH9FPcq+g==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - }, - "y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", - "dev": true - }, - "yargs": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-11.0.0.tgz", - "integrity": "sha512-Rjp+lMYQOWtgqojx1dEWorjCofi1YN7AoFvYV7b1gx/7dAAeuI4kN5SZiEvr0ZmsZTOpDRcCqrpI10L31tFkBw==", + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "cliui": "^4.0.0", - "decamelize": "^1.1.1", - "find-up": "^2.1.0", - "get-caller-file": "^1.0.1", - "os-locale": "^2.0.0", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^2.0.0", - "which-module": "^2.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^9.0.2" + "is-buffer": "^1.1.5" } } } }, - "doctoc": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/doctoc/-/doctoc-1.3.1.tgz", - "integrity": "sha1-8BLjYD4xViVMLvIqyIxxkPVUJro=", + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true + }, + "codemirror": { + "version": "5.47.0", + "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.47.0.tgz", + "integrity": "sha512-kV49Fr+NGFHFc/Imsx6g180hSlkGhuHxTSDDmDHOuyln0MQYFLixDY4+bFkBVeCEiepYfDimAF/e++9jPJk4QA==", + "dev": true + }, + "coffeescript": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/coffeescript/-/coffeescript-1.10.0.tgz", + "integrity": "sha1-56qDAZF+9iGzXYo580jc3R234z4=", + "dev": true + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "colors": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", + "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", + "dev": true + }, + "columnify": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/columnify/-/columnify-1.5.4.tgz", + "integrity": "sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs=", "dev": true, "requires": { - "anchor-markdown-header": "^0.5.5", - "htmlparser2": "~3.9.2", - "markdown-to-ast": "~3.4.0", - "minimist": "~1.2.0", - "underscore": "~1.8.3", - "update-section": "^0.3.0" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } + "strip-ansi": "^3.0.0", + "wcwidth": "^1.0.0" } }, - "doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "dev": true, "requires": { - "esutils": "^2.0.2" + "delayed-stream": "~1.0.0" } }, - "doctypes": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", - "integrity": "sha1-6oCxBqh1OHdOijpKWv4pPeSJ4Kk=", - "dev": true - }, - "dom-serializer": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz", - "integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=", + "commander": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", + "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", "dev": true, "requires": { - "domelementtype": "~1.1.1", - "entities": "~1.1.1" - }, - "dependencies": { - "domelementtype": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", - "integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs=", - "dev": true - } + "graceful-readlink": ">= 1.0.0" } }, - "dom-walk": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.1.tgz", - "integrity": "sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg=", + "common-tags": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.0.tgz", + "integrity": "sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw==", "dev": true }, - "domain-browser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", - "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", "dev": true }, - "domelementtype": { + "component-emitter": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz", - "integrity": "sha1-sXrtguirWeUt2cGbF1bg/BhyBMI=", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", "dev": true }, - "domhandler": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", - "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "compress-commons": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz", + "integrity": "sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=", "dev": true, "requires": { - "domelementtype": "1" + "buffer-crc32": "^0.2.1", + "crc32-stream": "^2.0.0", + "normalize-path": "^2.0.0", + "readable-stream": "^2.0.0" } }, - "domutils": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", "dev": true, "requires": { - "dom-serializer": "0", - "domelementtype": "1" + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" } }, - "dot-prop": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", - "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", + "configstore": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", + "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", "dev": true, "requires": { - "is-obj": "^1.0.0" + "dot-prop": "^4.1.0", + "graceful-fs": "^4.1.2", + "make-dir": "^1.0.0", + "unique-string": "^1.0.0", + "write-file-atomic": "^2.0.0", + "xdg-basedir": "^3.0.0" + }, + "dependencies": { + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + } } }, - "dtrace-provider": { - "version": "0.8.7", - "resolved": "https://registry.npmjs.org/dtrace-provider/-/dtrace-provider-0.8.7.tgz", - "integrity": "sha1-3JObTT4GIM/gwc2APQ0tftBP/QQ=", + "connect": { + "version": "3.6.6", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.6.6.tgz", + "integrity": "sha1-Ce/2xVr3I24TcTWnJXSFi2eG9SQ=", "dev": true, - "optional": true, "requires": { - "nan": "^2.10.0" + "debug": "2.6.9", + "finalhandler": "1.1.0", + "parseurl": "~1.3.2", + "utils-merge": "1.0.1" } }, - "duplexer3": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "connect-livereload": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/connect-livereload/-/connect-livereload-0.5.4.tgz", + "integrity": "sha1-gBV9E3HJ83zBQDmrGJWXDRGdw7w=", "dev": true }, - "duplexify": { - "version": "3.5.4", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.5.4.tgz", - "integrity": "sha512-JzYSLYMhoVVBe8+mbHQ4KgpvHpm0DZpJuL8PY93Vyv1fW7jYJ90LoXa1di/CVbJM+TgMs91rbDapE/RNIfnJsA==", + "console-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", + "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", "dev": true, "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" + "date-now": "^0.1.4" } }, - "ecc-jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", - "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", + "constantinople": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-3.1.2.tgz", + "integrity": "sha512-yePcBqEFhLOqSBtwYOGGS1exHo/s1xjekXiinh4itpNQGCu4KA1euPh1fg07N2wMITZXQkBz75Ntdt1ctGZouw==", "dev": true, - "optional": true, "requires": { - "jsbn": "~0.1.0" + "@types/babel-types": "^7.0.0", + "@types/babylon": "^6.16.2", + "babel-types": "^6.26.0", + "babylon": "^6.18.0" } }, - "ecdsa-sig-formatter": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.10.tgz", - "integrity": "sha1-HFlQAPBKiJffuFAAiSoPTDOvhsM=", - "dev": true, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", + "dev": true + }, + "content-disposition": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", + "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", "requires": { - "safe-buffer": "^5.0.1" + "safe-buffer": "5.1.2" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + } } }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" }, - "electron-to-chromium": { - "version": "1.3.34", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.34.tgz", - "integrity": "sha1-2TSY9AORuwwWpgPYJBuZUUBBV+0=", + "continuable-cache": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/continuable-cache/-/continuable-cache-0.3.1.tgz", + "integrity": "sha1-vXJ6f67XfnH/OYWskzUakSczrQ8=", "dev": true }, - "elliptic": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz", - "integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=", + "convert-source-map": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", + "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=", + "dev": true + }, + "cookie": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", + "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==" + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "copy-concurrently": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", + "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", "dev": true, "requires": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" } }, - "email-validator": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/email-validator/-/email-validator-2.0.4.tgz", - "integrity": "sha512-gYCwo7kh5S3IDyZPLZf6hSS0MnZT8QmJFqYvbqlDZSbwdZlY6QZWxJ4i/6UhITOJ4XzyI647Bm2MXKCLqnJ4nQ==", + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", "dev": true }, - "emoji-regex": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-6.1.3.tgz", - "integrity": "sha1-7HmjlpsC0uzytyJUJ5v5m8eoOTI=", + "core-js": { + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz", + "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=", "dev": true }, - "emojis-list": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", - "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", + "core-js-compat": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.1.3.tgz", + "integrity": "sha512-EP018pVhgwsKHz3YoN1hTq49aRe+h017Kjz0NQz3nXV0cCRMvH3fLQl+vEPGr4r4J5sk4sU3tUC7U1aqTCeJeA==", + "dev": true, + "requires": { + "browserslist": "^4.6.0", + "core-js-pure": "3.1.3", + "semver": "^6.1.0" + }, + "dependencies": { + "semver": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.1.1.tgz", + "integrity": "sha512-rWYq2e5iYW+fFe/oPPtYJxYgjBm8sC4rmoGdUOgBB7VnwKt6HrL793l2voH1UlsyYZpJ4g0wfjnTEO1s1NP2eQ==", + "dev": true + } + } + }, + "core-js-pure": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.1.3.tgz", + "integrity": "sha512-k3JWTrcQBKqjkjI0bkfXS0lbpWPxYuHWfMMjC1VDmzU4Q58IwSbuXSo99YO/hUHlw/EB4AlfA2PVxOGkrIq6dA==", "dev": true }, - "encodeurl": { + "core-util-is": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "crc": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/crc/-/crc-3.5.0.tgz", + "integrity": "sha1-mLi6fUiWZbo5efWbITgTdBAaGWQ=", + "dev": true }, - "encoding": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", - "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", + "crc32-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz", + "integrity": "sha1-483TtN8xaN10494/u8t7KX/pCPQ=", "dev": true, "requires": { - "iconv-lite": "~0.4.13" + "crc": "^3.4.4", + "readable-stream": "^2.0.0" } }, - "end-of-stream": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", - "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "create-ecdh": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", + "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", "dev": true, "requires": { - "once": "^1.4.0" + "bn.js": "^4.1.0", + "elliptic": "^6.0.0" } }, - "enhanced-resolve": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.0.0.tgz", - "integrity": "sha512-jox/62b2GofV1qTUQTMPEJSDIGycS43evqYzD/KVtEb9OCoki9cnacUPxCrZa7JfPzZSYOCZhu9O9luaMxAX8g==", + "create-error-class": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", + "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.4.0", - "tapable": "^1.0.0" + "capture-stack-trace": "^1.0.0" } }, - "entities": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", - "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=", - "dev": true - }, - "errno": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", - "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", "dev": true, "requires": { - "prr": "~1.0.1" + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" } }, - "error": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/error/-/error-7.0.2.tgz", - "integrity": "sha1-pfdf/02ZJhJt2sDqXcOOaJFTywI=", + "create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", "dev": true, "requires": { - "string-template": "~0.2.1", - "xtend": "~4.0.0" + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" } }, - "error-ex": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", - "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", "dev": true, "requires": { - "is-arrayish": "^0.2.1" + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" } }, - "es5-ext": { - "version": "0.10.44", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.44.tgz", - "integrity": "sha512-TO4Vt9IhW3FzDKLDOpoA8VS9BCV4b9WTf6BqvMOgfoa8wX73F3Kh3y2J7yTstTaXlQ0k1vq4DH2vw6RSs42z+g==", + "crx": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/crx/-/crx-3.2.1.tgz", + "integrity": "sha1-Fyk+51790IxtHIs+F0nS1XV89Cs=", "dev": true, "requires": { - "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.1", - "next-tick": "1" + "archiver": "^1.1.0", + "commander": "^2.5.0", + "es6-promise": "^3.0.0", + "node-rsa": "^0.2.10" } }, - "es6-error": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "crx-parser": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/crx-parser/-/crx-parser-0.1.2.tgz", + "integrity": "sha1-fu7tnt3JXiLBiTguNGJARKiaWm0=", "dev": true }, - "es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", "dev": true, "requires": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" } }, - "es6-map": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", - "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", + "crypto-random-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", + "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", + "dev": true + }, + "css-parse": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-1.7.0.tgz", + "integrity": "sha1-Mh9s9zeCpv91ERE5D8BeLGV9jJs=", + "dev": true + }, + "css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", "dev": true, "requires": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-set": "~0.1.5", - "es6-symbol": "~3.1.1", - "event-emitter": "~0.3.5" + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" } }, - "es6-promise": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz", - "integrity": "sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM=", + "css-what": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", "dev": true }, - "es6-promisify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", - "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", "dev": true, "requires": { - "es6-promise": "^4.0.3" - }, - "dependencies": { - "es6-promise": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.4.tgz", - "integrity": "sha512-/NdNZVJg+uZgtm9eS3O6lrOLYmQag2DjdEXuPaHlZ6RuVqgqaVZfgYCepEIKsLqwdQArOPtC3XzRLqGGfT8KQQ==", - "dev": true - } + "array-find-index": "^1.0.1" } }, - "es6-set": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", - "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", + "cyclist": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-0.2.2.tgz", + "integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA=", + "dev": true + }, + "d": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", + "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", "dev": true, "requires": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-symbol": "3.1.1", - "event-emitter": "~0.3.5" + "es5-ext": "^0.10.9" } }, - "es6-symbol": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", - "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", "dev": true, "requires": { - "d": "1", - "es5-ext": "~0.10.14" + "assert-plus": "^1.0.0" } }, - "es6-weak-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", - "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", + "data-uri-to-buffer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-2.0.1.tgz", + "integrity": "sha512-OkVVLrerfAKZlW2ZZ3Ve2y65jgiWqBKsTfUIAFbn8nVbPcCZg6l6gikKlEYv0kXcmzqGm6mFq/Jf2vriuEkv8A==", "dev": true, "requires": { - "d": "1", - "es5-ext": "^0.10.14", - "es6-iterator": "^2.0.1", - "es6-symbol": "^3.1.1" + "@types/node": "^8.0.7" + }, + "dependencies": { + "@types/node": { + "version": "8.10.49", + "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.49.tgz", + "integrity": "sha512-YX30JVx0PvSmJ3Eqr74fYLGeBxD+C7vIL20ek+GGGLJeUbVYRUW3EzyAXpIRA0K8c8o0UWqR/GwEFYiFoz1T8w==", + "dev": true + } } }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "date-now": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", + "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", "dev": true }, - "escodegen": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.9.1.tgz", - "integrity": "sha512-6hTjO1NAWkHnDk3OqQ4YrCuwwmGHL9S3nPlzBOUG/R44rda3wLNrfvQ5fkSGjyhHFKM7ALPKcKGrwvCLe0lC7Q==", + "dateformat": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz", + "integrity": "sha1-nxJLZ1lMk3/3BpMuSmQsyo27/uk=", "dev": true, "requires": { - "esprima": "^3.1.3", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" - }, - "dependencies": { - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true - } + "get-stdin": "^4.0.1", + "meow": "^3.3.0" } }, - "escope": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", - "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", - "dev": true, + "debounce": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.1.0.tgz", + "integrity": "sha512-ZQVKfRVlwRfD150ndzEK8M90ABT+Y/JQKs4Y7U4MXdpuoUkkrr4DwKbVux3YjylA5bUMUj0Nc3pMxPJX6N2QQQ==", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "requires": { - "es6-map": "^0.1.3", - "es6-weak-map": "^2.0.1", - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" + "ms": "2.0.0" } }, - "eslint": { - "version": "4.19.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-4.19.1.tgz", - "integrity": "sha512-bT3/1x1EbZB7phzYu7vCr1v3ONuzDtX8WjuM9c0iYxe+cq+pwcKEoQjl7zd3RpC6YOLgnSy3cTN58M2jcoPDIQ==", + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true + }, + "deep-eql": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", + "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", "dev": true, "requires": { - "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.1.0", - "doctrine": "^2.1.0", - "eslint-scope": "^3.7.1", - "eslint-visitor-keys": "^1.0.0", - "espree": "^3.5.4", - "esquery": "^1.0.0", - "esutils": "^2.0.2", - "file-entry-cache": "^2.0.0", - "functional-red-black-tree": "^1.0.1", - "glob": "^7.1.2", - "globals": "^11.0.1", - "ignore": "^3.3.3", - "imurmurhash": "^0.1.4", - "inquirer": "^3.0.6", - "is-resolvable": "^1.0.0", - "js-yaml": "^3.9.1", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.3.0", - "lodash": "^4.17.4", - "minimatch": "^3.0.2", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.2", - "path-is-inside": "^1.0.2", - "pluralize": "^7.0.0", - "progress": "^2.0.0", - "regexpp": "^1.0.1", - "require-uncached": "^1.0.3", - "semver": "^5.3.0", - "strip-ansi": "^4.0.0", - "strip-json-comments": "~2.0.1", - "table": "4.0.2", - "text-table": "~0.2.0" - }, - "dependencies": { - "ajv": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", - "dev": true, - "requires": { - "co": "^4.6.0", - "fast-deep-equal": "^1.0.0", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.3.0" - } - }, - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "esprima": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", - "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==", - "dev": true - }, - "glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "js-yaml": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.11.0.tgz", - "integrity": "sha512-saJstZWv7oNeOyBh3+Dx1qWzhW0+e6/8eDzo7p5rDFqxntSztloLtuKu+Ejhtq82jsilwOIZYsCz+lIjthg1Hw==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } + "type-detect": "^4.0.0" } }, - "eslint-plugin-no-unsafe-innerhtml": { - "version": "1.0.16", - "resolved": "https://registry.npmjs.org/eslint-plugin-no-unsafe-innerhtml/-/eslint-plugin-no-unsafe-innerhtml-1.0.16.tgz", - "integrity": "sha1-fQKHjI6b95FriINtWsEitC8VGTI=", + "deep-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", + "dev": true + }, + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true + }, + "deep-for-each": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/deep-for-each/-/deep-for-each-2.0.3.tgz", + "integrity": "sha512-Y9mu+rplGcNZ7veer+5rqcdI9w3aPb7/WyE/nYnsuPevaE2z5YuC2u7/Gz/hIKsa0zo8sE8gKoBimSNsO/sr+A==", "dev": true, "requires": { - "eslint": "^3.7.1" - }, - "dependencies": { - "ajv": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", - "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", - "dev": true, - "requires": { - "co": "^4.6.0", - "json-stable-stringify": "^1.0.1" - } - }, - "ajv-keywords": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz", - "integrity": "sha1-MU3QpLM2j609/NxU7eYXG4htrzw=", - "dev": true - }, - "ansi-escapes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", - "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", - "dev": true - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "cli-cursor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", - "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", - "dev": true, - "requires": { - "restore-cursor": "^1.0.1" - } - }, - "eslint": { - "version": "3.19.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-3.19.0.tgz", - "integrity": "sha1-yPxiAcf0DdCJQbh8CFdnOGpnmsw=", - "dev": true, - "requires": { - "babel-code-frame": "^6.16.0", - "chalk": "^1.1.3", - "concat-stream": "^1.5.2", - "debug": "^2.1.1", - "doctrine": "^2.0.0", - "escope": "^3.6.0", - "espree": "^3.4.0", - "esquery": "^1.0.0", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "file-entry-cache": "^2.0.0", - "glob": "^7.0.3", - "globals": "^9.14.0", - "ignore": "^3.2.0", - "imurmurhash": "^0.1.4", - "inquirer": "^0.12.0", - "is-my-json-valid": "^2.10.0", - "is-resolvable": "^1.0.0", - "js-yaml": "^3.5.1", - "json-stable-stringify": "^1.0.0", - "levn": "^0.3.0", - "lodash": "^4.0.0", - "mkdirp": "^0.5.0", - "natural-compare": "^1.4.0", - "optionator": "^0.8.2", - "path-is-inside": "^1.0.1", - "pluralize": "^1.2.1", - "progress": "^1.1.8", - "require-uncached": "^1.0.2", - "shelljs": "^0.7.5", - "strip-bom": "^3.0.0", - "strip-json-comments": "~2.0.1", - "table": "^3.7.8", - "text-table": "~0.2.0", - "user-home": "^2.0.0" - } - }, - "figures": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "lodash.isplainobject": "^4.0.6" + } + }, + "deep-freeze": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/deep-freeze/-/deep-freeze-0.0.1.tgz", + "integrity": "sha1-OgsABd4YZygZ39OM0x+RF5yJPoQ=", + "dev": true + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "deepcopy": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/deepcopy/-/deepcopy-0.6.3.tgz", + "integrity": "sha1-Y0eA8vhlardxr4+oQx7RzO5Vx7A=", + "dev": true + }, + "deepmerge": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-2.2.1.tgz", + "integrity": "sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==", + "dev": true + }, + "defaults": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", + "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "dev": true, + "requires": { + "clone": "^1.0.2" + } + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "requires": { + "object-keys": "^1.0.12" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "escape-string-regexp": "^1.0.5", - "object-assign": "^4.1.0" + "kind-of": "^6.0.0" } }, - "globals": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", - "dev": true - }, - "inquirer": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-0.12.0.tgz", - "integrity": "sha1-HvK/1jUE3wvHV4X/+MLEHfEvB34=", + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "ansi-escapes": "^1.1.0", - "ansi-regex": "^2.0.0", - "chalk": "^1.0.0", - "cli-cursor": "^1.0.1", - "cli-width": "^2.0.0", - "figures": "^1.3.5", - "lodash": "^4.3.0", - "readline2": "^1.0.1", - "run-async": "^0.1.0", - "rx-lite": "^3.1.2", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.0", - "through": "^2.3.6" + "kind-of": "^6.0.0" } }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "number-is-nan": "^1.0.0" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } - }, - "onetime": { - "version": "1.1.0", - "resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", - "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", - "dev": true - }, - "pluralize": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-1.2.1.tgz", - "integrity": "sha1-0aIUg/0iu0HlihL6NCGCMUCJfEU=", + } + } + }, + "degenerator": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-1.0.4.tgz", + "integrity": "sha1-/PSQo37OJmRk2cxDGrmMWBnO0JU=", + "dev": true, + "requires": { + "ast-types": "0.x.x", + "escodegen": "1.x.x", + "esprima": "3.x.x" + }, + "dependencies": { + "esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", "dev": true - }, - "progress": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", - "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=", + } + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" + }, + "des.js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", + "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "desandro-matches-selector": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/desandro-matches-selector/-/desandro-matches-selector-2.0.2.tgz", + "integrity": "sha1-cXvu1NwT59jzdi9wem1YpndCGOE=", + "dev": true + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "detect-file": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", + "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", + "dev": true + }, + "detect-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", + "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "dev": true, + "requires": { + "repeating": "^2.0.0" + } + }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "dispensary": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/dispensary/-/dispensary-0.27.0.tgz", + "integrity": "sha512-bG9pSBPH8wTEaugUIBAbBvBHynqOoGxefOT4YXlPoUc9AxQGDUO1uFHafDVWnsGWiSYvTUga0aZ9xThzfGQtlQ==", + "dev": true, + "requires": { + "array-from": "~2.1.1", + "async": "~2.6.0", + "natural-compare-lite": "~1.4.0", + "pino": "~5.8.0", + "request": "~2.88.0", + "sha.js": "~2.4.4", + "source-map-support": "~0.5.4", + "yargs": "~12.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", "dev": true }, - "restore-cursor": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", - "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", + "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", "dev": true, "requires": { - "exit-hook": "^1.0.0", - "onetime": "^1.0.0" + "lodash": "^4.17.11" } }, - "run-async": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-0.1.0.tgz", - "integrity": "sha1-yK1KXhEGYeQCp9IbUw4AnyX444k=", + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", "dev": true, "requires": { - "once": "^1.3.0" + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" } }, - "rx-lite": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-3.1.2.tgz", - "integrity": "sha1-Gc5QLKVyZl87ZHsQk5+X/RYV8QI=", - "dev": true - }, - "shelljs": { - "version": "0.7.8", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.8.tgz", - "integrity": "sha1-3svPh0sNHl+3LhSxZKloMEjprLM=", + "pino": { + "version": "5.8.1", + "resolved": "https://registry.npmjs.org/pino/-/pino-5.8.1.tgz", + "integrity": "sha512-7bVFzUw3ffIfOM3t7MuQ9KsH+wX5bdGdQhGfccKgleoY7qG4FO3CmVSjywlFmmYGyMOISi1LDGC6JMEH7XkZJg==", "dev": true, "requires": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" + "fast-json-parse": "^1.0.3", + "fast-redact": "^1.2.0", + "fast-safe-stringify": "^2.0.6", + "flatstr": "^1.0.5", + "pino-std-serializers": "^2.3.0", + "pump": "^3.0.0", + "quick-format-unescaped": "^3.0.0", + "sonic-boom": "^0.6.1" } }, - "slice-ansi": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", - "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=", - "dev": true - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", "dev": true, "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "end-of-stream": "^1.1.0", + "once": "^1.3.1" } }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } }, - "table": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/table/-/table-3.8.3.tgz", - "integrity": "sha1-K7xULw/amGGnVdOUf+/Ys/UThV8=", + "yargs": { + "version": "12.0.5", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", + "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", "dev": true, "requires": { - "ajv": "^4.7.0", - "ajv-keywords": "^1.0.0", - "chalk": "^1.1.1", - "lodash": "^4.0.0", - "slice-ansi": "0.0.4", - "string-width": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } + "cliui": "^4.0.0", + "decamelize": "^1.2.0", + "find-up": "^3.0.0", + "get-caller-file": "^1.0.1", + "os-locale": "^3.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^11.1.1" } } } }, - "eslint-scope": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.1.tgz", - "integrity": "sha1-PWPD7f2gLgbgGkUq2IyqzHzctug=", + "dockerfile-ast": { + "version": "0.0.12", + "resolved": "https://registry.npmjs.org/dockerfile-ast/-/dockerfile-ast-0.0.12.tgz", + "integrity": "sha512-cIV8oXkAxpIuN5XgG0TGg07nLDgrj4olkfrdT77OTA3VypscsYHBUg/FjHxW9K3oA+CyH4Th/qtoMgTVpzSobw==", "dev": true, "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" + "vscode-languageserver-types": "^3.5.0" } }, - "eslint-visitor-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", - "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", - "dev": true + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } }, - "esm": { - "version": "3.0.47", - "resolved": "https://registry.npmjs.org/esm/-/esm-3.0.47.tgz", - "integrity": "sha512-SkYEU0ZR/4hj9QxMAIk1oU2Y20bJOby8QvCgQMHVBwWSNFXbB7z8q1I7lp4ppn1Nwbx9xLKbB+atRbMSMd7ICQ==", + "doctypes": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", + "integrity": "sha1-6oCxBqh1OHdOijpKWv4pPeSJ4Kk=", "dev": true }, - "espree": { - "version": "3.5.4", - "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz", - "integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==", + "dom-serializer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", + "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", "dev": true, "requires": { - "acorn": "^5.5.0", - "acorn-jsx": "^3.0.0" - }, - "dependencies": { - "acorn": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.6.0.tgz", - "integrity": "sha512-QatFQ4C0n+PLqemyC6zXEv04tSqRR0hRqe+uGKPEVgKe2G8kl8wJvHzRYWwz6vqqEqt6idPVMFojZ4P1zlyAzQ==", - "dev": true - } + "domelementtype": "^1.3.0", + "entities": "^1.1.1" } }, - "esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", + "dom-walk": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.1.tgz", + "integrity": "sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg=", "dev": true }, - "esquery": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", - "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", + "domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "dev": true + }, + "domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "dev": true + }, + "domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", "dev": true, "requires": { - "estraverse": "^4.0.0" + "domelementtype": "1" } }, - "esrecurse": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", "dev": true, "requires": { - "estraverse": "^4.1.0" + "dom-serializer": "0", + "domelementtype": "1" } }, - "estraverse": { + "dot-prop": { "version": "4.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", - "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", - "dev": true + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", + "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", + "dev": true, + "requires": { + "is-obj": "^1.0.0" + } }, - "esutils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dtrace-provider": { + "version": "0.8.7", + "resolved": "https://registry.npmjs.org/dtrace-provider/-/dtrace-provider-0.8.7.tgz", + "integrity": "sha1-3JObTT4GIM/gwc2APQ0tftBP/QQ=", + "dev": true, + "optional": true, + "requires": { + "nan": "^2.10.0" + } + }, + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", "dev": true }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + "duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "dev": true, + "requires": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } }, - "ev-emitter": { + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "ecdsa-sig-formatter": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", + "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "ee-first": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ev-emitter/-/ev-emitter-1.1.1.tgz", - "integrity": "sha512-ipiDYhdQSCZ4hSbX4rMW+XzNKMD1prg/sTvoVmSLkuQ1MVlwjJQQA+sW8tMYR3BLUr9KjodFV4pvzunvRhd33Q==", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "electron-to-chromium": { + "version": "1.3.146", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.146.tgz", + "integrity": "sha512-BrUq08sx7eR4PCwLbjFxXmjcbDro6DSoc1pN8VCxq76U+o9JQzJlWH/NVtcpAqcktwpE5CVvMyqHqTQfCETNoQ==", "dev": true }, - "event-emitter": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", - "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "elliptic": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.1.tgz", + "integrity": "sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ==", "dev": true, "requires": { - "d": "1", - "es5-ext": "~0.10.14" + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" } }, - "event-to-promise": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/event-to-promise/-/event-to-promise-0.8.0.tgz", - "integrity": "sha1-S4TxF3K28l93Uvx02XFTGsb1tiY=", + "email-validator": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/email-validator/-/email-validator-2.0.4.tgz", + "integrity": "sha512-gYCwo7kh5S3IDyZPLZf6hSS0MnZT8QmJFqYvbqlDZSbwdZlY6QZWxJ4i/6UhITOJ4XzyI647Bm2MXKCLqnJ4nQ==", "dev": true }, - "eventemitter2": { - "version": "0.4.14", - "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz", - "integrity": "sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas=", + "emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", "dev": true }, - "events": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", - "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=", - "dev": true + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" }, - "evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "encoding": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", + "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", "dev": true, "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" + "iconv-lite": "~0.4.13" } }, - "execa": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "end-of-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", + "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", "dev": true, "requires": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" + "once": "^1.4.0" } }, - "exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", - "dev": true - }, - "exit-hook": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", - "integrity": "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=", - "dev": true - }, - "expand-brackets": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", - "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "enhanced-resolve": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz", + "integrity": "sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==", "dev": true, "requires": { - "is-posix-bracket": "^0.1.0" + "graceful-fs": "^4.1.2", + "memory-fs": "^0.4.0", + "tapable": "^1.0.0" } }, - "expand-range": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", - "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "dev": true + }, + "errno": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", + "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", "dev": true, "requires": { - "fill-range": "^2.1.0" + "prr": "~1.0.1" } }, - "express": { - "version": "4.16.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.16.2.tgz", - "integrity": "sha1-41xt/i1kt9ygpc1PIXgb4ymeB2w=", + "error": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/error/-/error-7.0.2.tgz", + "integrity": "sha1-pfdf/02ZJhJt2sDqXcOOaJFTywI=", + "dev": true, "requires": { - "accepts": "~1.3.4", - "array-flatten": "1.1.1", - "body-parser": "1.18.2", - "content-disposition": "0.5.2", - "content-type": "~1.0.4", - "cookie": "0.3.1", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~1.1.1", - "encodeurl": "~1.0.1", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.1.0", - "fresh": "0.5.2", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "~2.3.0", - "parseurl": "~1.3.2", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.2", - "qs": "6.5.1", - "range-parser": "~1.2.0", - "safe-buffer": "5.1.1", - "send": "0.16.1", - "serve-static": "1.13.1", - "setprototypeof": "1.1.0", - "statuses": "~1.3.1", - "type-is": "~1.6.15", - "utils-merge": "1.0.1", - "vary": "~1.1.2" + "string-template": "~0.2.1", + "xtend": "~4.0.0" } }, - "express-sslify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/express-sslify/-/express-sslify-1.2.0.tgz", - "integrity": "sha1-MOhLzu0VV+sYdnK74UMKCioQDZw=" - }, - "extend": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", - "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=", - "dev": true - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } + "is-arrayish": "^0.2.1" } }, - "external-editor": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", - "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", + "es-abstract": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.13.0.tgz", + "integrity": "sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==", "dev": true, "requires": { - "chardet": "^0.4.0", - "iconv-lite": "^0.4.17", - "tmp": "^0.0.33" + "es-to-primitive": "^1.2.0", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "is-callable": "^1.1.4", + "is-regex": "^1.0.4", + "object-keys": "^1.0.12" } }, - "extglob": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", - "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "es-to-primitive": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz", + "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==", "dev": true, "requires": { - "is-extglob": "^1.0.0" + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" } }, - "extract-zip": { - "version": "1.6.7", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.6.7.tgz", - "integrity": "sha1-qEC0uK9kAyZMjbV/Txp0Mz74H+k=", + "es5-ext": { + "version": "0.10.50", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.50.tgz", + "integrity": "sha512-KMzZTPBkeQV/JcSQhI5/z6d9VWJ3EnQ194USTUwIYZ2ZbpN8+SGXQKt1h68EX44+qt+Fzr8DO17vnxrw7c3agw==", "dev": true, "requires": { - "concat-stream": "1.6.2", - "debug": "2.6.9", - "mkdirp": "0.5.1", - "yauzl": "2.4.1" - }, - "dependencies": { - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - } + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.1", + "next-tick": "^1.0.0" } }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fast-deep-equal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", - "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", - "dev": true - }, - "fast-json-parse": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/fast-json-parse/-/fast-json-parse-1.0.3.tgz", - "integrity": "sha512-FRWsaZRWEJ1ESVNbDWmsAlqDk96gPQezzLghafp5J4GUKjbCz3OkAHuZs5TuPEtkbVQERysLp9xv6c24fBm8Aw==", - "dev": true - }, - "fast-json-patch": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-1.2.2.tgz", - "integrity": "sha1-03fZfGkR290qHIC/rNoEik+Du/k=", + "es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", "dev": true }, - "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", - "dev": true + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true + "es6-map": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", + "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-set": "~0.1.5", + "es6-symbol": "~3.1.1", + "event-emitter": "~0.3.5" + } }, - "fast-safe-stringify": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-1.2.3.tgz", - "integrity": "sha512-QJYT/i0QYoiZBQ71ivxdyTqkwKkQ0oxACXHYxH2zYHJEgzi2LsbjgvtzTbLi1SZcF190Db2YP7I7eTsU2egOlw==", + "es6-promise": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz", + "integrity": "sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM=", "dev": true }, - "faye-websocket": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", - "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", + "es6-promisify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", + "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", "dev": true, "requires": { - "websocket-driver": ">=0.5.1" + "es6-promise": "^4.0.3" + }, + "dependencies": { + "es6-promise": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.6.tgz", + "integrity": "sha512-aRVgGdnmW2OiySVPUC9e6m+plolMAJKjZnQlCwNSuK5yQ0JN61DZSO1X1Ufd1foqWRAlig0rhduTCHe7sVtK5Q==", + "dev": true + } } }, - "fd-slicer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz", - "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", + "es6-set": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", + "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", "dev": true, "requires": { - "pend": "~1.2.0" + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-symbol": "3.1.1", + "event-emitter": "~0.3.5" } }, - "figures": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "es6-symbol": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", + "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", "dev": true, "requires": { - "escape-string-regexp": "^1.0.5" + "d": "1", + "es5-ext": "~0.10.14" } }, - "file-entry-cache": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", - "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", + "es6-weak-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", + "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", "dev": true, "requires": { - "flat-cache": "^1.2.1", - "object-assign": "^4.0.1" + "d": "1", + "es5-ext": "^0.10.14", + "es6-iterator": "^2.0.1", + "es6-symbol": "^3.1.1" } }, - "file-sync-cmp": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/file-sync-cmp/-/file-sync-cmp-0.1.1.tgz", - "integrity": "sha1-peeo/7+kk7Q7kju9TKiaU7Y7YSs=", - "dev": true - }, - "file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "dev": true + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" }, - "filename-regex": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", - "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, - "fill-range": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz", - "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=", + "escodegen": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.1.tgz", + "integrity": "sha512-JwiqFD9KdGVVpeuRa68yU3zZnBEOcPs0nKW7wZzXky8Z7tffdYUHbe11bPCV5jYlK6DVdKLWLm0f5I/QlL0Kmw==", "dev": true, "requires": { - "is-number": "^2.1.0", - "isobject": "^2.0.0", - "randomatic": "^1.1.3", - "repeat-element": "^1.1.2", - "repeat-string": "^1.5.2" - } - }, - "finalhandler": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz", - "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=", - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.1", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.2", - "statuses": "~1.3.1", - "unpipe": "~1.0.0" + "esprima": "^3.1.3", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + }, + "dependencies": { + "esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true + } } }, - "find-cache-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", - "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "escope": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", + "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", "dev": true, "requires": { - "commondir": "^1.0.1", - "make-dir": "^1.0.0", - "pkg-dir": "^2.0.0" + "es6-map": "^0.1.3", + "es6-weak-map": "^2.0.1", + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" } }, - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "eslint": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.0.1.tgz", + "integrity": "sha512-D5nG2rErquLUstgUaxJlWB5+gu+U/3VDY0fk/Iuq8y9CUFy/7Y6oF4N2cR1tV8knzQvciIbfqfohd359xTLIKQ==", "dev": true, "requires": { - "locate-path": "^2.0.0" + "ajv": "^6.5.0", + "babel-code-frame": "^6.26.0", + "chalk": "^2.1.0", + "cross-spawn": "^6.0.5", + "debug": "^3.1.0", + "doctrine": "^2.1.0", + "eslint-scope": "^4.0.0", + "eslint-visitor-keys": "^1.0.0", + "espree": "^4.0.0", + "esquery": "^1.0.1", + "esutils": "^2.0.2", + "file-entry-cache": "^2.0.0", + "functional-red-black-tree": "^1.0.1", + "glob": "^7.1.2", + "globals": "^11.5.0", + "ignore": "^3.3.3", + "imurmurhash": "^0.1.4", + "inquirer": "^5.2.0", + "is-resolvable": "^1.1.0", + "js-yaml": "^3.11.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.5", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.2", + "path-is-inside": "^1.0.2", + "pluralize": "^7.0.0", + "progress": "^2.0.0", + "regexpp": "^1.1.0", + "require-uncached": "^1.0.3", + "semver": "^5.5.0", + "string.prototype.matchall": "^2.0.0", + "strip-ansi": "^4.0.0", + "strip-json-comments": "^2.0.1", + "table": "^4.0.3", + "text-table": "^0.2.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "glob": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", + "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } } }, - "findup-sync": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz", - "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=", + "eslint-plugin-no-unsafe-innerhtml": { + "version": "1.0.16", + "resolved": "https://registry.npmjs.org/eslint-plugin-no-unsafe-innerhtml/-/eslint-plugin-no-unsafe-innerhtml-1.0.16.tgz", + "integrity": "sha1-fQKHjI6b95FriINtWsEitC8VGTI=", "dev": true, "requires": { - "glob": "~5.0.0" + "eslint": "^3.7.1" }, "dependencies": { - "glob": { - "version": "5.0.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "acorn": { + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", + "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", + "dev": true + }, + "acorn-jsx": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", + "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", + "dev": true, + "requires": { + "acorn": "^3.0.4" + }, + "dependencies": { + "acorn": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", + "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", + "dev": true + } + } + }, + "ajv": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", + "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", + "dev": true, + "requires": { + "co": "^4.6.0", + "json-stable-stringify": "^1.0.1" + } + }, + "ajv-keywords": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz", + "integrity": "sha1-MU3QpLM2j609/NxU7eYXG4htrzw=", + "dev": true + }, + "ansi-escapes": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", + "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", + "dev": true + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "cli-cursor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", + "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", + "dev": true, + "requires": { + "restore-cursor": "^1.0.1" + } + }, + "eslint": { + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-3.19.0.tgz", + "integrity": "sha1-yPxiAcf0DdCJQbh8CFdnOGpnmsw=", + "dev": true, + "requires": { + "babel-code-frame": "^6.16.0", + "chalk": "^1.1.3", + "concat-stream": "^1.5.2", + "debug": "^2.1.1", + "doctrine": "^2.0.0", + "escope": "^3.6.0", + "espree": "^3.4.0", + "esquery": "^1.0.0", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "file-entry-cache": "^2.0.0", + "glob": "^7.0.3", + "globals": "^9.14.0", + "ignore": "^3.2.0", + "imurmurhash": "^0.1.4", + "inquirer": "^0.12.0", + "is-my-json-valid": "^2.10.0", + "is-resolvable": "^1.0.0", + "js-yaml": "^3.5.1", + "json-stable-stringify": "^1.0.0", + "levn": "^0.3.0", + "lodash": "^4.0.0", + "mkdirp": "^0.5.0", + "natural-compare": "^1.4.0", + "optionator": "^0.8.2", + "path-is-inside": "^1.0.1", + "pluralize": "^1.2.1", + "progress": "^1.1.8", + "require-uncached": "^1.0.2", + "shelljs": "^0.7.5", + "strip-bom": "^3.0.0", + "strip-json-comments": "~2.0.1", + "table": "^3.7.8", + "text-table": "~0.2.0", + "user-home": "^2.0.0" + } + }, + "espree": { + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz", + "integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==", + "dev": true, + "requires": { + "acorn": "^5.5.0", + "acorn-jsx": "^3.0.0" + } + }, + "figures": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", + "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5", + "object-assign": "^4.1.0" + } + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true + }, + "inquirer": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-0.12.0.tgz", + "integrity": "sha1-HvK/1jUE3wvHV4X/+MLEHfEvB34=", + "dev": true, + "requires": { + "ansi-escapes": "^1.1.0", + "ansi-regex": "^2.0.0", + "chalk": "^1.0.0", + "cli-cursor": "^1.0.1", + "cli-width": "^2.0.0", + "figures": "^1.3.5", + "lodash": "^4.3.0", + "readline2": "^1.0.1", + "run-async": "^0.1.0", + "rx-lite": "^3.1.2", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.0", + "through": "^2.3.6" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "dev": true, "requires": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "number-is-nan": "^1.0.0" } - } - } - }, - "firefox-profile": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/firefox-profile/-/firefox-profile-1.1.0.tgz", - "integrity": "sha512-wUIE4QeAjwoHvFbomWmXgKyYtV4/oZxDcJG4znxtGGa/0BhKkd3HzeOf3tAsMWPq1ExARZxCRRiNw1BL3FuPqA==", - "dev": true, - "requires": { - "adm-zip": "~0.4.x", - "archiver": "~2.1.0", - "async": "~2.5.0", - "fs-extra": "~4.0.2", - "ini": "~1.3.3", - "jetpack-id": "1.0.0", - "lazystream": "~1.0.0", - "lodash": "~4.17.2", - "minimist": "^1.1.1", - "uuid": "^3.0.0", - "xml2js": "~0.4.4" - }, - "dependencies": { - "archiver": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/archiver/-/archiver-2.1.1.tgz", - "integrity": "sha1-/2YrSnggFJSj7lRNOjP+dJZQnrw=", + }, + "onetime": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", + "dev": true + }, + "pluralize": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-1.2.1.tgz", + "integrity": "sha1-0aIUg/0iu0HlihL6NCGCMUCJfEU=", + "dev": true + }, + "progress": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", + "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=", + "dev": true + }, + "restore-cursor": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", + "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "dev": true, + "requires": { + "exit-hook": "^1.0.0", + "onetime": "^1.0.0" + } + }, + "run-async": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-0.1.0.tgz", + "integrity": "sha1-yK1KXhEGYeQCp9IbUw4AnyX444k=", + "dev": true, + "requires": { + "once": "^1.3.0" + } + }, + "shelljs": { + "version": "0.7.8", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.8.tgz", + "integrity": "sha1-3svPh0sNHl+3LhSxZKloMEjprLM=", "dev": true, "requires": { - "archiver-utils": "^1.3.0", - "async": "^2.0.0", - "buffer-crc32": "^0.2.1", "glob": "^7.0.0", - "lodash": "^4.8.0", - "readable-stream": "^2.0.0", - "tar-stream": "^1.5.0", - "zip-stream": "^1.2.0" + "interpret": "^1.0.0", + "rechoir": "^0.6.2" } }, - "async": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/async/-/async-2.5.0.tgz", - "integrity": "sha512-e+lJAJeNWuPCNyxZKOBdaJGyLGHugXVQtrAwtuAe2vhxTYxFTKE73p8JuTmdH0qdQZtDvI4dhJwjZc5zsfIsYw==", + "slice-ansi": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", + "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=", + "dev": true + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "dev": true, "requires": { - "lodash": "^4.14.0" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", "dev": true + }, + "table": { + "version": "3.8.3", + "resolved": "https://registry.npmjs.org/table/-/table-3.8.3.tgz", + "integrity": "sha1-K7xULw/amGGnVdOUf+/Ys/UThV8=", + "dev": true, + "requires": { + "ajv": "^4.7.0", + "ajv-keywords": "^1.0.0", + "chalk": "^1.1.1", + "lodash": "^4.0.0", + "slice-ansi": "0.0.4", + "string-width": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } } } }, - "first-chunk-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-2.0.0.tgz", - "integrity": "sha1-G97NuOCDwGZLkZRVgVd6Q6nzHXA=", + "eslint-scope": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", "dev": true, "requires": { - "readable-stream": "^2.0.2" + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" } }, - "fizzy-ui-utils": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/fizzy-ui-utils/-/fizzy-ui-utils-2.0.7.tgz", - "integrity": "sha512-CZXDVXQ1If3/r8s0T+v+qVeMshhfcuq0rqIFgJnrtd+Bu8GmDmqMjntjUePypVtjHXKJ6V4sw9zeyox34n9aCg==", - "dev": true, - "requires": { - "desandro-matches-selector": "^2.0.0" - } + "eslint-visitor-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", + "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", + "dev": true }, - "flat-cache": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.0.tgz", - "integrity": "sha1-0wMLMrOBVPTjt+nHCfSQ9++XxIE=", + "esm": { + "version": "3.2.25", + "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz", + "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==", + "dev": true + }, + "espree": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-4.1.0.tgz", + "integrity": "sha512-I5BycZW6FCVIub93TeVY1s7vjhP9CY6cXCznIRfiig7nRviKZYdRnj/sHEWC6A7WE9RDWOFq9+7OsWSYz8qv2w==", "dev": true, "requires": { - "circular-json": "^0.3.1", - "del": "^2.0.2", - "graceful-fs": "^4.1.2", - "write": "^0.2.1" + "acorn": "^6.0.2", + "acorn-jsx": "^5.0.0", + "eslint-visitor-keys": "^1.0.0" + }, + "dependencies": { + "acorn": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.1.1.tgz", + "integrity": "sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA==", + "dev": true + } } }, - "flatstr": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/flatstr/-/flatstr-1.0.8.tgz", - "integrity": "sha512-YXblbv/vc1zuVVUtnKl1hPqqk7TalZCppnKE7Pr8FI/Rp48vzckS/4SJ4Y9O9RNiI82Vcw/FydmtqdQOg1Dpqw==", + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true }, - "flipclock": { - "version": "0.7.8", - "resolved": "https://registry.npmjs.org/flipclock/-/flipclock-0.7.8.tgz", - "integrity": "sha1-838ffKkETZAsH+4fGuf0vR7vGlQ=", + "esquery": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", + "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", "dev": true, "requires": { - "jquery": ">=1.7" + "estraverse": "^4.0.0" } }, - "fluent-syntax": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/fluent-syntax/-/fluent-syntax-0.7.0.tgz", - "integrity": "sha512-T0iqfhC40jrs3aDjYOKgzIQjjhsH2Fa6LnXB6naPv0ymW3DeYMUFa89y9aLKMpi1P9nl2vEimK7blx4tVnUWBg==", - "dev": true - }, - "flush-write-stream": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.0.2.tgz", - "integrity": "sha1-yBuQ2HRnZvGmCaRoCZRsRd2K5Bc=", + "esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", "dev": true, "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.4" + "estraverse": "^4.1.0" } }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "estraverse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", + "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", "dev": true }, - "for-own": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", - "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", - "dev": true, - "requires": { - "for-in": "^1.0.1" - } + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dev": true }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + }, + "ev-emitter": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ev-emitter/-/ev-emitter-1.1.1.tgz", + "integrity": "sha512-ipiDYhdQSCZ4hSbX4rMW+XzNKMD1prg/sTvoVmSLkuQ1MVlwjJQQA+sW8tMYR3BLUr9KjodFV4pvzunvRhd33Q==", "dev": true }, - "form-data": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz", - "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", + "event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", "dev": true, "requires": { - "asynckit": "^0.4.0", - "combined-stream": "1.0.6", - "mime-types": "^2.1.12" + "d": "1", + "es5-ext": "~0.10.14" } }, - "forwarded": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" + "event-to-promise": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/event-to-promise/-/event-to-promise-0.8.0.tgz", + "integrity": "sha1-S4TxF3K28l93Uvx02XFTGsb1tiY=", + "dev": true }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "dev": true, - "requires": { - "map-cache": "^0.2.2" - } + "eventemitter2": { + "version": "0.4.14", + "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz", + "integrity": "sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas=", + "dev": true }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" + "events": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.0.0.tgz", + "integrity": "sha512-Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA==", + "dev": true }, - "from2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", "dev": true, "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" } }, - "fs-extra": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", - "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", + "execa": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz", + "integrity": "sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" + "cross-spawn": "^6.0.0", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" } }, - "fs-write-stream-atomic": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" - } + "exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "dev": true }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "exit-hook": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", + "integrity": "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=", "dev": true }, - "fsevents": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.4.tgz", - "integrity": "sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg==", + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", "dev": true, - "optional": true, "requires": { - "nan": "^2.9.2", - "node-pre-gyp": "^0.10.0" + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { - "abbrev": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true - }, - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "is-descriptor": "^0.1.0" } }, - "chownr": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "debug": { - "version": "2.6.9", - "bundled": true, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, - "optional": true, "requires": { - "ms": "2.0.0" + "is-extendable": "^0.1.0" } - }, - "deep-extend": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.5", - "bundled": true, - "dev": true, - "optional": true, + } + } + }, + "expand-tilde": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", + "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", + "dev": true, + "requires": { + "homedir-polyfill": "^1.0.1" + } + }, + "express": { + "version": "4.17.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", + "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", + "requires": { + "accepts": "~1.3.7", + "array-flatten": "1.1.1", + "body-parser": "1.19.0", + "content-disposition": "0.5.3", + "content-type": "~1.0.4", + "cookie": "0.4.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.1.2", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.5", + "qs": "6.7.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.1.2", + "send": "0.17.1", + "serve-static": "1.14.1", + "setprototypeof": "1.1.1", + "statuses": "~1.5.0", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "dependencies": { + "accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", "requires": { - "minipass": "^2.2.1" + "mime-types": "~2.1.24", + "negotiator": "0.6.2" } }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true, + "finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" } }, - "glob": { - "version": "7.1.2", - "bundled": true, - "dev": true, - "optional": true, + "http-errors": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", + "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" } }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.21", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safer-buffer": "^2.1.0" - } + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" }, - "ignore-walk": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } + "mime-db": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", + "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==" }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true, + "mime-types": { + "version": "2.1.24", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", + "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", "requires": { - "once": "^1.3.0", - "wrappy": "1" + "mime-db": "1.40.0" } }, - "inherits": { - "version": "2.0.3", - "bundled": true, - "dev": true + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" }, - "ini": { - "version": "1.3.5", - "bundled": true, - "dev": true, - "optional": true + "negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true + "qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, - "minipass": { - "version": "2.2.4", - "bundled": true, - "dev": true, + "send": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", + "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", "requires": { - "safe-buffer": "^5.1.1", - "yallist": "^3.0.0" + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "~1.7.2", + "mime": "1.6.0", + "ms": "2.1.1", + "on-finished": "~2.3.0", + "range-parser": "~1.2.1", + "statuses": "~1.5.0" } }, - "minizlib": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true, + "serve-static": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", + "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", "requires": { - "minipass": "^2.2.1" + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.17.1" } }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" + } + } + }, + "express-sslify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/express-sslify/-/express-sslify-1.2.0.tgz", + "integrity": "sha1-MOhLzu0VV+sYdnK74UMKCioQDZw=" + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "dev": true, "requires": { - "minimist": "0.0.8" + "is-plain-object": "^2.0.4" } - }, - "ms": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "needle": { - "version": "2.2.0", - "bundled": true, + } + } + }, + "external-editor": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", + "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", + "dev": true, + "requires": { + "chardet": "^0.4.0", + "iconv-lite": "^0.4.17", + "tmp": "^0.0.33" + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, - "optional": true, "requires": { - "debug": "^2.1.2", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" + "is-descriptor": "^1.0.0" } }, - "node-pre-gyp": { - "version": "0.10.0", - "bundled": true, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, - "optional": true, "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.0", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.1.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4" + "is-extendable": "^0.1.0" } }, - "nopt": { - "version": "4.0.1", - "bundled": true, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, - "optional": true, "requires": { - "abbrev": "1", - "osenv": "^0.1.4" + "kind-of": "^6.0.0" } }, - "npm-bundled": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.1.10", - "bundled": true, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, - "optional": true, "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" + "kind-of": "^6.0.0" } }, - "npmlog": { - "version": "4.1.2", - "bundled": true, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, - "optional": true, "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, + } + } + }, + "extract-zip": { + "version": "1.6.7", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.6.7.tgz", + "integrity": "sha1-qEC0uK9kAyZMjbV/Txp0Mz74H+k=", + "dev": true, + "requires": { + "concat-stream": "1.6.2", + "debug": "2.6.9", + "mkdirp": "0.5.1", + "yauzl": "2.4.1" + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "fast-json-parse": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/fast-json-parse/-/fast-json-parse-1.0.3.tgz", + "integrity": "sha512-FRWsaZRWEJ1ESVNbDWmsAlqDk96gPQezzLghafp5J4GUKjbCz3OkAHuZs5TuPEtkbVQERysLp9xv6c24fBm8Aw==", + "dev": true + }, + "fast-json-patch": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-2.1.0.tgz", + "integrity": "sha512-PipOsAKamRw7+CXtKiieehyjUeDVPJ5J7b2kdJYerEf6TSUQoD2ijpVyZ88KQm5YXziff4h762bz3+vzf56khg==", + "dev": true, + "requires": { + "deep-equal": "^1.0.1" + } + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "fast-redact": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-1.5.0.tgz", + "integrity": "sha512-Afo61CgUjkzdvOKDHn08qnZ0kwck38AOGcMlvSGzvJbIab6soAP5rdoQayecGCDsD69AiF9vJBXyq31eoEO2tQ==", + "dev": true + }, + "fast-safe-stringify": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.6.tgz", + "integrity": "sha512-q8BZ89jjc+mz08rSxROs8VsrBBcn1SIw1kq9NjolL509tkABRk9io01RAjSaEv1Xb2uFLt8VtRiZbGp5H8iDtg==", + "dev": true + }, + "faye-websocket": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", + "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", + "dev": true, + "requires": { + "websocket-driver": ">=0.5.1" + } + }, + "fd-slicer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz", + "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", + "dev": true, + "requires": { + "pend": "~1.2.0" + } + }, + "figgy-pudding": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.1.tgz", + "integrity": "sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w==", + "dev": true + }, + "figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, + "file-entry-cache": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", + "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", + "dev": true, + "requires": { + "flat-cache": "^1.2.1", + "object-assign": "^4.0.1" + } + }, + "file-sync-cmp": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/file-sync-cmp/-/file-sync-cmp-0.1.1.tgz", + "integrity": "sha1-peeo/7+kk7Q7kju9TKiaU7Y7YSs=", + "dev": true + }, + "file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "dev": true + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "finalhandler": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz", + "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=", + "dev": true, + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.1", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", + "statuses": "~1.3.1", + "unpipe": "~1.0.0" + } + }, + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "findup-sync": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz", + "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=", + "dev": true, + "requires": { + "glob": "~5.0.0" + }, + "dependencies": { + "glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", "dev": true, "requires": { - "wrappy": "1" + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, + } + } + }, + "fined": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz", + "integrity": "sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==", + "dev": true, + "requires": { + "expand-tilde": "^2.0.2", + "is-plain-object": "^2.0.3", + "object.defaults": "^1.1.0", + "object.pick": "^1.2.0", + "parse-filepath": "^1.0.1" + } + }, + "firefox-profile": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/firefox-profile/-/firefox-profile-1.2.0.tgz", + "integrity": "sha512-TTEFfPOkyaz4EWx/5ZDQC1mJAe3a+JgVcchpIfD4Tvx1UspwlTJRJxOYA35x/z2iJcxaF6aW2rdh6oj6qwgd2g==", + "dev": true, + "requires": { + "adm-zip": "~0.4.x", + "archiver": "~2.1.0", + "async": "~2.5.0", + "fs-extra": "~4.0.2", + "ini": "~1.3.3", + "jetpack-id": "1.0.0", + "lazystream": "~1.0.0", + "lodash": "~4.17.2", + "minimist": "^1.1.1", + "uuid": "^3.0.0", + "xml2js": "~0.4.4" + }, + "dependencies": { + "archiver": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-2.1.1.tgz", + "integrity": "sha1-/2YrSnggFJSj7lRNOjP+dJZQnrw=", "dev": true, - "optional": true, "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" + "archiver-utils": "^1.3.0", + "async": "^2.0.0", + "buffer-crc32": "^0.2.1", + "glob": "^7.0.0", + "lodash": "^4.8.0", + "readable-stream": "^2.0.0", + "tar-stream": "^1.5.0", + "zip-stream": "^1.2.0" } }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.7", - "bundled": true, + "async": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/async/-/async-2.5.0.tgz", + "integrity": "sha512-e+lJAJeNWuPCNyxZKOBdaJGyLGHugXVQtrAwtuAe2vhxTYxFTKE73p8JuTmdH0qdQZtDvI4dhJwjZc5zsfIsYw==", "dev": true, - "optional": true, "requires": { - "deep-extend": "^0.5.1", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } + "lodash": "^4.14.0" } }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "first-chunk-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-2.0.0.tgz", + "integrity": "sha1-G97NuOCDwGZLkZRVgVd6Q6nzHXA=", + "dev": true, + "requires": { + "readable-stream": "^2.0.2" + } + }, + "fizzy-ui-utils": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/fizzy-ui-utils/-/fizzy-ui-utils-2.0.7.tgz", + "integrity": "sha512-CZXDVXQ1If3/r8s0T+v+qVeMshhfcuq0rqIFgJnrtd+Bu8GmDmqMjntjUePypVtjHXKJ6V4sw9zeyox34n9aCg==", + "dev": true, + "requires": { + "desandro-matches-selector": "^2.0.0" + } + }, + "flagged-respawn": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz", + "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==", + "dev": true + }, + "flat-cache": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.4.tgz", + "integrity": "sha512-VwyB3Lkgacfik2vhqR4uv2rvebqmDvFu4jlN/C1RzWoJEo8I7z4Q404oiqYCkq41mni8EzQnm95emU9seckwtg==", + "dev": true, + "requires": { + "circular-json": "^0.3.1", + "graceful-fs": "^4.1.2", + "rimraf": "~2.6.2", + "write": "^0.2.1" + } + }, + "flatstr": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/flatstr/-/flatstr-1.0.12.tgz", + "integrity": "sha512-4zPxDyhCyiN2wIAtSLI6gc82/EjqZc1onI4Mz/l0pWrAlsSfYH/2ZIcU+e3oA2wDwbzIWNKwa23F8rh6+DRWkw==", + "dev": true + }, + "flipclock": { + "version": "0.7.8", + "resolved": "https://registry.npmjs.org/flipclock/-/flipclock-0.7.8.tgz", + "integrity": "sha1-838ffKkETZAsH+4fGuf0vR7vGlQ=", + "dev": true, + "requires": { + "jquery": ">=1.7" + } + }, + "fluent-syntax": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/fluent-syntax/-/fluent-syntax-0.7.0.tgz", + "integrity": "sha512-T0iqfhC40jrs3aDjYOKgzIQjjhsH2Fa6LnXB6naPv0ymW3DeYMUFa89y9aLKMpi1P9nl2vEimK7blx4tVnUWBg==", + "dev": true + }, + "flush-write-stream": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", + "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "readable-stream": "^2.3.6" + }, + "dependencies": { "readable-stream": { "version": "2.3.6", - "bundled": true, + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "dev": true, - "optional": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -5855,125 +6114,114 @@ "util-deprecate": "~1.0.1" } }, - "rimraf": { - "version": "2.6.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "glob": "^7.0.5" - } - }, - "safe-buffer": { - "version": "5.1.1", - "bundled": true, - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "bundled": true, - "dev": true, - "optional": true - }, - "semver": { - "version": "5.5.0", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, "string_decoder": { "version": "1.1.1", - "bundled": true, + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "dev": true, - "optional": true, "requires": { "safe-buffer": "~5.1.0" } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.0.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.2.4", - "minizlib": "^1.1.0", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.1", - "yallist": "^3.0.2" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "yallist": { - "version": "3.0.2", - "bundled": true, - "dev": true } } }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true + }, + "for-own": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", + "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "dev": true, + "requires": { + "for-in": "^1.0.1" + } + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true + }, + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dev": true, + "requires": { + "map-cache": "^0.2.2" + } + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" + }, + "from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + } + }, + "fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fsevents": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.0.1.tgz", + "integrity": "sha512-p+CXqK/iLvDESUWdn3NA3JVO9HxdfI+iXx8xR3DqWgKZvQNiEVpAyUQo0lmwz8rqksb4xaGerG291xuwwhX2kA==", + "dev": true, + "optional": true + }, "ftp": { "version": "0.3.10", "resolved": "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz", @@ -6046,6 +6294,21 @@ "graceful-readlink": ">= 1.0.0" } }, + "is-absolute": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-0.1.7.tgz", + "integrity": "sha1-hHSREZ/MtftDYhfMc39/qtUPYD8=", + "dev": true, + "requires": { + "is-relative": "^0.1.0" + } + }, + "is-relative": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-0.1.3.tgz", + "integrity": "sha1-kF/uiuhvRbPsYUvDwVyGnfCHboI=", + "dev": true + }, "isexe": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/isexe/-/isexe-1.1.2.tgz", @@ -6080,10 +6343,13 @@ } }, "generate-function": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz", - "integrity": "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ=", - "dev": true + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz", + "integrity": "sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==", + "dev": true, + "requires": { + "is-property": "^1.0.2" + } }, "generate-object-property": { "version": "1.2.0", @@ -6095,9 +6361,9 @@ } }, "get-caller-file": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz", - "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", "dev": true }, "get-func-name": { @@ -6107,9 +6373,9 @@ "dev": true }, "get-size": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/get-size/-/get-size-2.0.2.tgz", - "integrity": "sha1-VV6pirhzLgwCHp4j4iGa3L45jpg=", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/get-size/-/get-size-2.0.3.tgz", + "integrity": "sha512-lXNzT/h/dTjTxRbm9BXb+SGxxzkm97h/PCIKtlN/CBCxxmkkIVV21udumMS93MuVTDX583gqc94v3RjuHmI+2Q==", "dev": true }, "get-stdin": { @@ -6125,17 +6391,54 @@ "dev": true }, "get-uri": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.2.tgz", - "integrity": "sha512-ZD325dMZOgerGqF/rF6vZXyFGTAay62svjQIT+X/oU2PtxYpFxvSkbsdi+oxIrsNxlZVd4y8wUDqkaExWTI/Cw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.3.tgz", + "integrity": "sha512-x5j6Ks7FOgLD/GlvjKwgu7wdmMR55iuRHhn8hj/+gA+eSbxQvZ+AEomq+3MgVEZj1vpi738QahGbCCSIDtXtkw==", "dev": true, "requires": { - "data-uri-to-buffer": "1", - "debug": "2", - "extend": "3", + "data-uri-to-buffer": "2", + "debug": "4", + "extend": "~3.0.2", "file-uri-to-path": "1", "ftp": "~0.3.10", - "readable-stream": "2" + "readable-stream": "3" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "readable-stream": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", + "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "string_decoder": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.2.0.tgz", + "integrity": "sha512-6YqyX6ZWEYguAxgZzHGL7SsCeGx3V2TtOTqZz1xSTSWnqsbWwbptafNyvf/ACquZUXV3DANr5BDIwNYe1mN42w==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "get-value": { @@ -6206,23 +6509,14 @@ "path-is-absolute": "^1.0.0" } }, - "glob-base": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", - "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", - "dev": true, - "requires": { - "glob-parent": "^2.0.0", - "is-glob": "^2.0.0" - } - }, "glob-parent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", "dev": true, "requires": { - "is-glob": "^2.0.0" + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" } }, "global": { @@ -6252,34 +6546,36 @@ "ini": "^1.3.4" } }, - "globals": { - "version": "11.3.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.3.0.tgz", - "integrity": "sha512-kkpcKNlmQan9Z5ZmgqKH/SMbSmjxQ7QjyNqfXVc8VJcoBV2UEg+sxQD15GQofGRh2hfpwUb70VC31DR7Rq5Hdw==", - "dev": true + "global-modules": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", + "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", + "dev": true, + "requires": { + "global-prefix": "^1.0.1", + "is-windows": "^1.0.1", + "resolve-dir": "^1.0.0" + } }, - "globby": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", - "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", + "global-prefix": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", + "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", "dev": true, "requires": { - "array-union": "^1.0.1", - "arrify": "^1.0.0", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } + "expand-tilde": "^2.0.2", + "homedir-polyfill": "^1.0.1", + "ini": "^1.3.4", + "is-windows": "^1.0.1", + "which": "^1.2.14" } }, + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true + }, "globule": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.1.tgz", @@ -6345,18 +6641,18 @@ "dev": true }, "graphlib": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.5.tgz", - "integrity": "sha512-XvtbqCcw+EM5SqQrIetIKKD+uZVNQtDPD1goIg7K73RuRZtVI5rYMdcCVSHm/AS1sCBZ7vt0p5WgXouucHQaOA==", + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.7.tgz", + "integrity": "sha512-TyI9jIy2J4j0qgPmOOrHTCtpPqJGN/aurBwc6ZT+bRii+di1I+Wv3obRhVrmBEXet+qkMaEX67dXrwsd3QQM6w==", "dev": true, "requires": { - "lodash": "^4.11.1" + "lodash": "^4.17.5" } }, "growl": { - "version": "1.10.3", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.3.tgz", - "integrity": "sha512-hKlsbA5Vu3xsh1Cg3J7jSmX/WaW6A5oBeqzM88oNbCRQFz+zUaXm6yxS4RVytp1scBoJzSYl4YAEOQIt6O8V1Q==", + "version": "1.10.5", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", + "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", "dev": true }, "growly": { @@ -6366,9 +6662,9 @@ "dev": true }, "grunt": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.0.2.tgz", - "integrity": "sha1-TmpeaVtwRy/VME9fqeNCNoNqc7w=", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.0.4.tgz", + "integrity": "sha512-PYsMOrOC+MsdGEkFVwMaMyc6Ob7pKmq+deg1Sjr+vvMWp35sztfwKE7qoN51V+UEtHsyNuMcGdgMLFkBHvMxHQ==", "dev": true, "requires": { "coffeescript": "~1.10.0", @@ -6379,33 +6675,59 @@ "glob": "~7.0.0", "grunt-cli": "~1.2.0", "grunt-known-options": "~1.1.0", - "grunt-legacy-log": "~1.0.0", - "grunt-legacy-util": "~1.0.0", + "grunt-legacy-log": "~2.0.0", + "grunt-legacy-util": "~1.1.1", "iconv-lite": "~0.4.13", - "js-yaml": "~3.5.2", + "js-yaml": "~3.13.0", "minimatch": "~3.0.2", + "mkdirp": "~0.5.1", "nopt": "~3.0.6", "path-is-absolute": "~1.0.0", - "rimraf": "~2.2.8" + "rimraf": "~2.6.2" + }, + "dependencies": { + "grunt-cli": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.2.0.tgz", + "integrity": "sha1-VisRnrsGndtGSs4oRVAb6Xs1tqg=", + "dev": true, + "requires": { + "findup-sync": "~0.3.0", + "grunt-known-options": "~1.1.0", + "nopt": "~3.0.6", + "resolve": "~1.1.0" + } + }, + "resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", + "dev": true + } } }, "grunt-cli": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.2.0.tgz", - "integrity": "sha1-VisRnrsGndtGSs4oRVAb6Xs1tqg=", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.3.2.tgz", + "integrity": "sha512-8OHDiZZkcptxVXtMfDxJvmN7MVJNE8L/yIcPb4HB7TlyFD1kDvjHrb62uhySsU14wJx9ORMnTuhRMQ40lH/orQ==", "dev": true, "requires": { - "findup-sync": "~0.3.0", "grunt-known-options": "~1.1.0", - "nopt": "~3.0.6", - "resolve": "~1.1.0" + "interpret": "~1.1.0", + "liftoff": "~2.5.0", + "nopt": "~4.0.1", + "v8flags": "~3.1.1" }, "dependencies": { - "resolve": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", - "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", - "dev": true + "nopt": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", + "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", + "dev": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } } } }, @@ -6610,93 +6932,46 @@ "dev": true }, "grunt-known-options": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.0.tgz", - "integrity": "sha1-pCdO6zL6dl2lp6OxcSYXzjsUQUk=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.1.tgz", + "integrity": "sha512-cHwsLqoighpu7TuYj5RonnEuxGVFnztcUqTqp5rXFGYL4OuPFofwC4Ycg7n9fYwvK6F5WbYgeVOwph9Crs2fsQ==", "dev": true }, "grunt-legacy-log": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-1.0.2.tgz", - "integrity": "sha512-WdedTJ/6zCXnI/coaouzqvkI19uwqbcPkdsXiDRKJyB5rOUlOxnCnTVbpeUdEckKVir2uHF3rDBYppj2p6N3+g==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-2.0.0.tgz", + "integrity": "sha512-1m3+5QvDYfR1ltr8hjiaiNjddxGdQWcH0rw1iKKiQnF0+xtgTazirSTGu68RchPyh1OBng1bBUjLmX8q9NpoCw==", "dev": true, "requires": { "colors": "~1.1.2", - "grunt-legacy-log-utils": "~1.0.0", + "grunt-legacy-log-utils": "~2.0.0", "hooker": "~0.2.3", "lodash": "~4.17.5" } }, "grunt-legacy-log-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-1.0.0.tgz", - "integrity": "sha1-p7ji0Ps1taUPSvmG/BEnSevJbz0=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.0.1.tgz", + "integrity": "sha512-o7uHyO/J+i2tXG8r2bZNlVk20vlIFJ9IEYyHMCQGfWYru8Jv3wTqKZzvV30YW9rWEjq0eP3cflQ1qWojIe9VFA==", "dev": true, "requires": { - "chalk": "~1.1.1", - "lodash": "~4.3.0" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "lodash": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.3.0.tgz", - "integrity": "sha1-79nEpuxT87BUEkKZFcPkgk5NJaQ=", - "dev": true - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } + "chalk": "~2.4.1", + "lodash": "~4.17.10" } }, "grunt-legacy-util": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-1.0.0.tgz", - "integrity": "sha1-OGqnjcbtUJhsKxiVcmWxtIq7m4Y=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-1.1.1.tgz", + "integrity": "sha512-9zyA29w/fBe6BIfjGENndwoe1Uy31BIXxTH3s8mga0Z5Bz2Sp4UCjkeyv2tI449ymkx3x26B+46FV4fXEddl5A==", "dev": true, "requires": { "async": "~1.5.2", "exit": "~0.1.1", "getobject": "~0.1.0", "hooker": "~0.2.3", - "lodash": "~4.3.0", - "underscore.string": "~3.2.3", - "which": "~1.2.1" - }, - "dependencies": { - "lodash": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.3.0.tgz", - "integrity": "sha1-79nEpuxT87BUEkKZFcPkgk5NJaQ=", - "dev": true - }, - "underscore.string": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.2.3.tgz", - "integrity": "sha1-gGmSYzZl1eX8tNsfs6hi62jp5to=", - "dev": true - } + "lodash": "~4.17.10", + "underscore.string": "~3.3.4", + "which": "~1.3.0" } }, "grunt-mocha-test": { @@ -6710,12 +6985,12 @@ } }, "grunt-webpack": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/grunt-webpack/-/grunt-webpack-3.0.2.tgz", - "integrity": "sha512-ghSkdCdvbF1SpI46qDT9FYqw5ZP5sSYbEQU/DwzoJE1K42xizAZ5Rv3kzpaRdJT4yvu8/6fO5+wne3/y0n74QA==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/grunt-webpack/-/grunt-webpack-3.1.3.tgz", + "integrity": "sha512-SaZ8K8lG4iTxs7ClZxOWCf3kxqS2y+Eel8SbaEGgBKwhAp6e45beIu+vhBZRLX3vonKML2kjemKsQ21REaqNFQ==", "dev": true, "requires": { - "deep-for-each": "^1.0.5", + "deep-for-each": "^2.0.2", "lodash": "^4.7.0" } }, @@ -6726,36 +7001,22 @@ "dev": true }, "har-validator": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", - "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", "dev": true, "requires": { - "ajv": "^5.1.0", + "ajv": "^6.5.5", "har-schema": "^2.0.0" - }, - "dependencies": { - "ajv": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", - "dev": true, - "requires": { - "co": "^4.6.0", - "fast-deep-equal": "^1.0.0", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.3.0" - } - } } }, "has": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.1.tgz", - "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, "requires": { - "function-bind": "^1.0.2" + "function-bind": "^1.1.1" } }, "has-ansi": { @@ -6779,6 +7040,12 @@ "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true }, + "has-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", + "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", + "dev": true + }, "has-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", @@ -6788,14 +7055,6 @@ "get-value": "^2.0.6", "has-values": "^1.0.0", "isobject": "^3.0.0" - }, - "dependencies": { - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - } } }, "has-values": { @@ -6808,26 +7067,6 @@ "kind-of": "^4.0.0" }, "dependencies": { - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, "kind-of": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", @@ -6859,25 +7098,13 @@ } }, "hash.js": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", - "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", "dev": true, "requires": { "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.0" - } - }, - "hawk": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz", - "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==", - "dev": true, - "requires": { - "boom": "4.x.x", - "cryptiles": "3.x.x", - "hoek": "4.x.x", - "sntp": "2.x.x" + "minimalistic-assert": "^1.0.1" } }, "he": { @@ -6887,9 +7114,9 @@ "dev": true }, "highlight.js": { - "version": "9.12.0", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-9.12.0.tgz", - "integrity": "sha1-5tnb5Xy+/mB1HwKvM2GVhwyQwB4=", + "version": "9.15.8", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-9.15.8.tgz", + "integrity": "sha512-RrapkKQWwE+wKdF73VsOa2RQdIoO3mxwJ4P8mhbI6KYJUraUHRKM5w5zQQKXNk0xNL4UVRdulV9SBJcmzJNzVA==", "dev": true }, "hmac-drbg": { @@ -6903,12 +7130,6 @@ "minimalistic-crypto-utils": "^1.0.1" } }, - "hoek": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.1.tgz", - "integrity": "sha512-QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA==", - "dev": true - }, "home-or-tmp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", @@ -6919,6 +7140,15 @@ "os-tmpdir": "^1.0.1" } }, + "homedir-polyfill": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", + "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", + "dev": true, + "requires": { + "parse-passwd": "^1.0.0" + } + }, "hooker": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz", @@ -6926,29 +7156,52 @@ "dev": true }, "hosted-git-info": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.5.0.tgz", - "integrity": "sha512-pNgbURSuab90KbTqvRPsseaTxOJCZBD0a7t+haSN33piP9cCM4l0CqdzAif2hUqm716UovKB2ROmiabGAKVXyg==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", + "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==", "dev": true }, "htmlparser2": { - "version": "3.9.2", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.9.2.tgz", - "integrity": "sha1-G9+HrMoPP55T+k/M6w9LTLsAszg=", + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", "dev": true, "requires": { - "domelementtype": "^1.3.0", + "domelementtype": "^1.3.1", "domhandler": "^2.3.0", "domutils": "^1.5.1", "entities": "^1.1.1", "inherits": "^2.0.1", - "readable-stream": "^2.0.2" + "readable-stream": "^3.1.1" + }, + "dependencies": { + "readable-stream": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", + "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "string_decoder": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.2.0.tgz", + "integrity": "sha512-6YqyX6ZWEYguAxgZzHGL7SsCeGx3V2TtOTqZz1xSTSWnqsbWwbptafNyvf/ACquZUXV3DANr5BDIwNYe1mN42w==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "http-errors": { "version": "1.6.2", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", + "dev": true, "requires": { "depd": "1.1.1", "inherits": "2.0.3", @@ -6959,12 +7212,14 @@ "depd": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", - "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=" + "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=", + "dev": true }, "setprototypeof": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", - "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" + "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=", + "dev": true } } }, @@ -7029,25 +7284,34 @@ }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true } } }, "iconv-lite": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", - "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } }, "ieee754": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.11.tgz", - "integrity": "sha512-VhDzCKN7K8ufStx/CLj5/PDTMgph+qwN5Pkd5i0sGnVwk56zJ0lkT8Qzi1xqWLS0Wp29DgDtNeS7v8/wMoZeHg==", + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", + "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", "dev": true }, "iferr": { @@ -7057,9 +7321,15 @@ "dev": true }, "ignore": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.8.tgz", - "integrity": "sha512-pUh+xUQQhQzevjRHHFqqcTy0/dP/kS9I8HSrUydhihjuD09W6ldVWFtIrwhXdUJHis3i2rZNqEHpZH/cbinFbg==", + "version": "3.3.10", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", + "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", + "dev": true + }, + "immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=", "dev": true }, "import-lazy": { @@ -7120,22 +7390,21 @@ } }, "inquirer": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", - "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-5.2.0.tgz", + "integrity": "sha512-E9BmnJbAKLPGonz0HeWHtbKf+EeSP93paWO3ZYoUpq/aowXvYGjjCSuashhXPpzbArIjBbji39THkxTz9ZeEUQ==", "dev": true, "requires": { "ansi-escapes": "^3.0.0", "chalk": "^2.0.0", "cli-cursor": "^2.1.0", "cli-width": "^2.0.0", - "external-editor": "^2.0.4", + "external-editor": "^2.1.0", "figures": "^2.0.0", "lodash": "^4.3.0", "mute-stream": "0.0.7", "run-async": "^2.2.0", - "rx-lite": "^4.0.8", - "rx-lite-aggregates": "^4.0.8", + "rxjs": "^5.5.2", "string-width": "^2.1.0", "strip-ansi": "^4.0.0", "through": "^2.3.6" @@ -7174,9 +7443,9 @@ } }, "invert-kv": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", - "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", "dev": true }, "ip": { @@ -7186,17 +7455,18 @@ "dev": true }, "ipaddr.js": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.6.0.tgz", - "integrity": "sha1-4/o1e3c9phnybpXwSdBVxyeW+Gs=" + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.0.tgz", + "integrity": "sha512-M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA==" }, "is-absolute": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-0.1.7.tgz", - "integrity": "sha1-hHSREZ/MtftDYhfMc39/qtUPYD8=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", + "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==", "dev": true, "requires": { - "is-relative": "^0.1.0" + "is-relative": "^1.0.0", + "is-windows": "^1.0.1" } }, "is-accessor-descriptor": { @@ -7206,22 +7476,17 @@ "dev": true, "requires": { "kind-of": "^3.0.2" - } - }, - "is-alphabetical": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.2.tgz", - "integrity": "sha512-V0xN4BYezDHcBSKb1QHUFMlR4as/XEuCZBzMJUU4n7+Cbt33SmUnSol+pnXFvLxSHNq2CemUXNdaXV6Flg7+xg==", - "dev": true - }, - "is-alphanumerical": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.2.tgz", - "integrity": "sha512-pyfU/0kHdISIgslFfZN9nfY1Gk3MquQgUm1mJTjdkEPpkAKNWuBTSqFwewOpR7N351VkErCiyV71zX7mlQQqsg==", - "dev": true, - "requires": { - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } } }, "is-arrayish": { @@ -7245,14 +7510,11 @@ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", "dev": true }, - "is-builtin-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", - "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", - "dev": true, - "requires": { - "builtin-modules": "^1.0.0" - } + "is-callable": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", + "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", + "dev": true }, "is-data-descriptor": { "version": "0.1.4", @@ -7261,12 +7523,23 @@ "dev": true, "requires": { "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } } }, - "is-decimal": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.2.tgz", - "integrity": "sha512-TRzl7mOCchnhchN+f3ICUCzYvL9ul7R+TYOsZ8xia++knyZAJfv/uA1FvQXsAnYIl1T3B2X5E/J7Wb1QXiIBXg==", + "is-date-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", "dev": true }, "is-descriptor": { @@ -7288,21 +7561,6 @@ } } }, - "is-dotfile": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", - "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", - "dev": true - }, - "is-equal-shallow": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", - "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", - "dev": true, - "requires": { - "is-primitive": "^2.0.0" - } - }, "is-expression": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-3.0.0.tgz", @@ -7328,9 +7586,9 @@ "dev": true }, "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", "dev": true }, "is-finite": { @@ -7349,20 +7607,14 @@ "dev": true }, "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", "dev": true, "requires": { - "is-extglob": "^1.0.0" + "is-extglob": "^2.1.0" } }, - "is-hexadecimal": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.2.tgz", - "integrity": "sha512-but/G3sapV3MNyqiDBLrOi4x8uCIw0RY3o/Vb5GT0sMFHrVV7731wFSVy41T5FO1og7G0gXLJh0MkgPRouko/A==", - "dev": true - }, "is-installed-globally": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", @@ -7386,9 +7638,9 @@ "dev": true }, "is-my-json-valid": { - "version": "2.17.2", - "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.17.2.tgz", - "integrity": "sha512-IBhBslgngMQN8DDSppmgDv7RNrlFotuuDsKcrCP3+HbFaVivIBU7u9oiiErw8sH4ynx3+gOGQ3q2otkgiSi6kg==", + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.20.0.tgz", + "integrity": "sha512-XTHBZSIIxNsIsZXg7XB5l8z/OBFosl1Wao4tXLpeC7eKU4Vm/kdop2azkPqULwnfGQjmeDIyey9g7afMMtdWAA==", "dev": true, "requires": { "generate-function": "^2.0.0", @@ -7405,12 +7657,23 @@ "dev": true }, "is-number": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", - "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "dev": true, "requires": { "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } } }, "is-obj": { @@ -7419,38 +7682,6 @@ "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", "dev": true }, - "is-odd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-odd/-/is-odd-2.0.0.tgz", - "integrity": "sha512-OTiixgpZAT1M4NHgS5IguFp/Vz2VI3U7Goh4/HA1adtwyLtSBrxYlcSYkhpAE07s4fKEcjrFxyvtQBND4vFQyQ==", - "dev": true, - "requires": { - "is-number": "^4.0.0" - }, - "dependencies": { - "is-number": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", - "dev": true - } - } - }, - "is-path-cwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", - "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", - "dev": true - }, - "is-path-in-cwd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz", - "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", - "dev": true, - "requires": { - "is-path-inside": "^1.0.0" - } - }, "is-path-inside": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", @@ -7467,28 +7698,8 @@ "dev": true, "requires": { "isobject": "^3.0.1" - }, - "dependencies": { - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - } } }, - "is-posix-bracket": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", - "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", - "dev": true - }, - "is-primitive": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", - "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", - "dev": true - }, "is-promise": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", @@ -7517,10 +7728,13 @@ } }, "is-relative": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-0.1.3.tgz", - "integrity": "sha1-kF/uiuhvRbPsYUvDwVyGnfCHboI=", - "dev": true + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", + "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", + "dev": true, + "requires": { + "is-unc-path": "^1.0.0" + } }, "is-resolvable": { "version": "1.1.0", @@ -7540,12 +7754,30 @@ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", "dev": true }, + "is-symbol": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz", + "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==", + "dev": true, + "requires": { + "has-symbols": "^1.0.0" + } + }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", "dev": true }, + "is-unc-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", + "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", + "dev": true, + "requires": { + "unc-path-regex": "^0.1.2" + } + }, "is-utf8": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", @@ -7577,18 +7809,15 @@ "dev": true }, "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "requires": { - "isarray": "1.0.0" - } + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true }, "isotope-layout": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/isotope-layout/-/isotope-layout-3.0.5.tgz", - "integrity": "sha512-qyZXlTaBilCJu5gxATAYskiZVa1LUCpWfs3hJLq/kFeOElLMH7RPMUk3u/+gGAl8QOgERU7zpzBM9jwrg+uEjg==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/isotope-layout/-/isotope-layout-3.0.6.tgz", + "integrity": "sha512-z2ZKablhocXhoNyWwzJPFd7u7FWbYbVJA51Nvsqsod8jH2ExGc1SwDsSWKE54e3PhXzqf2yZPhFSq/c2MR1arw==", "dev": true, "requires": { "desandro-matches-selector": "^2.0.0", @@ -7617,9 +7846,15 @@ "dev": true }, "jquery": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.3.1.tgz", - "integrity": "sha512-Ubldcmxp5np52/ENotGxlLe6aGMvmF4R8S6tZjsP6Knsaxd/xp3Zrh50cG93lR6nPXyUFwzN3ZSOQI0wRJNdGg==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.4.1.tgz", + "integrity": "sha512-36+AdBzCL+y6qjw5Tx7HgzeGCzC81MDDgaUP8ld2zhx58HdqXGoBd+tHdrBMiyjGQs0Hxs/MLZTu/eHNJJuWPw==", + "dev": true + }, + "js-levenshtein": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", + "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==", "dev": true }, "js-select": { @@ -7645,26 +7880,25 @@ "dev": true }, "js-yaml": { - "version": "3.5.5", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.5.5.tgz", - "integrity": "sha1-A3fDgBfKvHMisNH7zSWkkWQfL74=", + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", + "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", "dev": true, "requires": { - "argparse": "^1.0.2", - "esprima": "^2.6.0" + "argparse": "^1.0.7", + "esprima": "^4.0.0" } }, "jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true, - "optional": true + "dev": true }, "jsesc": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.1.tgz", - "integrity": "sha1-5CGiqOINawgZ3yiQj3glJrlt0f4=", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", "dev": true }, "json-merge-patch": { @@ -7689,9 +7923,9 @@ "dev": true }, "json-schema-traverse": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, "json-stable-stringify": { @@ -7797,58 +8031,84 @@ } }, "jstransformer-markdown-it": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/jstransformer-markdown-it/-/jstransformer-markdown-it-2.0.0.tgz", - "integrity": "sha1-i0Su28lGXck10oC+kDObZxwWzrg=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/jstransformer-markdown-it/-/jstransformer-markdown-it-2.1.0.tgz", + "integrity": "sha1-aewwzkUYvtWZezjwJ2SOjChekvc=", "dev": true, "requires": { "markdown-it": "^8.0.0" } }, "jszip": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-2.6.1.tgz", - "integrity": "sha1-uI86ey5noqBIFSmCx6N1bZxIKPA=", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.2.1.tgz", + "integrity": "sha512-iCMBbo4eE5rb1VCpm5qXOAaUiRKRUKiItn8ah2YQQx9qymmSAY98eyQfioChEYcVQLh0zxJ3wS4A0mh90AVPvw==", "dev": true, "requires": { - "pako": "~1.0.2" + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "set-immediate-shim": "~1.0.1" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "just-extend": { - "version": "1.1.27", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-1.1.27.tgz", - "integrity": "sha512-mJVp13Ix6gFo3SBAy9U/kL+oeZqzlYYYLQBwXVBlVzIsZwBqGREnOro24oC/8s8aox+rJhtZ2DiQof++IrkA+g==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.0.2.tgz", + "integrity": "sha512-FrLwOgm+iXrPV+5zDU6Jqu4gCRXbWEQg2O3SKONsWE4w7AXFRkryS53bpWdaL9cNol+AmR3AEYz6kn+o0fCPnw==", "dev": true }, "jwa": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.1.6.tgz", - "integrity": "sha512-tBO/cf++BUsJkYql/kBbJroKOgHWEigTKBAjjBEmrMGYd1QMBC74Hr4Wo2zCZw6ZrVhlJPvoMrkcOnlWR/DJfw==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", + "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", "dev": true, "requires": { "buffer-equal-constant-time": "1.0.1", - "ecdsa-sig-formatter": "1.0.10", + "ecdsa-sig-formatter": "1.0.11", "safe-buffer": "^5.0.1" } }, "jws": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/jws/-/jws-3.1.5.tgz", - "integrity": "sha512-GsCSexFADNQUr8T5HPJvayTjvPIfoyJPtLQBwn5a4WZQchcrPMPMAWcC1AzJVRDKyD6ZPROPAxgv6rfHViO4uQ==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", + "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", "dev": true, "requires": { - "jwa": "^1.1.5", + "jwa": "^1.4.1", "safe-buffer": "^5.0.1" } }, "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true }, "latest-version": { "version": "3.1.0", @@ -7875,34 +8135,67 @@ } }, "lcid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", "dev": true, "requires": { - "invert-kv": "^1.0.0" + "invert-kv": "^2.0.0" } }, - "leb": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/leb/-/leb-0.3.0.tgz", - "integrity": "sha1-Mr7p+tFoMo1q6oUi2DP0GA7tHaM=", - "dev": true - }, "levn": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", "dev": true, "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "dev": true, + "requires": { + "immediate": "~3.0.5" + } + }, + "liftoff": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.5.0.tgz", + "integrity": "sha1-IAkpG7Mc6oYbvxCnwVooyvdcMew=", + "dev": true, + "requires": { + "extend": "^3.0.0", + "findup-sync": "^2.0.0", + "fined": "^1.0.1", + "flagged-respawn": "^1.0.0", + "is-plain-object": "^2.0.4", + "object.map": "^1.0.0", + "rechoir": "^0.6.2", + "resolve": "^1.1.7" + }, + "dependencies": { + "findup-sync": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", + "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", + "dev": true, + "requires": { + "detect-file": "^1.0.0", + "is-glob": "^3.1.0", + "micromatch": "^3.0.4", + "resolve-dir": "^1.0.1" + } + } } }, "linkify-it": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.0.3.tgz", - "integrity": "sha1-2UpGSPmxwXnWT6lykSaL22zpQ08=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.1.0.tgz", + "integrity": "sha512-4REs8/062kV2DSHxNfq5183zrqXMl7WP0WzABH9IeJI+NLm429FgE1PDecltYfnOoFDFlZGh2T8PfZn0r+GTRg==", "dev": true, "requires": { "uc.micro": "^1.0.1" @@ -7936,36 +8229,53 @@ } }, "loader-runner": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.0.tgz", - "integrity": "sha1-9IKuqC1UPgeSFwDVpG7yb9rGuKI=", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", + "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", "dev": true }, "loader-utils": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.1.0.tgz", - "integrity": "sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0=", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", + "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", "dev": true, "requires": { - "big.js": "^3.1.3", + "big.js": "^5.2.2", "emojis-list": "^2.0.0", - "json5": "^0.5.0" + "json5": "^1.0.1" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } } }, "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, "requires": { - "p-locate": "^2.0.0", + "p-locate": "^3.0.0", "path-exists": "^3.0.0" } }, "lodash": { - "version": "4.17.5", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz", - "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==", + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", "dev": true }, "lodash.assign": { @@ -7992,12 +8302,6 @@ "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", "dev": true }, - "lodash.fill": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/lodash.fill/-/lodash.fill-3.4.0.tgz", - "integrity": "sha1-o8dK5kDQU63w3CB5+HIHiOi/74U=", - "dev": true - }, "lodash.flatten": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", @@ -8016,12 +8320,6 @@ "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8=", "dev": true }, - "lodash.intersection": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.intersection/-/lodash.intersection-4.4.0.tgz", - "integrity": "sha1-ChG6Yx0OlcI8fy9Mu5ppLtF45wU=", - "dev": true - }, "lodash.isboolean": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", @@ -8052,36 +8350,12 @@ "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=", "dev": true }, - "lodash.merge": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.1.tgz", - "integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==", - "dev": true - }, - "lodash.omit": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.omit/-/lodash.omit-4.5.0.tgz", - "integrity": "sha1-brGa5aHuHdnfC5aeZs4Lf6MLXmA=", - "dev": true - }, "lodash.once": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=", "dev": true }, - "lodash.partialright": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/lodash.partialright/-/lodash.partialright-4.2.1.tgz", - "integrity": "sha1-ATDYDoM2MmTUAHTzKbij56ihzEs=", - "dev": true - }, - "lodash.pick": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", - "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=", - "dev": true - }, "lodash.set": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz", @@ -8094,28 +8368,22 @@ "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", "dev": true }, - "lodash.uniq": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", - "dev": true - }, "loglevel": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.1.tgz", - "integrity": "sha1-4PyVEztu8nbNyIh82vJKpvFW+Po=", + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.2.tgz", + "integrity": "sha512-Jt2MHrCNdtIe1W6co3tF5KXGRkzF+TYffiQstfXa04mrss9IKXzAAXYWak8LbZseAQY03sH2GzMCMU0ZOUc9bg==", "dev": true }, "lolex": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-2.3.2.tgz", - "integrity": "sha512-A5pN2tkFj7H0dGIAM6MFvHKMJcPnjZsOMvR7ujCjfgW5TbV6H9vb1PgxLtHvjqNZTHsUolz+6/WEO0N1xNx2ng==", + "version": "2.7.5", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-2.7.5.tgz", + "integrity": "sha512-l9x0+1offnKKIzYVjyXU2SiwhXDLekRzKyhnbyldPHvC7BvLPVpdNUNR2KeMAiCN2D/kLNttZgQD5WjSxuBx3Q==", "dev": true }, "long": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/long/-/long-3.2.0.tgz", - "integrity": "sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", + "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==", "dev": true }, "longest": { @@ -8124,12 +8392,6 @@ "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", "dev": true }, - "longest-streak": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-1.0.0.tgz", - "integrity": "sha1-0GWXxNTDG1LMsfXY+P5xSOr9aWU=", - "dev": true - }, "loose-envify": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", @@ -8156,9 +8418,9 @@ "dev": true }, "lru-cache": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", - "integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==", + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", "dev": true, "requires": { "pseudomap": "^1.0.2", @@ -8172,12 +8434,22 @@ "dev": true }, "make-dir": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.2.0.tgz", - "integrity": "sha512-aNUAa4UMg/UougV25bbrU4ZaaKNjJ/3/xnvg/twpmKROPdKZPZ9wGgI0opdZzO8q/zUFawoUuixuOv33eZ61Iw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "make-iterator": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz", + "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==", "dev": true, "requires": { - "pify": "^3.0.0" + "kind-of": "^6.0.2" } }, "mamacro": { @@ -8186,6 +8458,15 @@ "integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==", "dev": true }, + "map-age-cleaner": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", + "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", + "dev": true, + "requires": { + "p-defer": "^1.0.0" + } + }, "map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", @@ -8208,9 +8489,9 @@ } }, "markdown-it": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.1.tgz", - "integrity": "sha512-CzzqSSNkFRUf9vlWvhK1awpJreMRqdCrBvZ8DIoDWTOkESMIF741UPAhuAmbyWmdiFPA6WARNhnu2M6Nrhwa+A==", + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz", + "integrity": "sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==", "dev": true, "requires": { "argparse": "^1.0.7", @@ -8220,36 +8501,10 @@ "uc.micro": "^1.0.5" } }, - "markdown-table": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-0.4.0.tgz", - "integrity": "sha1-iQwsGzv+g/sA5BKbjkz+ZFJw+dE=", - "dev": true - }, - "markdown-to-ast": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/markdown-to-ast/-/markdown-to-ast-3.4.0.tgz", - "integrity": "sha1-Diy6gTkLBUmpFT7DsNkVthwWS+c=", - "dev": true, - "requires": { - "debug": "^2.1.3", - "remark": "^5.0.1", - "structured-source": "^3.0.2", - "traverse": "^0.6.6" - }, - "dependencies": { - "traverse": { - "version": "0.6.6", - "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.6.6.tgz", - "integrity": "sha1-y99WD9e5r2MlAv7UD5GMFX6pcTc=", - "dev": true - } - } - }, "masonry-layout": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/masonry-layout/-/masonry-layout-4.2.1.tgz", - "integrity": "sha512-ngJmxszn+JSKreNnrwkjks9OUuwVL2JR8T4iVeE3+g+sJjyoxTLdUNRbYONA25y+nWZn+WZI2GvThRAV+z5Duw==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/masonry-layout/-/masonry-layout-4.2.2.tgz", + "integrity": "sha512-iGtAlrpHNyxaR19CvKC3npnEcAwszXoyJiI8ARV2ePi7fmYhIud25MHK8Zx4P0LCC4d3TNO9+rFa1KoK1OEOaA==", "dev": true, "requires": { "get-size": "^2.0.2", @@ -8257,13 +8512,22 @@ } }, "md5.js": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", - "integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=", + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", "dev": true, "requires": { "hash-base": "^3.0.0", - "inherits": "^2.0.1" + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + } } }, "mdurl": { @@ -8278,12 +8542,14 @@ "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" }, "mem": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", - "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", + "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", "dev": true, "requires": { - "mimic-fn": "^1.0.0" + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^2.0.0", + "p-is-promise": "^2.0.0" } }, "memory-fs": { @@ -8333,24 +8599,24 @@ "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" }, "micromatch": { - "version": "2.3.11", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", - "dev": true, - "requires": { - "arr-diff": "^2.0.0", - "array-unique": "^0.2.1", - "braces": "^1.8.2", - "expand-brackets": "^0.1.4", - "extglob": "^0.3.1", - "filename-regex": "^2.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.1", - "kind-of": "^3.0.2", - "normalize-path": "^2.0.1", - "object.omit": "^2.0.0", - "parse-glob": "^3.0.4", - "regex-cache": "^0.4.2" + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.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.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" } }, "miller-rabin": { @@ -8366,25 +8632,28 @@ "mime": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", - "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==" + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==", + "dev": true }, "mime-db": { "version": "1.33.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", - "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==" + "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", + "dev": true }, "mime-types": { "version": "2.1.18", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", + "dev": true, "requires": { "mime-db": "~1.33.0" } }, "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "dev": true }, "min-document": { @@ -8490,27 +8759,28 @@ } }, "mocha": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-5.0.1.tgz", - "integrity": "sha512-SpwyojlnE/WRBNGtvJSNfllfm5PqEDFxcWluSIgLeSBJtXG4DmoX2NNAeEA7rP5kK+79VgtVq8nG6HskaL1ykg==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-5.2.0.tgz", + "integrity": "sha512-2IUgKDhc3J7Uug+FxMXuqIyYzH7gJjXECKe/w43IGgQHTSj3InJi+yAA7T24L9bQMRKiUEHxEX37G5JpVUGLcQ==", "dev": true, "requires": { - "browser-stdout": "1.3.0", - "commander": "2.11.0", + "browser-stdout": "1.3.1", + "commander": "2.15.1", "debug": "3.1.0", - "diff": "3.3.1", + "diff": "3.5.0", "escape-string-regexp": "1.0.5", "glob": "7.1.2", - "growl": "1.10.3", + "growl": "1.10.5", "he": "1.1.1", + "minimatch": "3.0.4", "mkdirp": "0.5.1", - "supports-color": "4.4.0" + "supports-color": "5.4.0" }, "dependencies": { "commander": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz", - "integrity": "sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==", + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz", + "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==", "dev": true }, "debug": { @@ -8536,19 +8806,13 @@ "path-is-absolute": "^1.0.0" } }, - "has-flag": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", - "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", - "dev": true - }, "supports-color": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", - "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", + "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", "dev": true, "requires": { - "has-flag": "^2.0.0" + "has-flag": "^3.0.0" } } } @@ -8584,17 +8848,6 @@ "mkdirp": "^0.5.1", "rimraf": "^2.5.4", "run-queue": "^1.0.3" - }, - "dependencies": { - "rimraf": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", - "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", - "dev": true, - "requires": { - "glob": "^7.0.5" - } - } } }, "ms": { @@ -8602,6 +8855,18 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, + "multimatch": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", + "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", + "dev": true, + "requires": { + "array-differ": "^1.0.0", + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "minimatch": "^3.0.0" + } + }, "mute-stream": { "version": "0.0.7", "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", @@ -8658,16 +8923,16 @@ } }, "nan": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz", - "integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==", + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", + "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", "dev": true, "optional": true }, "nanomatch": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.9.tgz", - "integrity": "sha512-n8R9bS8yQ6eSXaV6jHUpKzD8gLsin02w1HSFiegwrs9E098Ylhw5jdyKPaYqvHknHaSCKTPp7C8dGCQ0q9koXA==", + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", "dev": true, "requires": { "arr-diff": "^4.0.0", @@ -8675,33 +8940,12 @@ "define-property": "^2.0.2", "extend-shallow": "^3.0.2", "fragment-cache": "^0.2.1", - "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", "to-regex": "^3.0.1" - }, - "dependencies": { - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true - }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", - "dev": true - } } }, "natural-compare": { @@ -8739,6 +8983,12 @@ "wrap-ansi": "^2.0.0" } }, + "invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "dev": true + }, "is-fullwidth-code-point": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", @@ -8748,6 +8998,15 @@ "number-is-nan": "^1.0.0" } }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "dev": true, + "requires": { + "invert-kv": "^1.0.0" + } + }, "os-locale": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", @@ -8805,16 +9064,31 @@ "optional": true }, "needle": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/needle/-/needle-2.2.1.tgz", - "integrity": "sha512-t/ZswCM9JTWjAdXS9VpvqhI2Ct2sL2MdY4fUXqGJaGBk13ge99ObqRksRTbBE56K+wxUXwwfZYOuZHifFW9q+Q==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-2.4.0.tgz", + "integrity": "sha512-4Hnwzr3mi5L97hMYeNl8wRW/Onhy4nUKR/lVemJ8gJedxxUyBLm9kkrDColJvoSfwi0jCNhD+xCdOtiGDQiRZg==", "dev": true, "requires": { - "debug": "^2.1.2", + "debug": "^3.2.6", "iconv-lite": "^0.4.4", "sax": "^1.2.4" }, "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, "sax": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", @@ -8826,12 +9100,13 @@ "negotiator": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", - "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" + "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=", + "dev": true }, "neo-async": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.5.1.tgz", - "integrity": "sha512-3KL3fvuRkZ7s4IFOMfztb7zJp3QaVWnBeGoJlgB38XnCRPj/0tLzzLG5IB8NYOHbJ8g8UGrgZv44GLDk6CxTxA==", + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", + "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", "dev": true }, "netmask": { @@ -8855,25 +9130,47 @@ "stylus": "0.54.5" } }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, "nise": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/nise/-/nise-1.3.0.tgz", - "integrity": "sha512-U+Krdzhsw4losPP/Rij5UGTLQgS9gaWmXdRIbZQIQWVsUGDBo+N0m9mrY9CCEnmwssgswwydxLJUZtFfouC0gA==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.0.tgz", + "integrity": "sha512-Z3sfYEkLFzFmL8KY6xnSJLRxwQwYBjOXi/24lb62ZnZiGA0JUzGGTI6TBIgfCSMIDl9Jlu8SRmHNACLTemDHww==", "dev": true, "requires": { - "@sinonjs/formatio": "^2.0.0", - "just-extend": "^1.1.27", - "lolex": "^2.3.2", - "path-to-regexp": "^1.7.0", - "text-encoding": "^0.6.4" + "@sinonjs/formatio": "^3.1.0", + "@sinonjs/text-encoding": "^0.7.1", + "just-extend": "^4.0.2", + "lolex": "^4.1.0", + "path-to-regexp": "^1.7.0" }, "dependencies": { + "@sinonjs/formatio": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.1.tgz", + "integrity": "sha512-tsHvOB24rvyvV2+zKMmPkZ7dXX6LSLKZ7aOtXY6Edklp0uRcgGpOsQTTGTcWViFyx4uhWc6GV8QdnALbIbIdeQ==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1", + "@sinonjs/samsam": "^3.1.0" + } + }, "isarray": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", "dev": true }, + "lolex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.1.0.tgz", + "integrity": "sha512-BYxIEXiVq5lGIXeVHnsFzqa1TxN5acnKnPCdlZSpzm8viNEOhiigupA4vTQ9HEFQ6nLTQ9wQOgBknJgzUYQ9Aw==", + "dev": true + }, "path-to-regexp": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", @@ -8886,52 +9183,37 @@ } }, "node-forge": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.5.tgz", - "integrity": "sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ==", + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.8.4.tgz", + "integrity": "sha512-UOfdpxivIYY4g5tqp5FNRNgROVNxRACUxxJREntJLFaJr1E0UEqFtUIk0F/jYx/E+Y6sVXd0KDi/m5My0yGCVw==", "dev": true }, "node-jose": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-jose/-/node-jose-1.0.0.tgz", - "integrity": "sha512-RE3P8l60Rj9ELrpPmvw6sOQ1hSyYfmQdNUMCa4EN7nCE1ux5JVX+GfXv+mfUTEMhZwNMwxBtI0+X1CKKeukSVQ==", - "dev": true, - "requires": { - "base64url": "^3.0.0", - "es6-promise": "^4.0.5", - "lodash.assign": "^4.0.8", - "lodash.clone": "^4.3.2", - "lodash.fill": "^3.2.2", - "lodash.flatten": "^4.2.0", - "lodash.intersection": "^4.1.2", - "lodash.merge": "^4.3.5", - "lodash.omit": "^4.2.1", - "lodash.partialright": "^4.1.3", - "lodash.pick": "^4.2.0", - "lodash.uniq": "^4.2.1", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/node-jose/-/node-jose-1.1.3.tgz", + "integrity": "sha512-kupfi4uGWhRjnOmtie2T64cLge5a1TZyalEa8uWWWBgtKBcu41A4IGKpI9twZAxRnmviamEUQRK7LSyfFb2w8A==", + "dev": true, + "requires": { + "base64url": "^3.0.1", + "es6-promise": "^4.2.6", + "lodash": "^4.17.11", "long": "^4.0.0", - "node-forge": "^0.7.1", - "uuid": "^3.0.1" + "node-forge": "^0.8.1", + "uuid": "^3.3.2" }, "dependencies": { "es6-promise": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.4.tgz", - "integrity": "sha512-/NdNZVJg+uZgtm9eS3O6lrOLYmQag2DjdEXuPaHlZ6RuVqgqaVZfgYCepEIKsLqwdQArOPtC3XzRLqGGfT8KQQ==", - "dev": true - }, - "long": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", - "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.6.tgz", + "integrity": "sha512-aRVgGdnmW2OiySVPUC9e6m+plolMAJKjZnQlCwNSuK5yQ0JN61DZSO1X1Ufd1foqWRAlig0rhduTCHe7sVtK5Q==", "dev": true } } }, "node-libs-browser": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.1.0.tgz", - "integrity": "sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.0.tgz", + "integrity": "sha512-5MQunG/oyOaBdttrL40dA7bUfPORLRWMUJLQtMg7nluxUvk5XwnLdL9twQHFAjRx/y7mIMkLKT9++qPbbk6BZA==", "dev": true, "requires": { "assert": "^1.1.1", @@ -8941,7 +9223,7 @@ "constants-browserify": "^1.0.0", "crypto-browserify": "^3.11.0", "domain-browser": "^1.1.1", - "events": "^1.0.0", + "events": "^3.0.0", "https-browserify": "^1.0.0", "os-browserify": "^0.3.0", "path-browserify": "0.0.0", @@ -8955,10 +9237,33 @@ "timers-browserify": "^2.0.4", "tty-browserify": "0.0.0", "url": "^0.11.0", - "util": "^0.10.3", + "util": "^0.11.0", "vm-browserify": "0.0.4" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "util": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", + "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", + "dev": true, + "requires": { + "inherits": "2.0.3" + } + } } }, + "node-modules-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", + "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", + "dev": true + }, "node-notifier": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-5.2.1.tgz", @@ -8969,17 +9274,15 @@ "semver": "^5.4.1", "shellwords": "^0.1.1", "which": "^1.3.0" - }, - "dependencies": { - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } + } + }, + "node-releases": { + "version": "1.1.23", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.23.tgz", + "integrity": "sha512-uq1iL79YjfYC0WXoHbC/z28q/9pOl8kSHaXdWmAAc8No+bDwqkZbzIJz55g/MUsPgSGm9LZ7QSUbzTcH5tz47w==", + "dev": true, + "requires": { + "semver": "^5.3.0" } }, "node-rsa": { @@ -9032,12 +9335,6 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", "dev": true - }, - "underscore": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=", - "dev": true } } }, @@ -9051,13 +9348,13 @@ } }, "normalize-package-data": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, "requires": { "hosted-git-info": "^2.1.4", - "is-builtin-module": "^1.0.0", + "resolve": "^1.10.0", "semver": "2 || 3 || 4 || 5", "validate-npm-package-license": "^3.0.1" } @@ -9081,9 +9378,9 @@ } }, "nth-check": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.1.tgz", - "integrity": "sha1-mSms32KPwsQQmN6rgqxYDPFJquQ=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", "dev": true, "requires": { "boolbase": "~1.0.0" @@ -9096,9 +9393,9 @@ "dev": true }, "oauth-sign": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", "dev": true }, "object-assign": { @@ -9126,9 +9423,24 @@ "requires": { "is-descriptor": "^0.1.0" } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } } } }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + }, "object-visit": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", @@ -9136,24 +9448,28 @@ "dev": true, "requires": { "isobject": "^3.0.0" - }, - "dependencies": { - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - } } }, - "object.omit": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", - "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "object.defaults": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", + "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=", + "dev": true, + "requires": { + "array-each": "^1.0.1", + "array-slice": "^1.0.0", + "for-own": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "object.map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", + "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=", "dev": true, "requires": { - "for-own": "^0.1.4", - "is-extendable": "^0.1.1" + "for-own": "^1.0.0", + "make-iterator": "^1.0.0" } }, "object.pick": { @@ -9163,14 +9479,6 @@ "dev": true, "requires": { "isobject": "^3.0.1" - }, - "dependencies": { - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - } } }, "on-finished": { @@ -9203,6 +9511,14 @@ "dev": true, "requires": { "mimic-fn": "^1.0.0" + }, + "dependencies": { + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + } } }, "opn": { @@ -9250,14 +9566,14 @@ "dev": true }, "os-locale": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", - "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.0.1.tgz", + "integrity": "sha512-7g5e7dmXPtzcP4bgsZ8ixDVqA7oWYuEz4lOSujeWyliPai4gfVDiFIcwBg3aGCPnmSGfzOKTK3ccPn0CKv3DBw==", "dev": true, "requires": { - "execa": "^0.7.0", - "lcid": "^1.0.0", - "mem": "^1.1.0" + "execa": "^0.10.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" } }, "os-name": { @@ -9282,6 +9598,16 @@ "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", "dev": true }, + "osenv": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "dev": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, "outlayer": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/outlayer/-/outlayer-2.1.1.tgz", @@ -9293,34 +9619,46 @@ "get-size": "^2.0.2" } }, + "p-defer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", + "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "dev": true + }, "p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", "dev": true }, + "p-is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", + "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", + "dev": true + }, "p-limit": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.2.0.tgz", - "integrity": "sha512-Y/OtIaXtUPr4/YpMv1pCL5L5ed0rumAaAeBSj12F+bSlMdys7i8oQF/GUJmfpTS/QoaRrS/k6pma29haJpsMng==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", "dev": true, "requires": { - "p-try": "^1.0.0" + "p-try": "^2.0.0" } }, "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, "requires": { - "p-limit": "^1.1.0" + "p-limit": "^2.0.0" } }, "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, "pac-proxy-agent": { @@ -9340,13 +9678,19 @@ }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true } } }, @@ -9376,9 +9720,9 @@ } }, "pako": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz", - "integrity": "sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg==", + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.10.tgz", + "integrity": "sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==", "dev": true }, "parallel-transform": { @@ -9393,42 +9737,28 @@ } }, "parse-asn1": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz", - "integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==", + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.4.tgz", + "integrity": "sha512-Qs5duJcuvNExRfFZ99HDD3z4mAi3r9Wl/FOjEOijlxwCZs7E7mW2vjTpgQ4J8LpTF8x5v+1Vn5UQFejmWT11aw==", "dev": true, "requires": { "asn1.js": "^4.0.0", "browserify-aes": "^1.0.0", "create-hash": "^1.1.0", "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3" - } - }, - "parse-entities": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-1.1.2.tgz", - "integrity": "sha512-5N9lmQ7tmxfXf+hO3X6KRG6w7uYO/HL9fHalSySTdyn63C3WNvTM/1R8tn1u1larNcEbo3Slcy2bsVDQqvEpUg==", - "dev": true, - "requires": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" } }, - "parse-glob": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", - "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", + "parse-filepath": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", + "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=", "dev": true, "requires": { - "glob-base": "^0.3.0", - "is-dotfile": "^1.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.0" + "is-absolute": "^1.0.0", + "map-cache": "^0.2.0", + "path-root": "^0.1.1" } }, "parse-json": { @@ -9440,6 +9770,12 @@ "error-ex": "^1.2.0" } }, + "parse-passwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", + "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", + "dev": true + }, "parse5": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/parse5/-/parse5-3.0.3.tgz", @@ -9452,7 +9788,8 @@ "parseurl": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", - "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" + "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=", + "dev": true }, "pascalcase": { "version": "0.1.1", @@ -9507,9 +9844,24 @@ "dev": true }, "path-parse": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz", - "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "path-root": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", + "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=", + "dev": true, + "requires": { + "path-root-regex": "^0.1.0" + } + }, + "path-root-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", + "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=", "dev": true }, "path-to-regexp": { @@ -9543,9 +9895,9 @@ "dev": true }, "pbkdf2": { - "version": "3.0.16", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.16.tgz", - "integrity": "sha512-y4CXP3thSxqf7c0qmOF+9UeOTrifiVTIM+u7NWlq+PRsHbr7r7dpCmvzrZxa96JJUNi0Y5w9VqG5ZNeCVMoDcA==", + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", + "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", "dev": true, "requires": { "create-hash": "^1.1.2", @@ -9568,9 +9920,9 @@ "dev": true }, "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true }, "pinkie": { @@ -9589,19 +9941,19 @@ } }, "pino": { - "version": "4.16.1", - "resolved": "https://registry.npmjs.org/pino/-/pino-4.16.1.tgz", - "integrity": "sha512-ST/IC5RMyqrOZL+Hq6LDwz5h4fGKABXzx2/5Ze7rz5TjuPvE8uI72dzj409xkq9JjyWsKoOOApgXn8kEjJ73yg==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/pino/-/pino-5.9.0.tgz", + "integrity": "sha512-6sHy38gWsZbrmYq6vk343VCThy93ZdVfmLsHDVzbl/j621SjSaxCcS/ySmxK/hRmq8jpQb3n44dNRIeqbbQw6A==", "dev": true, "requires": { - "chalk": "^2.3.2", "fast-json-parse": "^1.0.3", - "fast-safe-stringify": "^1.2.3", + "fast-redact": "^1.4.0", + "fast-safe-stringify": "^2.0.6", "flatstr": "^1.0.5", - "pino-std-serializers": "^2.0.0", + "pino-std-serializers": "^2.3.0", "pump": "^3.0.0", - "quick-format-unescaped": "^1.1.2", - "split2": "^2.2.0" + "quick-format-unescaped": "^3.0.0", + "sonic-boom": "^0.6.3" }, "dependencies": { "pump": { @@ -9617,18 +9969,27 @@ } }, "pino-std-serializers": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-2.1.0.tgz", - "integrity": "sha512-NqWvrQD/GpY78ybiNBzi/dg8ylERhDo6nB33j5sfCKpUmWLc3lYzeoBjyRoCMvEpDpL9lmH6ufRd0jw6rcd1pQ==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-2.4.2.tgz", + "integrity": "sha512-WaL504dO8eGs+vrK+j4BuQQq6GLKeCCcHaMB2ItygzVURcL1CycwNEUHTD/lHFHs/NL5qAz2UKrjYWXKSf4aMQ==", "dev": true }, + "pirates": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", + "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", + "dev": true, + "requires": { + "node-modules-regexp": "^1.0.0" + } + }, "pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", "dev": true, "requires": { - "find-up": "^2.1.0" + "find-up": "^3.0.0" } }, "pluralize": { @@ -9648,9 +10009,9 @@ } }, "popper.js": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.14.1.tgz", - "integrity": "sha1-uIFeXNpvYvwgQuR2GGSfdYZuZ1M=", + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.15.0.tgz", + "integrity": "sha512-w010cY1oCUmI+9KwwlWki+r5jxKfTFDVoadl7MSrIujHU5MJ5OR6HTDj6Xo8aoR/QsA56x8jKjA59qGH4ELtrA==", "dev": true }, "portscanner": { @@ -9669,14 +10030,14 @@ "dev": true }, "postcss": { - "version": "6.0.19", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.19.tgz", - "integrity": "sha512-f13HRz0HtVwVaEuW6J6cOUCBLFtymhgyLPV7t4QEk2UD3twRI9IluDcQNdzQdBpiixkXj2OmzejhhTbSbDxNTg==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.6.tgz", + "integrity": "sha512-Nq/rNjnHFcKgCDDZYO0lNsl6YWe6U7tTy+ESN+PnLxebL8uBtYX59HZqvrj7YLK5UCyll2hqDsJOo3ndzEW8Ug==", "dev": true, "requires": { - "chalk": "^2.3.1", + "chalk": "^2.4.1", "source-map": "^0.6.1", - "supports-color": "^5.2.0" + "supports-color": "^5.5.0" }, "dependencies": { "source-map": { @@ -9699,12 +10060,6 @@ "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", "dev": true }, - "preserve": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", - "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", - "dev": true - }, "private": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", @@ -9738,9 +10093,9 @@ "dev": true }, "progress": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.0.tgz", - "integrity": "sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8=", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true }, "promise": { @@ -9765,18 +10120,18 @@ "dev": true }, "proxy-addr": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.3.tgz", - "integrity": "sha512-jQTChiCJteusULxjBp8+jftSQE5Obdl3k4cnmLA6WXtK6XFuWRnvVL7aCiBqaLPM8c4ph0S4tKna8XvmIwEnXQ==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.5.tgz", + "integrity": "sha512-t/7RxHXPH6cJtP0pRG6smSr9QJidhB+3kXu0KgXnbGYMgzEnUxRQ4/LDdfOwZEMyIh3/xHb8PX3t+lfL9z+YVQ==", "requires": { "forwarded": "~0.1.2", - "ipaddr.js": "1.6.0" + "ipaddr.js": "1.9.0" } }, "proxy-agent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-3.0.0.tgz", - "integrity": "sha512-g6n6vnk8fRf705ShN+FEXFG/SDJaW++lSs0d9KaJh4uBWW/wi7en4Cpo5VYQW3SZzAE121lhB/KLQrbURoubZw==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-2.3.1.tgz", + "integrity": "sha512-CNKuhC1jVtm8KJYFTS2ZRO71VCBx3QSA92So/e6NrY6GoJonkx3Irnk4047EsCcswczwqAekRj3s8qLRGahSKg==", "dev": true, "requires": { "agent-base": "^4.2.0", @@ -9790,23 +10145,19 @@ }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } }, - "lru-cache": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz", - "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true } } }, @@ -9828,58 +10179,73 @@ "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", "dev": true }, + "psl": { + "version": "1.1.32", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.32.tgz", + "integrity": "sha512-MHACAkHpihU/REGGPLj4sEfc/XKW2bheigvHO1dUqjaKigMp1C8+WLQYRGgeKFMsw5PMfegZcaN8IDXK/cD0+g==", + "dev": true + }, "public-encrypt": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.2.tgz", - "integrity": "sha512-4kJ5Esocg8X3h8YgJsKAuoesBgB7mqH3eowiDzMUPKiRDDE7E/BqqZD1hnTByIaAFiwAw246YEltSq7tdrOH0Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", "dev": true, "requires": { "bn.js": "^4.1.0", "browserify-rsa": "^4.0.0", "create-hash": "^1.1.0", "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1" + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + } } }, "pug": { - "version": "2.0.0-rc.4", - "resolved": "https://registry.npmjs.org/pug/-/pug-2.0.0-rc.4.tgz", - "integrity": "sha512-SL7xovj6E2Loq9N0UgV6ynjMLW4urTFY/L/Fprhvz13Xc5vjzkjZjI1QHKq31200+6PSD8PyU6MqrtCTJj6/XA==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pug/-/pug-2.0.3.tgz", + "integrity": "sha1-ccuoJTfJWl6rftBGluQiH1Oqh44=", "dev": true, "requires": { - "pug-code-gen": "^2.0.0", - "pug-filters": "^2.1.5", - "pug-lexer": "^3.1.0", - "pug-linker": "^3.0.3", - "pug-load": "^2.0.9", - "pug-parser": "^4.0.0", - "pug-runtime": "^2.0.3", - "pug-strip-comments": "^1.0.2" + "pug-code-gen": "^2.0.1", + "pug-filters": "^3.1.0", + "pug-lexer": "^4.0.0", + "pug-linker": "^3.0.5", + "pug-load": "^2.0.11", + "pug-parser": "^5.0.0", + "pug-runtime": "^2.0.4", + "pug-strip-comments": "^1.0.3" } }, "pug-attrs": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-2.0.2.tgz", - "integrity": "sha1-i+KyIlVo/6ddG4Zpgr/59BEa/8s=", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-2.0.3.tgz", + "integrity": "sha1-owlflw5kFR972tlX7vVftdeQXRU=", "dev": true, "requires": { "constantinople": "^3.0.1", "js-stringify": "^1.0.1", - "pug-runtime": "^2.0.3" + "pug-runtime": "^2.0.4" } }, "pug-code-gen": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-2.0.0.tgz", - "integrity": "sha512-E4oiJT+Jn5tyEIloj8dIJQognbiNNp0i0cAJmYtQTFS0soJ917nlIuFtqVss3IXMEyQKUew3F4gIkBpn18KbVg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-2.0.1.tgz", + "integrity": "sha1-CVHsgyJddNjPxHan+Zolm199BQw=", "dev": true, "requires": { "constantinople": "^3.0.1", "doctypes": "^1.1.0", "js-stringify": "^1.0.1", - "pug-attrs": "^2.0.2", + "pug-attrs": "^2.0.3", "pug-error": "^1.3.2", - "pug-runtime": "^2.0.3", + "pug-runtime": "^2.0.4", "void-elements": "^2.0.1", "with": "^5.0.0" } @@ -9891,24 +10257,24 @@ "dev": true }, "pug-filters": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-2.1.5.tgz", - "integrity": "sha512-xkw71KtrC4sxleKiq+cUlQzsiLn8pM5+vCgkChW2E6oNOzaqTSIBKIQ5cl4oheuDzvJYCTSYzRaVinMUrV4YLQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-3.1.0.tgz", + "integrity": "sha1-JxZVVbwEwjbkqisDZiRt+gIbYm4=", "dev": true, "requires": { - "clean-css": "^3.3.0", + "clean-css": "^4.1.11", "constantinople": "^3.0.1", "jstransformer": "1.0.0", "pug-error": "^1.3.2", - "pug-walk": "^1.1.5", + "pug-walk": "^1.1.7", "resolve": "^1.1.6", "uglify-js": "^2.6.1" } }, "pug-lexer": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-3.1.0.tgz", - "integrity": "sha1-/QhzdtSmdbT1n4/vQiiDQ06VgaI=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-4.0.0.tgz", + "integrity": "sha1-IQwYRX7y4XYCQnQMXmR715TOwng=", "dev": true, "requires": { "character-parser": "^2.1.1", @@ -9917,29 +10283,29 @@ } }, "pug-linker": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-3.0.3.tgz", - "integrity": "sha512-DCKczglCXOzJ1lr4xUj/lVHYvS+lGmR2+KTCjZjtIpdwaN7lNOoX2SW6KFX5X4ElvW+6ThwB+acSUg08UJFN5A==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-3.0.5.tgz", + "integrity": "sha1-npp65ABWgtAn3uuWsAD4juuDoC8=", "dev": true, "requires": { "pug-error": "^1.3.2", - "pug-walk": "^1.1.5" + "pug-walk": "^1.1.7" } }, "pug-load": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-2.0.9.tgz", - "integrity": "sha512-BDdZOCru4mg+1MiZwRQZh25+NTRo/R6/qArrdWIf308rHtWA5N9kpoUskRe4H6FslaQujC+DigH9LqlBA4gf6Q==", + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-2.0.11.tgz", + "integrity": "sha1-5kjlftET/iwfRdV4WOorrWvAFSc=", "dev": true, "requires": { "object-assign": "^4.1.0", - "pug-walk": "^1.1.5" + "pug-walk": "^1.1.7" } }, "pug-parser": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-4.0.0.tgz", - "integrity": "sha512-ocEUFPdLG9awwFj0sqi1uiZLNvfoodCMULZzkRqILryIWc/UUlDlxqrKhKjAIIGPX/1SNsvxy63+ayEGocGhQg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-5.0.0.tgz", + "integrity": "sha1-45Stmz/KkxI5QK/4hcBuRKt+aOQ=", "dev": true, "requires": { "pug-error": "^1.3.2", @@ -9947,24 +10313,24 @@ } }, "pug-runtime": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-2.0.3.tgz", - "integrity": "sha1-mBYmB7D86eJU1CfzOYelrucWi9o=", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-2.0.4.tgz", + "integrity": "sha1-4XjhvaaKsujArPybztLFT9iM61g=", "dev": true }, "pug-strip-comments": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-1.0.2.tgz", - "integrity": "sha1-0xOvoBvMN0mA4TmeI+vy65vchRM=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-1.0.3.tgz", + "integrity": "sha1-8VWVkiBu3G+FMQ2s9K+0igJa9Z8=", "dev": true, "requires": { "pug-error": "^1.3.2" } }, "pug-walk": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-1.1.5.tgz", - "integrity": "sha512-rJlH1lXerCIAtImXBze3dtKq/ykZMA4rpO9FnPcIgsWcxZLOvd8zltaoeOVFyBSSqCkhhJWbEbTMga8UxWUUSA==", + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-1.1.7.tgz", + "integrity": "sha1-wA1cUSi6xYBr7BXSt+fNq+QlMfM=", "dev": true }, "pump": { @@ -9978,26 +10344,26 @@ } }, "pumpify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.4.0.tgz", - "integrity": "sha512-2kmNR9ry+Pf45opRVirpNuIFotsxUGLaYqxIwuR77AYrYRMuFCz9eryHBS52L360O+NcR383CL4QYlMKPq4zYA==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", "dev": true, "requires": { - "duplexify": "^3.5.3", + "duplexify": "^3.6.0", "inherits": "^2.0.3", "pump": "^2.0.0" } }, "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", "dev": true }, "puppeteer": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-1.11.0.tgz", - "integrity": "sha512-iG4iMOHixc2EpzqRV+pv7o3GgmU2dNYEMkvKwSaQO/vMZURakwSOn/EYJ6OIRFYOque1qorzIBvrytPIQB3YzQ==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-1.17.0.tgz", + "integrity": "sha512-3EXZSximCzxuVKpIHtyec8Wm2dWZn1fc5tQi34qWfiUgubEVYHjUvr0GOJojqf3mifI6oyKnCdrGxaOI+lWReA==", "dev": true, "requires": { "debug": "^4.1.0", @@ -10011,18 +10377,18 @@ }, "dependencies": { "debug": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.0.tgz", - "integrity": "sha512-heNPJUJIqC+xB6ayLAMHaIrmN9HKa7aQO8MGqKpvCA+uJYVcvR6l5kgdrhRuwPFHU7P5/A1w0BjByPHwpfTDKg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "dev": true, "requires": { "ms": "^2.1.1" } }, "mime": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.0.tgz", - "integrity": "sha512-ikBcWwyqXQSHKtciCcctu9YfPbFYZ4+gbHEmE0Q8jzcTYQg5dHCr3g2wwAZjPoJfQVXZq6KXAjpXOTf5/cjT7w==", + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.3.tgz", + "integrity": "sha512-QgrPRJfE+riq5TPZMcHZOtm8c6K/yYrMbKIoRfapfiGLxS8OTeIfRhUGW5LU7MlRa52KOAGCfUNruqLrIBvWZw==", "dev": true }, "ms": { @@ -10030,28 +10396,14 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", "dev": true - }, - "progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true - }, - "rimraf": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", - "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", - "dev": true, - "requires": { - "glob": "^7.0.5" - } } } }, "qs": { "version": "6.5.1", "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==", + "dev": true }, "querystring": { "version": "0.2.0", @@ -10065,59 +10417,15 @@ "dev": true }, "quick-format-unescaped": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-1.1.2.tgz", - "integrity": "sha1-DKWB3jF0vs7yWsPC6JVjQjgdtpg=", - "dev": true, - "requires": { - "fast-safe-stringify": "^1.0.8" - } - }, - "randomatic": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz", - "integrity": "sha512-D5JUjPyJbaJDkuAazpVnSfVkLlpeO3wDlPROTMLGKG1zMFNFRgrciKo1ltz/AzNTkqE0HzDx655QOL51N06how==", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-3.0.2.tgz", + "integrity": "sha512-FXTaCkwvpIlkdKeGDNgcq07SXWS383noQUuZjvdE1QcTt+eLuqof6/BDiEPqB59FWLie/l91+HtlJSw7iCViSA==", + "dev": true }, "randombytes": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.6.tgz", - "integrity": "sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", "dev": true, "requires": { "safe-buffer": "^5.1.0" @@ -10136,17 +10444,37 @@ "range-parser": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", - "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=" + "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=", + "dev": true }, "raw-body": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz", - "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", + "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", "requires": { - "bytes": "3.0.0", - "http-errors": "1.6.2", - "iconv-lite": "0.4.19", + "bytes": "3.1.0", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", "unpipe": "1.0.0" + }, + "dependencies": { + "http-errors": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", + "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + } + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" + } } }, "rc": { @@ -10227,15 +10555,14 @@ } }, "readdirp": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", - "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "minimatch": "^3.0.2", - "readable-stream": "^2.0.2", - "set-immediate-shim": "^1.0.1" + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" } }, "readline2": { @@ -10295,18 +10622,18 @@ } }, "regenerate": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.3.3.tgz", - "integrity": "sha512-jVpo1GadrDAK59t/0jRx5VxYWQEDkkEKi6+HjE3joFVLfDOh9Xrdh0dF1eSq+BI/SwvTQ44gSscJ8N5zYL61sg==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", + "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", "dev": true }, "regenerate-unicode-properties": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-5.1.3.tgz", - "integrity": "sha512-Yjy6t7jFQczDhYE+WVm7pg6gWYE258q4sUkk9qDErwXJIqx7jU9jGrMFHutJK/SRfcg7MEkXjGaYiVlOZyev/A==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz", + "integrity": "sha512-LGZzkgtLY79GeXLm8Dp0BVLdQlWICzBnJz/ipWUgo59qBaZ+BHtq51P2q1uVZlppMuUAT37SDk39qUbjTWB7bA==", "dev": true, "requires": { - "regenerate": "^1.3.3" + "regenerate": "^1.4.0" } }, "regenerator-runtime": { @@ -10316,23 +10643,14 @@ "dev": true }, "regenerator-transform": { - "version": "0.12.3", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.12.3.tgz", - "integrity": "sha512-y2uxO/6u+tVmtEDIKo+tLCtI0GcbQr0OreosKgCd7HP4VypGjtTrw79DezuwT+W5QX0YWuvpeBOgumrepwM1kA==", + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.0.tgz", + "integrity": "sha512-rtOelq4Cawlbmq9xuMR5gdFmv7ku/sFoB7sRiywx7aq53bc52b4j6zvH7Te1Vt/X2YveDKnCGUbioieU7FEL3w==", "dev": true, "requires": { "private": "^0.1.6" } }, - "regex-cache": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", - "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", - "dev": true, - "requires": { - "is-equal-shallow": "^0.1.3" - } - }, "regex-not": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", @@ -10343,6 +10661,21 @@ "safe-regex": "^1.1.0" } }, + "regexp-tree": { + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.10.tgz", + "integrity": "sha512-K1qVSbcedffwuIslMwpe6vGlj+ZXRnGkvjAtFHfDZZZuEdA/h0dxljAPu9vhUo6Rrx2U2AwJ+nSQ6hK+lrP5MQ==", + "dev": true + }, + "regexp.prototype.flags": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.2.0.tgz", + "integrity": "sha512-ztaw4M1VqgMwl9HlPpOuiYgItcHlunW0He2fE6eNfT6E/CF2FtYi9ofOYe4mKntstYk0Fyh/rDRBdS3AnxjlrA==", + "dev": true, + "requires": { + "define-properties": "^1.1.2" + } + }, "regexpp": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-1.1.0.tgz", @@ -10350,23 +10683,23 @@ "dev": true }, "regexpu-core": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.1.3.tgz", - "integrity": "sha512-mB+njEzO7oezA57IbQxxd6fVPOeWKDmnGvJ485CwmfNchjHe5jWwqKepapmzUEj41yxIAqOg+C4LbXuJlkiO8A==", + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.5.4.tgz", + "integrity": "sha512-BtizvGtFQKGPUcTy56o3nk1bGRp4SZOTYrDtGNlqCQufptV5IkkLN6Emw+yunAJjzf+C9FQFtvq7IoA3+oMYHQ==", "dev": true, "requires": { - "regenerate": "^1.3.3", - "regenerate-unicode-properties": "^5.1.1", - "regjsgen": "^0.3.0", - "regjsparser": "^0.2.1", - "unicode-match-property-ecmascript": "^1.0.3", - "unicode-match-property-value-ecmascript": "^1.0.1" + "regenerate": "^1.4.0", + "regenerate-unicode-properties": "^8.0.2", + "regjsgen": "^0.5.0", + "regjsparser": "^0.6.0", + "unicode-match-property-ecmascript": "^1.0.4", + "unicode-match-property-value-ecmascript": "^1.1.0" } }, "registry-auth-token": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.2.tgz", - "integrity": "sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.4.0.tgz", + "integrity": "sha512-4LM6Fw8eBQdwMYcES4yTnn2TqIasbXuwDx3um+QRs7S55aMKCBKBxvPXl2RiUjHwuJLTyYfxSpmfSAjQpcuP+A==", "dev": true, "requires": { "rc": "^1.1.6", @@ -10383,15 +10716,15 @@ } }, "regjsgen": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.3.0.tgz", - "integrity": "sha1-DuSj6SdkMM2iXx54nqbBW4ewy0M=", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.0.tgz", + "integrity": "sha512-RnIrLhrXCX5ow/E5/Mh2O4e/oa1/jW0eaBKTSy3LaCj+M3Bqvm97GWDp2yUtzIs4LEn65zR2yiYGFqb2ApnzDA==", "dev": true }, "regjsparser": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.2.1.tgz", - "integrity": "sha1-w3h1U/rwTndcMCEC7zRtmVAA7Bw=", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.0.tgz", + "integrity": "sha512-RQ7YyokLiQBomUJuUG8iGVvkgOLxwyZM8k6d3q5SAXpg4r5TZJZigKFvC6PpD+qQ98bCDC5YelPeA3EucDoNeQ==", "dev": true, "requires": { "jsesc": "~0.5.0" @@ -10426,64 +10759,20 @@ "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "remark": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/remark/-/remark-5.1.0.tgz", - "integrity": "sha1-y0Y709vLS5l5STXu4c9x16jjBow=", - "dev": true, - "requires": { - "remark-parse": "^1.1.0", - "remark-stringify": "^1.1.0", - "unified": "^4.1.1" - } - }, - "remark-parse": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-1.1.0.tgz", - "integrity": "sha1-w8oQ+ajaBGFcKPCapOMEUQUm7CE=", - "dev": true, - "requires": { - "collapse-white-space": "^1.0.0", - "extend": "^3.0.0", - "parse-entities": "^1.0.2", - "repeat-string": "^1.5.4", - "trim": "0.0.1", - "trim-trailing-lines": "^1.0.0", - "unherit": "^1.0.4", - "unist-util-remove-position": "^1.0.0", - "vfile-location": "^2.0.0" - } - }, - "remark-stringify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-1.1.0.tgz", - "integrity": "sha1-pxBeJbnuK/mkm3XSxCPxGwauIJI=", - "dev": true, - "requires": { - "ccount": "^1.0.0", - "extend": "^3.0.0", - "longest-streak": "^1.0.0", - "markdown-table": "^0.4.0", - "parse-entities": "^1.0.2", - "repeat-string": "^1.5.4", - "stringify-entities": "^1.0.1", - "unherit": "^1.0.4" + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } } }, "remove-trailing-separator": { @@ -10493,9 +10782,9 @@ "dev": true }, "repeat-element": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", - "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", "dev": true }, "repeat-string": { @@ -10514,53 +10803,96 @@ } }, "request": { - "version": "2.85.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.85.0.tgz", - "integrity": "sha512-8H7Ehijd4js+s6wuVPLjwORxD4zeuyjYugprdOXlPSqaApmL/QOy+EB/beICHVCHkGMKNh5rvihb5ov+IDw4mg==", + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", "dev": true, "requires": { "aws-sign2": "~0.7.0", - "aws4": "^1.6.0", + "aws4": "^1.8.0", "caseless": "~0.12.0", - "combined-stream": "~1.0.5", - "extend": "~3.0.1", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", "forever-agent": "~0.6.1", - "form-data": "~2.3.1", - "har-validator": "~5.0.3", - "hawk": "~6.0.2", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", "http-signature": "~1.2.0", "is-typedarray": "~1.0.0", "isstream": "~0.1.2", "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.17", - "oauth-sign": "~0.8.2", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", "performance-now": "^2.1.0", - "qs": "~6.5.1", - "safe-buffer": "^5.1.1", - "stringstream": "~0.0.5", - "tough-cookie": "~2.3.3", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", "tunnel-agent": "^0.6.0", - "uuid": "^3.1.0" + "uuid": "^3.3.2" + }, + "dependencies": { + "mime-db": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", + "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==", + "dev": true + }, + "mime-types": { + "version": "2.1.24", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", + "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", + "dev": true, + "requires": { + "mime-db": "1.40.0" + } + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "dev": true, + "requires": { + "psl": "^1.1.24", + "punycode": "^1.4.1" + } + } } }, "request-promise-core": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.1.tgz", - "integrity": "sha1-Pu4AssWqgyOc+wTFcA2jb4HNCLY=", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.2.tgz", + "integrity": "sha512-UHYyq1MO8GsefGEt7EprS8UrXsm1TxEvFUX1IMTuSLU2Rh7fTIdFtl8xD7JiEYiWU2dl+NYAjCTksTehQUxPag==", "dev": true, "requires": { - "lodash": "^4.13.1" + "lodash": "^4.17.11" } }, "request-promise-native": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.5.tgz", - "integrity": "sha1-UoF3D2jgyXGeUWP9P6tIIhX0/aU=", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.7.tgz", + "integrity": "sha512-rIMnbBdgNViL37nZ1b3L/VfPOpSi0TqVDQPAvO6U14lMzOLrt5nilxCQqtDKhZeDiW0/hkCXGoQjhgJd/tCh6w==", "dev": true, "requires": { - "request-promise-core": "1.1.1", - "stealthy-require": "^1.1.0", - "tough-cookie": ">=2.3.3" + "request-promise-core": "1.1.2", + "stealthy-require": "^1.1.1", + "tough-cookie": "^2.3.3" } }, "require-directory": { @@ -10586,12 +10918,22 @@ } }, "resolve": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.5.0.tgz", - "integrity": "sha512-hgoSGrc3pjzAPHNBg+KnFcK2HwlHTs/YrAGUr6qgTVUZmXv1UEXXl0bZNBKMA9fud6lRYFdPGz0xXxycPzmmiw==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.11.1.tgz", + "integrity": "sha512-vIpgF6wfuJOZI7KKKSP+HmiKggadPQAdsp5HiC1mvqnfp0gF1vdwgBWZIdrVft9pgqoMFQN+R7BSWZiBxx+BBw==", + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + }, + "resolve-dir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", + "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", "dev": true, "requires": { - "path-parse": "^1.0.5" + "expand-tilde": "^2.0.0", + "global-modules": "^1.0.0" } }, "resolve-from": { @@ -10632,10 +10974,29 @@ } }, "rimraf": { - "version": "2.2.8", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz", - "integrity": "sha1-5Dm+Kq7jJzIZUnMPmaiSnk/FBYI=", - "dev": true + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + }, + "dependencies": { + "glob": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", + "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + } + } }, "ripemd160": { "version": "2.0.2", @@ -10666,9 +11027,9 @@ } }, "rx-lite": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", - "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-3.1.2.tgz", + "integrity": "sha1-Gc5QLKVyZl87ZHsQk5+X/RYV8QI=", "dev": true }, "rx-lite-aggregates": { @@ -10680,10 +11041,20 @@ "rx-lite": "*" } }, + "rxjs": { + "version": "5.5.12", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz", + "integrity": "sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==", + "dev": true, + "requires": { + "symbol-observable": "1.0.1" + } + }, "safe-buffer": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", + "dev": true }, "safe-json-parse": { "version": "1.0.1", @@ -10707,6 +11078,11 @@ "ret": "~0.1.10" } }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, "samsam": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/samsam/-/samsam-1.3.0.tgz", @@ -10720,9 +11096,9 @@ "dev": true }, "schema-utils": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.5.tgz", - "integrity": "sha512-yYrjb9TX2k/J1Y5UNy3KYdZq10xhYcF8nMpAW6o3hy6Q8WSIEf9lJHG/ePnOBfziPM3fvQwfOwa13U/Fh8qTfA==", + "version": "0.4.7", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", + "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", "dev": true, "requires": { "ajv": "^6.1.0", @@ -10736,9 +11112,9 @@ "dev": true }, "semver": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", - "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==", + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", "dev": true }, "semver-diff": { @@ -10754,6 +11130,7 @@ "version": "0.16.1", "resolved": "https://registry.npmjs.org/send/-/send-0.16.1.tgz", "integrity": "sha512-ElCLJdJIKPk6ux/Hocwhk7NFHpI3pVm/IZOYWqUmoxcgeyM+MpxHHKhb8QmlJDX1pU6WrgaHBkVNm73Sv7uc2A==", + "dev": true, "requires": { "debug": "2.6.9", "depd": "~1.1.1", @@ -10771,9 +11148,9 @@ } }, "serialize-javascript": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.4.0.tgz", - "integrity": "sha1-fJWFFNtqwkQ6irwGLcn3iGp/YAU=", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.7.0.tgz", + "integrity": "sha512-ke8UG8ulpFOxO8f8gRYabHQe/ZntKlcig2Mp+8+URDP1D8vJZ0KUt7LYo07q25Z/+JVSgpr/cui9PIp5H6/+nA==", "dev": true }, "serve-index": { @@ -10795,6 +11172,7 @@ "version": "1.13.1", "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.1.tgz", "integrity": "sha512-hSMUZrsPa/I09VYFJwa627JJkNs0NrfL1Uzuup+GqHfToR2KcsXFymXSV90hoyw3M+msjFuQly+YzIH/q0MGlQ==", + "dev": true, "requires": { "encodeurl": "~1.0.1", "escape-html": "~1.0.3", @@ -10844,9 +11222,9 @@ "dev": true }, "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" }, "sha.js": { "version": "2.4.11", @@ -10915,9 +11293,9 @@ } }, "shelljs": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.1.tgz", - "integrity": "sha512-YA/iYtZpzFe5HyWVGrb02FjPxc4EMCfpoU/Phg9fQoyMC72u9598OUBrsU8IrtwAKG0tO8IYaqbaLIw+k3IRGA==", + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.3.tgz", + "integrity": "sha512-fc0BKlAWiLpwZljmOvAOTE/gXawtCoNrP5oaY7KIaQbbyHeQVg01pSEuEGvGh3HEdBU4baCD7wQBwADmM/7f7A==", "dev": true, "requires": { "glob": "^7.0.0", @@ -10949,6 +11327,18 @@ "when": "3.7.7" }, "dependencies": { + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "dev": true, + "requires": { + "co": "^4.6.0", + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0" + } + }, "babel-polyfill": { "version": "6.16.0", "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.16.0.tgz", @@ -10966,6 +11356,28 @@ "integrity": "sha1-8JTHBB9mJZm7EnINoFnWucf/D0A=", "dev": true }, + "fast-deep-equal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", + "dev": true + }, + "har-validator": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", + "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", + "dev": true, + "requires": { + "ajv": "^5.1.0", + "har-schema": "^2.0.0" + } + }, + "json-schema-traverse": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", + "dev": true + }, "mz": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/mz/-/mz-2.5.0.tgz", @@ -10977,6 +11389,18 @@ "thenify-all": "^1.0.0" } }, + "oauth-sign": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", + "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", + "dev": true + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, "regenerator-runtime": { "version": "0.9.6", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.9.6.tgz", @@ -11019,6 +11443,15 @@ "requires": { "source-map": "^0.5.3" } + }, + "tough-cookie": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", + "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", + "dev": true, + "requires": { + "punycode": "^1.4.1" + } } } }, @@ -11029,9 +11462,9 @@ "dev": true }, "sinon": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-4.4.2.tgz", - "integrity": "sha512-cpOHpnRyY3Dk9dTHBYMfVBB0HUCSKIpxW07X6OGW2NiYPovs4AkcL8Q8MzecbAROjbfRA9esJCmlZgikxDz7DA==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-4.5.0.tgz", + "integrity": "sha512-trdx+mB0VBBgoYucy6a9L7/jfQOmvGeaKZT4OOJ+lPAtI8623xyGr8wLiE4eojzBS8G9yXbhx42GHUOVLr4X2w==", "dev": true, "requires": { "@sinonjs/formatio": "^2.0.0", @@ -11154,18 +11587,6 @@ "is-data-descriptor": "^1.0.0", "kind-of": "^6.0.2" } - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", - "dev": true } } }, @@ -11176,21 +11597,23 @@ "dev": true, "requires": { "kind-of": "^3.2.0" - } - }, - "sntp": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz", - "integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==", - "dev": true, - "requires": { - "hoek": "4.x.x" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } } }, "snyk": { - "version": "1.82.0", - "resolved": "https://registry.npmjs.org/snyk/-/snyk-1.82.0.tgz", - "integrity": "sha512-UZuGBdh3PSK6Va9Sos+hFUnLImIShluHfOSvF3UdM0jmjOaIRvIywkUrqT7J38xQ0VRmbVCoJlrYA1g7vD1CeA==", + "version": "1.110.2", + "resolved": "https://registry.npmjs.org/snyk/-/snyk-1.110.2.tgz", + "integrity": "sha512-SQE4sudrscd48EoRJqy5h5S6c8YBiOw0r0Se3rfg1l6ElJGgCB9je6XEzfe+UmfES06D7ueFYepiQPxTwH4Qww==", "dev": true, "requires": { "abbrev": "^1.1.1", @@ -11201,89 +11624,165 @@ "hasbin": "^1.2.3", "inquirer": "^3.0.0", "lodash": "^4.17.5", - "needle": "^2.0.1", + "needle": "^2.2.4", "opn": "^5.2.0", "os-name": "^2.0.1", - "proxy-agent": "^3.0.0", + "proxy-agent": "^2.0.0", "proxy-from-env": "^1.0.0", "recursive-readdir": "^2.2.2", "semver": "^5.5.0", - "snyk-config": "2.1.0", - "snyk-go-plugin": "1.5.1", - "snyk-gradle-plugin": "1.3.0", - "snyk-module": "1.8.2", - "snyk-mvn-plugin": "1.2.0", - "snyk-nuget-plugin": "1.6.2", + "snyk-config": "2.2.0", + "snyk-docker-plugin": "1.12.3", + "snyk-go-plugin": "1.6.0", + "snyk-gradle-plugin": "2.1.1", + "snyk-module": "1.9.1", + "snyk-mvn-plugin": "2.0.0", + "snyk-nodejs-lockfile-parser": "1.7.1", + "snyk-nuget-plugin": "1.6.5", "snyk-php-plugin": "1.5.1", - "snyk-policy": "1.12.0", - "snyk-python-plugin": "1.6.1", + "snyk-policy": "1.13.1", + "snyk-python-plugin": "1.9.0", "snyk-resolve": "1.0.1", - "snyk-resolve-deps": "3.1.0", - "snyk-sbt-plugin": "1.3.0", + "snyk-resolve-deps": "4.0.2", + "snyk-sbt-plugin": "2.0.0", "snyk-tree": "^1.0.0", - "snyk-try-require": "1.3.0", + "snyk-try-require": "1.3.1", + "source-map-support": "^0.5.9", "tempfile": "^2.0.0", "then-fs": "^2.0.0", "undefsafe": "^2.0.0", "uuid": "^3.2.1" }, "dependencies": { - "chalk": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", - "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "ms": "^2.1.1" } }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "inquirer": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", + "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", "dev": true, "requires": { - "ms": "2.0.0" + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.0", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^2.0.4", + "figures": "^2.0.0", + "lodash": "^4.3.0", + "mute-stream": "0.0.7", + "run-async": "^2.2.0", + "rx-lite": "^4.0.8", + "rx-lite-aggregates": "^4.0.8", + "string-width": "^2.1.0", + "strip-ansi": "^4.0.0", + "through": "^2.3.6" } }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, "opn": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/opn/-/opn-5.3.0.tgz", - "integrity": "sha512-bYJHo/LOmoTd+pfiYhfZDnf9zekVJrY+cnS2a5F2x+w5ppvTqObojTP7WiFG+kVZs9Inw+qQ/lw7TroWwhdd2g==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", + "integrity": "sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==", "dev": true, "requires": { "is-wsl": "^1.1.0" } + }, + "rx-lite": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", + "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } } } }, "snyk-config": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/snyk-config/-/snyk-config-2.1.0.tgz", - "integrity": "sha512-D1Xz1pZa9lwA9AHogmAigyJGo/iuEGH+rcPB77mFsneVfnuiK9c6IjnsHbEBUf1cePtZvWdGBjs6e75Cvc2AMg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/snyk-config/-/snyk-config-2.2.0.tgz", + "integrity": "sha512-mq0wbP/AgjcmRq5i5jg2akVVV3iSYUPTowZwKn7DChRLDL8ySOzWAwan+ImXiyNbrWo87FNI/15O6MpOnTxOIg==", "dev": true, "requires": { "debug": "^3.1.0", + "lodash": "^4.17.5", "nconf": "^0.10.0" }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "snyk-docker-plugin": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-1.12.3.tgz", + "integrity": "sha512-ZbvaFCPCd0wxhqxjzU/iyf39tKlq2nvI9nPW32uZV3RGdHrkQH55BzCtBCF9d0dapxX+PKgae/4u2BKNw8hd9Q==", + "dev": true, + "requires": { + "debug": "^3", + "dockerfile-ast": "0.0.12", + "tslib": "^1" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true } } }, "snyk-go-plugin": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/snyk-go-plugin/-/snyk-go-plugin-1.5.1.tgz", - "integrity": "sha512-8OPJOT05Z/UL5fFSXV6b/A6KjlS1Ahr2gpup1bhXtAGXlUUPyWidqkCIER9fexDXqYWgAoDAdn9YHIvmL/5bfw==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/snyk-go-plugin/-/snyk-go-plugin-1.6.0.tgz", + "integrity": "sha512-E6aYw7XAXSs2wJR3fU+vGQ1lVyjAw8PHIQYQwBwMkTHByhJIWPcu6Hy/jT5LcjJHlhYXlpOuk53HeLVK+kcXrQ==", "dev": true, "requires": { "graphlib": "^2.1.1", @@ -11292,73 +11791,94 @@ } }, "snyk-gradle-plugin": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/snyk-gradle-plugin/-/snyk-gradle-plugin-1.3.0.tgz", - "integrity": "sha512-rKZcPwbDM9zk3pFcO0w77MIKOZTkk5ZBVBkBlTlUiFg+eNOKqPTmw2hBGF5NB4ASQmMnx3uB1C8+hrQ405CthA==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snyk-gradle-plugin/-/snyk-gradle-plugin-2.1.1.tgz", + "integrity": "sha512-aFeVC5y3XkJ5BxknHhtYo76as3xJbzSQlXACGZrQZGQ/w/UhNdM8VI1QB6Eq4uEzexleB/hcJwYxNmhI2CNCeA==", "dev": true, "requires": { "clone-deep": "^0.3.0" } }, "snyk-module": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/snyk-module/-/snyk-module-1.8.2.tgz", - "integrity": "sha512-XqhdbZ/CUuJ5gSaYdYfapLqx9qm2Mp6nyRMBCLXe9tJSiohOJsc9fQuUDbdOiRCqpA4BD6WLl+qlwOJmJoszBg==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/snyk-module/-/snyk-module-1.9.1.tgz", + "integrity": "sha512-A+CCyBSa4IKok5uEhqT+hV/35RO6APFNLqk9DRRHg7xW2/j//nPX8wTSZUPF8QeRNEk/sX+6df7M1y6PBHGSHA==", "dev": true, "requires": { "debug": "^3.1.0", - "hosted-git-info": "^2.1.4" + "hosted-git-info": "^2.7.1" }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true } } }, "snyk-mvn-plugin": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/snyk-mvn-plugin/-/snyk-mvn-plugin-1.2.0.tgz", - "integrity": "sha512-ieTWhn1MB88gEQ6nUtGCeUKQ6Xoxm+u+QmD9u3zfP1QS5ep9fWt3YYDUQjgUiDTJJy7QyVQdZ/fsz3RECnOA7w==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/snyk-mvn-plugin/-/snyk-mvn-plugin-2.0.0.tgz", + "integrity": "sha512-9jAhZhv+7YcqtoQYCYlgMoxK+dWBKlk+wkX27Ebg3vNddNop9q5jZitRXTjsXwfSUZHRt+Ptw1f8vei9kjzZVg==", "dev": true }, + "snyk-nodejs-lockfile-parser": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.7.1.tgz", + "integrity": "sha512-0gHELqMhzUxb/t3Tg6d6G9LTDioOXCrEMt9aetOeV8wD/ZRL5VFNjwcdrm8qILLqzDFaFjFIyMc66c0OL4zFAQ==", + "dev": true, + "requires": { + "@yarnpkg/lockfile": "^1.0.2", + "graphlib": "^2.1.5", + "lodash": "4.17.10", + "source-map-support": "^0.5.7", + "tslib": "^1.9.3", + "uuid": "^3.3.2" + }, + "dependencies": { + "lodash": { + "version": "4.17.10", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", + "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", + "dev": true + } + } + }, "snyk-nuget-plugin": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/snyk-nuget-plugin/-/snyk-nuget-plugin-1.6.2.tgz", - "integrity": "sha512-8l8hS85esXyweTFgUFdwnGT94Ts42KcG5fdBX2wYosQkpUMePd+GTT9+64k/GvdH5hqcNt2OvtzW+Uf8JF+pbA==", + "version": "1.6.5", + "resolved": "https://registry.npmjs.org/snyk-nuget-plugin/-/snyk-nuget-plugin-1.6.5.tgz", + "integrity": "sha512-3qIndzkxCxiaGvAwMkqChbChGdwhNePPyfi0WjhC/nJGwecqU3Fb/NeTW7lgyT+xoq/dFnzW0DgBJ4+AyNA2gA==", "dev": true, "requires": { "debug": "^3.1.0", - "es6-promise": "^4.1.1", + "jszip": "^3.1.5", "lodash": "^4.17.10", - "xml2js": "^0.4.17", - "zip": "^1.2.0" + "xml2js": "^0.4.17" }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.0.0" - } - }, - "es6-promise": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.4.tgz", - "integrity": "sha512-/NdNZVJg+uZgtm9eS3O6lrOLYmQag2DjdEXuPaHlZ6RuVqgqaVZfgYCepEIKsLqwdQArOPtC3XzRLqGGfT8KQQ==", - "dev": true - }, - "lodash": { - "version": "4.17.10", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", - "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", "dev": true } } @@ -11375,48 +11895,60 @@ }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true } } }, "snyk-policy": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/snyk-policy/-/snyk-policy-1.12.0.tgz", - "integrity": "sha512-CEioNnDzccHyid7UIVl3bJ1dnG4co4ofI+KxuC1mo0IUXy64gxnBTeVoZF5gVLWbAyxGxSeW8f0+8GmWMHVb7w==", + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/snyk-policy/-/snyk-policy-1.13.1.tgz", + "integrity": "sha512-l9evS3Yk70xyvajjg+I6Ij7fr7gxpVRMZl0J1xNpWps/IVu4DSGih3aMmXi47VJozr4A/eFyj7R1lIr2GhqJCA==", "dev": true, "requires": { "debug": "^3.1.0", - "email-validator": "^2.0.3", - "js-yaml": "^3.5.3", - "lodash.clonedeep": "^4.3.1", - "semver": "^5.5.0", - "snyk-module": "^1.8.2", + "email-validator": "^2.0.4", + "js-yaml": "^3.12.0", + "lodash.clonedeep": "^4.5.0", + "semver": "^5.6.0", + "snyk-module": "^1.9.1", "snyk-resolve": "^1.0.1", - "snyk-try-require": "^1.1.1", + "snyk-try-require": "^1.3.1", "then-fs": "^2.0.0" }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true } } }, "snyk-python-plugin": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/snyk-python-plugin/-/snyk-python-plugin-1.6.1.tgz", - "integrity": "sha512-6zr5jAB3p/bwMZQxZpdj+aPmioTgHB4DI6JMLInhZupss0x8Ome5YqzVzBbOvUKNrc3KaLtjGrJWcAuxDL6M/g==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/snyk-python-plugin/-/snyk-python-plugin-1.9.0.tgz", + "integrity": "sha512-zlyOHoCpmyVym9AwkboeepzEGrY3gHsM7eWP/nJ85TgCnQO5H5orKm3RL57PNbWRY+BnDmoQQ+udQgjym2+3sg==", "dev": true, "requires": { "tmp": "0.0.33" @@ -11433,31 +11965,38 @@ }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true } } }, "snyk-resolve-deps": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/snyk-resolve-deps/-/snyk-resolve-deps-3.1.0.tgz", - "integrity": "sha512-YVAelR+dTpqLgfk6lf6WgOlw+MGmGI0r3/Dny8tUbJJ9uVTHTRAOdZCbUyTFqJG7oEmEZxUwmfjqgAuniYwx8Q==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/snyk-resolve-deps/-/snyk-resolve-deps-4.0.2.tgz", + "integrity": "sha512-nlw62wiWhGOTw3BD3jVIwrUkRR4iNxEkkO4Y/PWs8BsUWseGu1H6QgLesFXJb3qx7ANJ5UbUCJMgV+eL0Lf9cA==", "dev": true, "requires": { "ansicolors": "^0.3.2", - "debug": "^3.1.0", + "debug": "^3.2.5", "lodash.assign": "^4.2.0", "lodash.assignin": "^4.2.0", + "lodash.clone": "^4.5.0", "lodash.flatten": "^4.4.0", "lodash.get": "^4.4.2", "lodash.set": "^4.3.2", "lru-cache": "^4.0.0", - "semver": "^5.1.0", + "semver": "^5.5.1", "snyk-module": "^1.6.0", "snyk-resolve": "^1.0.0", "snyk-tree": "^1.0.0", @@ -11466,24 +12005,27 @@ }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true } } }, "snyk-sbt-plugin": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/snyk-sbt-plugin/-/snyk-sbt-plugin-1.3.0.tgz", - "integrity": "sha512-SRxPB16392dvN3Qv2RfUcHe0XETLWx2kNIOuoNXvc2Gl6DuPW+X+meDJY7xC/yQhU7bSPPKoM2B7awYaj9i2Bg==", - "dev": true, - "requires": { - "debug": "^2.2.0" - } + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/snyk-sbt-plugin/-/snyk-sbt-plugin-2.0.0.tgz", + "integrity": "sha512-bOUqsQ1Lysnwfnvf4QQIBfC0M0ZVuhlshTKd7pNwgAJ41YEPJNrPEpzOePl/HfKtwilEEwHh5YHvjYGegEKx0A==", + "dev": true }, "snyk-tree": { "version": "1.0.0", @@ -11495,9 +12037,9 @@ } }, "snyk-try-require": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/snyk-try-require/-/snyk-try-require-1.3.0.tgz", - "integrity": "sha1-81cGrPkciveI1Y4fGta/D89sVJM=", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/snyk-try-require/-/snyk-try-require-1.3.1.tgz", + "integrity": "sha1-bgJvkuZK9/zM6h7lPVJIQeQYohI=", "dev": true, "requires": { "debug": "^3.1.0", @@ -11507,13 +12049,19 @@ }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true } } }, @@ -11537,10 +12085,19 @@ "socks": "^1.1.10" } }, + "sonic-boom": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-0.6.3.tgz", + "integrity": "sha512-TMhj6kDJk9LLzCTTL8+HPCfFn4MwkE4P6k2Up89Rz949+DSRw90V62upRKC99rJEOmu4E9ljH5Otu2JSRmx+bg==", + "dev": true, + "requires": { + "flatstr": "^1.0.8" + } + }, "source-list-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.0.tgz", - "integrity": "sha512-I2UmuJSRr/T8jisiROLU3A3ltr+swpniSmNPI4Ml3ZCX6tVnDsuZzK7F2hl5jTqbZBWCEKlj5HRQiPExXLgE8A==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", "dev": true }, "source-map": { @@ -11563,11 +12120,12 @@ } }, "source-map-support": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.3.tgz", - "integrity": "sha512-eKkTgWYeBOQqFGXRfKabMFdnWepo51vWqEdoeikaEPFiJC7MCU5j2h4+6Q8npkZTeLGbSyecZvRxiSoWl3rh+w==", + "version": "0.5.12", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.12.tgz", + "integrity": "sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ==", "dev": true, "requires": { + "buffer-from": "^1.0.0", "source-map": "^0.6.0" }, "dependencies": { @@ -11596,9 +12154,9 @@ } }, "spdx-correct": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz", - "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", + "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", "dev": true, "requires": { "spdx-expression-parse": "^3.0.0", @@ -11606,9 +12164,9 @@ } }, "spdx-exceptions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz", - "integrity": "sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", + "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", "dev": true }, "spdx-expression-parse": { @@ -11622,9 +12180,9 @@ } }, "spdx-license-ids": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz", - "integrity": "sha512-2+EPwgbnmOIl8HjGBXXMd9NAu02vLjOO1nWw4kmeRDFyHn+M/ETfHxQUK0oXg8ctgVnl9t3rosNVsZ1jG61nDA==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz", + "integrity": "sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA==", "dev": true }, "split": { @@ -11645,19 +12203,16 @@ "extend-shallow": "^3.0.0" } }, - "split2": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/split2/-/split2-2.2.0.tgz", - "integrity": "sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw==", - "dev": true, - "requires": { - "through2": "^2.0.2" - } + "sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", + "dev": true }, "sshpk": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.1.tgz", - "integrity": "sha1-Ew9Zde3a2WPx1W+SuaxsUfqfg+s=", + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", "dev": true, "requires": { "asn1": "~0.2.3", @@ -11667,13 +12222,14 @@ "ecc-jsbn": "~0.1.1", "getpass": "^0.1.1", "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", "tweetnacl": "~0.14.0" } }, "ssri": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-5.2.4.tgz", - "integrity": "sha512-UnEAgMZa15973iH7cUi0AHjJn1ACDIkaMyZILoqwN6yzt+4P81I8tBc5Hl+qwi5auMplZtPQsHrPBR5vJLcQtQ==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-5.3.0.tgz", + "integrity": "sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ==", "dev": true, "requires": { "safe-buffer": "^5.1.1" @@ -11703,7 +12259,8 @@ "statuses": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", - "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=" + "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=", + "dev": true }, "stealthy-require": { "version": "1.1.1", @@ -11712,9 +12269,9 @@ "dev": true }, "stream-browserify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", - "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", + "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", "dev": true, "requires": { "inherits": "~2.0.1", @@ -11722,9 +12279,9 @@ } }, "stream-each": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.2.tgz", - "integrity": "sha512-mc1dbFhGBxvTM3bIWmAAINbqiuAk9TATcfIQC8P+/+HJefgaiTlMn2dHvkX8qlI12KeYKSQ1Ua9RrIqrn1VPoA==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", + "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", "dev": true, "requires": { "end-of-stream": "^1.1.0", @@ -11732,9 +12289,9 @@ } }, "stream-http": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.2.tgz", - "integrity": "sha512-QllfrBhqF1DPcz46WxKTs6Mz1Bpc+8Qm6vbqOpVav5odAXwbyzwnEczoWqtxrsmlO+cJqtPrp/8gWKWjaKLLlA==", + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", "dev": true, "requires": { "builtin-status-codes": "^3.0.0", @@ -11858,6 +12415,19 @@ } } }, + "string.prototype.matchall": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-2.0.0.tgz", + "integrity": "sha512-WoZ+B2ypng1dp4iFLF2kmZlwwlE19gmjgKuhL1FJfDgCREWb3ye3SDVHSzLH6bxfnvYmkCxbzkmWcQZHA4P//Q==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "es-abstract": "^1.10.0", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "regexp.prototype.flags": "^1.2.0" + } + }, "string_decoder": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", @@ -11867,24 +12437,6 @@ "safe-buffer": "~5.1.0" } }, - "stringify-entities": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-1.3.2.tgz", - "integrity": "sha512-nrBAQClJAPN2p+uGCVJRPIPakKeKWZ9GtBCmormE7pWOSlHat7+x5A8gx85M7HM5Dt0BP3pP5RhVW77WdbJJ3A==", - "dev": true, - "requires": { - "character-entities-html4": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-hexadecimal": "^1.0.0" - } - }, - "stringstream": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.6.tgz", - "integrity": "sha512-87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA==", - "dev": true - }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", @@ -11943,15 +12495,6 @@ "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", "dev": true }, - "structured-source": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/structured-source/-/structured-source-3.0.2.tgz", - "integrity": "sha1-3YAkJeD1PcSm56yjdSkBoczaevU=", - "dev": true, - "requires": { - "boundary": "^1.0.1" - } - }, "stylus": { "version": "0.54.5", "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.5.tgz", @@ -11972,103 +12515,267 @@ "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", "dev": true, "requires": { - "amdefine": ">=0.0.4" + "amdefine": ">=0.0.4" + } + } + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "symbol-observable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", + "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=", + "dev": true + }, + "table": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/table/-/table-4.0.3.tgz", + "integrity": "sha512-S7rnFITmBH1EnyKcvxBh1LjYeQMmnZtCXSEbHcH6S0NoKit24ZuFO/T1vDcLdYsLQkM188PVVhQmzKIuThNkKg==", + "dev": true, + "requires": { + "ajv": "^6.0.1", + "ajv-keywords": "^3.0.0", + "chalk": "^2.1.0", + "lodash": "^4.17.4", + "slice-ansi": "1.0.0", + "string-width": "^2.1.1" + } + }, + "tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "dev": true + }, + "tar-stream": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz", + "integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==", + "dev": true, + "requires": { + "bl": "^1.0.0", + "end-of-stream": "^1.0.0", + "readable-stream": "^2.0.0", + "xtend": "^4.0.0" + } + }, + "temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", + "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "dev": true + }, + "tempfile": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-2.0.0.tgz", + "integrity": "sha1-awRGhWqbERTRhW/8vlCczLCXcmU=", + "dev": true, + "requires": { + "temp-dir": "^1.0.0", + "uuid": "^3.0.1" + } + }, + "term-size": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", + "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", + "dev": true, + "requires": { + "execa": "^0.7.0" + }, + "dependencies": { + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "dev": true, + "requires": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + } + } + }, + "terser": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.0.0.tgz", + "integrity": "sha512-dOapGTU0hETFl1tCo4t56FN+2jffoKyER9qBGoUFyZ6y7WLoKT0bF+lAYi6B6YsILcGF3q1C2FBh8QcKSCgkgA==", + "dev": true, + "requires": { + "commander": "^2.19.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.10" + }, + "dependencies": { + "commander": { + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", + "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "terser-webpack-plugin": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.3.0.tgz", + "integrity": "sha512-W2YWmxPjjkUcOWa4pBEv4OP4er1aeQJlSo2UhtCFQCuRXEHjOFscO8VyWHj9JLlA0RzQb8Y2/Ta78XZvT54uGg==", + "dev": true, + "requires": { + "cacache": "^11.3.2", + "find-cache-dir": "^2.0.0", + "is-wsl": "^1.1.0", + "loader-utils": "^1.2.3", + "schema-utils": "^1.0.0", + "serialize-javascript": "^1.7.0", + "source-map": "^0.6.1", + "terser": "^4.0.0", + "webpack-sources": "^1.3.0", + "worker-farm": "^1.7.0" + }, + "dependencies": { + "cacache": { + "version": "11.3.2", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-11.3.2.tgz", + "integrity": "sha512-E0zP4EPGDOaT2chM08Als91eYnf8Z+eH1awwwVsngUmgppfM5jjJ8l3z5vO5p5w/I3LsiXawb1sW0VY65pQABg==", + "dev": true, + "requires": { + "bluebird": "^3.5.3", + "chownr": "^1.1.1", + "figgy-pudding": "^3.5.1", + "glob": "^7.1.3", + "graceful-fs": "^4.1.15", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.2", + "ssri": "^6.0.1", + "unique-filename": "^1.1.1", + "y18n": "^4.0.0" + } + }, + "glob": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", + "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.1.15", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", + "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", + "dev": true + }, + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "requires": { + "yallist": "^3.0.2" + } + }, + "mississippi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "dev": true, + "requires": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^3.0.0", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + } + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" } - } - } - }, - "supports-color": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz", - "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "table": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/table/-/table-4.0.2.tgz", - "integrity": "sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA==", - "dev": true, - "requires": { - "ajv": "^5.2.3", - "ajv-keywords": "^2.1.0", - "chalk": "^2.1.0", - "lodash": "^4.17.4", - "slice-ansi": "1.0.0", - "string-width": "^2.1.1" - }, - "dependencies": { - "ajv": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", "dev": true, "requires": { - "co": "^4.6.0", - "fast-deep-equal": "^1.0.0", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.3.0" + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" } }, - "ajv-keywords": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-2.1.1.tgz", - "integrity": "sha1-YXmX/F9gV2iUxDX5QNgZ4TW4B2I=", + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "ssri": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", + "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "dev": true, + "requires": { + "figgy-pudding": "^3.5.1" + } + }, + "yallist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", "dev": true } } }, - "tapable": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.0.0.tgz", - "integrity": "sha512-dQRhbNQkRnaqauC7WqSJ21EEksgT0fYZX2lqXzGkpo8JNig9zGZTYoMGvyI2nWmXlE2VSVXVDu7wLVGu/mQEsg==", - "dev": true - }, - "tar-stream": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz", - "integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==", - "dev": true, - "requires": { - "bl": "^1.0.0", - "end-of-stream": "^1.0.0", - "readable-stream": "^2.0.0", - "xtend": "^4.0.0" - } - }, - "temp-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", - "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", - "dev": true - }, - "tempfile": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-2.0.0.tgz", - "integrity": "sha1-awRGhWqbERTRhW/8vlCczLCXcmU=", - "dev": true, - "requires": { - "temp-dir": "^1.0.0", - "uuid": "^3.0.1" - } - }, - "term-size": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", - "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", - "dev": true, - "requires": { - "execa": "^0.7.0" - } - }, - "text-encoding": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/text-encoding/-/text-encoding-0.6.4.tgz", - "integrity": "sha1-45mpgiV6J22uQou5KEXLcb3CbRk=", - "dev": true - }, "text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", @@ -12109,13 +12816,39 @@ "dev": true }, "through2": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", "dev": true, "requires": { - "readable-stream": "^2.1.5", + "readable-stream": "~2.3.6", "xtend": "~4.0.1" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "thunkify": { @@ -12165,12 +12898,12 @@ } }, "tippy.js": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/tippy.js/-/tippy.js-2.3.0.tgz", - "integrity": "sha512-F1frIYVNJlXcl5M4dJrsonTqB19rXP8jj3CB/2K6EIKYszLtYAczGQNTtinNlCvZnS2/wiGo6zv9ex46KibrGA==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/tippy.js/-/tippy.js-2.6.0.tgz", + "integrity": "sha512-hBcy6UXK3epiFwpkycy7Pn1SSLofUmawpPnlYg5ginbXMc/3EX2ivjzHfjvr/WPEpUg71/7ssiovhxDtCWvL2A==", "dev": true, "requires": { - "popper.js": "^1.13.0" + "popper.js": "^1.14.3" } }, "tmp": { @@ -12201,6 +12934,17 @@ "dev": true, "requires": { "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } } }, "to-regex": { @@ -12223,24 +12967,12 @@ "requires": { "is-number": "^3.0.0", "repeat-string": "^1.6.1" - }, - "dependencies": { - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - } } }, - "to-utf8": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/to-utf8/-/to-utf8-0.0.1.tgz", - "integrity": "sha1-0Xrqcv8vujm55DYBvns/9y4ImFI=", - "dev": true + "toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" }, "token-stream": { "version": "0.0.1", @@ -12249,9 +12981,9 @@ "dev": true }, "toml": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/toml/-/toml-2.3.3.tgz", - "integrity": "sha512-O7L5hhSQHxuufWUdcTRPfuTh3phKfAZ/dqfxZFoxPCj2RYmpaSGLEIs016FCXItQwNr08yefUB5TSjzRYnajTA==", + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/toml/-/toml-2.3.6.tgz", + "integrity": "sha512-gVweAectJU3ebq//Ferr2JUY4WKSDe5N+z0FvjDncLGyHmIDoxgY/2Ie4qfEIDm4IS7OA6Rmdm7pdEEdMcV/xQ==", "dev": true }, "tosource": { @@ -12261,12 +12993,13 @@ "dev": true }, "tough-cookie": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", - "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", "dev": true, "requires": { - "punycode": "^1.4.1" + "psl": "^1.1.28", + "punycode": "^2.1.1" } }, "tr46": { @@ -12276,14 +13009,6 @@ "dev": true, "requires": { "punycode": "^2.1.0" - }, - "dependencies": { - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - } } }, "traverse": { @@ -12292,12 +13017,6 @@ "integrity": "sha1-0EsigOTHkqWBVCnve4tgxkyczDQ=", "dev": true }, - "trim": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", - "integrity": "sha1-WFhUf2spB1fulczMZm+1AITEYN0=", - "dev": true - }, "trim-newlines": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", @@ -12310,16 +13029,10 @@ "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", "dev": true }, - "trim-trailing-lines": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.1.tgz", - "integrity": "sha512-bWLv9BbWbbd7mlqqs2oQYnLD/U/ZqeJeJwbO0FG2zA1aTq+HTvxfHNKFa/HGCVyJpDiioUYaBhfiT6rgk+l4mg==", - "dev": true - }, - "trough": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.2.tgz", - "integrity": "sha512-FHkoUZvG6Egrv9XZAyYGKEyb1JMsFphgPjoczkZC2y6W93U1jswcVURB8MUvtsahEPEVACyxD47JAL63vF4JsQ==", + "tslib": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", + "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", "dev": true }, "tty-browserify": { @@ -12338,9 +13051,9 @@ } }, "tv4": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/tv4/-/tv4-1.2.7.tgz", - "integrity": "sha1-vSk4mvxzreSa5fSBQrXVRL9o0SA=", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/tv4/-/tv4-1.3.0.tgz", + "integrity": "sha1-0CDIRvrdUMhVq7JeuuzGj8EPeWM=", "dev": true }, "tv4-formats": { @@ -12357,8 +13070,7 @@ "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true, - "optional": true + "dev": true }, "type-check": { "version": "0.3.2", @@ -12376,12 +13088,27 @@ "dev": true }, "type-is": { - "version": "1.6.16", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", - "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", "requires": { "media-typer": "0.3.0", - "mime-types": "~2.1.18" + "mime-types": "~2.1.24" + }, + "dependencies": { + "mime-db": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", + "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==" + }, + "mime-types": { + "version": "2.1.24", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", + "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", + "requires": { + "mime-db": "1.40.0" + } + } } }, "typedarray": { @@ -12391,9 +13118,9 @@ "dev": true }, "uc.micro": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.5.tgz", - "integrity": "sha512-JoLI4g5zv5qNyT09f4YAvEZIIV1oOjqnewYg5D38dkQljIzpPT296dbIGvKro3digYI1bkb7W6EP1y4uDlmzLg==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", + "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==", "dev": true }, "uglify-js": { @@ -12415,14 +13142,14 @@ "optional": true }, "uglifyjs-webpack-plugin": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.2.tgz", - "integrity": "sha512-CG/NvzXfemUAm5Y4Guh5eEaJYHtkG7kKNpXEJHp9QpxsFVB5/qKvYWoMaq4sa99ccZ0hM3MK8vQV9XPZB4357A==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.3.0.tgz", + "integrity": "sha512-ovHIch0AMlxjD/97j9AYovZxG5wnHOPkL7T1GKochBADp/Zwc44pEWNqpKl1Loupp1WhFg7SlYmHZRUfdAacgw==", "dev": true, "requires": { - "cacache": "^10.0.1", + "cacache": "^10.0.4", "find-cache-dir": "^1.0.0", - "schema-utils": "^0.4.2", + "schema-utils": "^0.4.5", "serialize-javascript": "^1.4.0", "source-map": "^0.6.1", "uglify-es": "^3.3.4", @@ -12436,6 +13163,84 @@ "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==", "dev": true }, + "find-cache-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", + "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^2.0.0" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "requires": { + "find-up": "^2.1.0" + } + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -12454,6 +13259,12 @@ } } }, + "unc-path-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", + "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=", + "dev": true + }, "undefsafe": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.2.tgz", @@ -12464,63 +13275,49 @@ } }, "underscore": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", - "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", + "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=", "dev": true }, - "unherit": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.1.tgz", - "integrity": "sha512-+XZuV691Cn4zHsK0vkKYwBEwB74T3IZIcxrgn2E4rKwTfFyI1zCh7X7grwh9Re08fdPlarIdyWgI8aVB3F5A5g==", + "underscore.string": { + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.5.tgz", + "integrity": "sha512-g+dpmgn+XBneLmXXo+sGlW5xQEt4ErkS3mgeN2GFbremYeMBSJKr9Wf2KJplQVaiPY/f7FN6atosWYNm9ovrYg==", "dev": true, "requires": { - "inherits": "^2.0.1", - "xtend": "^4.0.1" + "sprintf-js": "^1.0.3", + "util-deprecate": "^1.0.2" } }, "unicode-canonical-property-names-ecmascript": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.3.tgz", - "integrity": "sha512-iG/2t0F2LAU8aZYPkX5gi7ebukHnr3sWFESpb+zPQeeaQwOkfoO6ZW17YX7MdRPNG9pCy+tjzGill+Ah0Em0HA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", + "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", "dev": true }, "unicode-match-property-ecmascript": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.3.tgz", - "integrity": "sha512-nFcaBFcr08UQNF15ZgI5ISh3yUnQm7SJRRxwYrL5VYX46pS+6Q7TCTv4zbK+j6/l7rQt0mMiTL2zpmeygny6rA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", + "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", "dev": true, "requires": { - "unicode-canonical-property-names-ecmascript": "^1.0.2", - "unicode-property-aliases-ecmascript": "^1.0.3" + "unicode-canonical-property-names-ecmascript": "^1.0.4", + "unicode-property-aliases-ecmascript": "^1.0.4" } }, "unicode-match-property-value-ecmascript": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.0.1.tgz", - "integrity": "sha512-lM8B0FDZQh9yYGgiabRQcyWicB27VLOolSBRIxsO7FeQPtg+79Oe7sC8Mzr8BObDs+G9CeYmC/shHo6OggNEog==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.1.0.tgz", + "integrity": "sha512-hDTHvaBk3RmFzvSl0UVrUmC3PuW9wKVnpoUDYH0JDkSIovzw+J5viQmeYHxVSBptubnr7PbH2e0fnpDRQnQl5g==", "dev": true }, "unicode-property-aliases-ecmascript": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.3.tgz", - "integrity": "sha512-TdDmDOTxEf2ad1g3ZBpM6cqKIb2nJpVlz1Q++casDryKz18tpeMBhSng9hjC1CTQCkOV9Rw2knlSB6iRo7ad1w==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.5.tgz", + "integrity": "sha512-L5RAqCfXqAwR3RriF8pM0lU0w4Ryf/GgzONwi6KnL1taJQa7x1TCxdJnILX59WIGOwR57IVxn7Nej0fz1Ny6fw==", "dev": true }, - "unified": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/unified/-/unified-4.2.1.tgz", - "integrity": "sha1-dv9Dqo2kMPbn5KVchOusKtLPzS4=", - "dev": true, - "requires": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "has": "^1.0.1", - "once": "^1.3.3", - "trough": "^1.0.0", - "vfile": "^1.0.0" - } - }, "union-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", @@ -12557,18 +13354,18 @@ } }, "unique-filename": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.0.tgz", - "integrity": "sha1-0F8v5AMlYIcfMOk8vnNe6iAVFPM=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", "dev": true, "requires": { "unique-slug": "^2.0.0" } }, "unique-slug": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.0.tgz", - "integrity": "sha1-22Z258fMBimHj/GWCXx4hVrp9Ks=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.1.tgz", + "integrity": "sha512-n9cU6+gITaVu7VGj1Z8feKMmfAjEAQGhwD9fE3zvpRRa0wEIx8ODYkVGfSc94M2OX00tUFV8wH3zYbm1I8mxFg==", "dev": true, "requires": { "imurmurhash": "^0.1.4" @@ -12583,34 +13380,10 @@ "crypto-random-string": "^1.0.0" } }, - "unist-util-is": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-2.1.2.tgz", - "integrity": "sha512-YkXBK/H9raAmG7KXck+UUpnKiNmUdB+aBGrknfQ4EreE1banuzrKABx3jP6Z5Z3fMSPMQQmeXBlKpCbMwBkxVw==", - "dev": true - }, - "unist-util-remove-position": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-1.1.2.tgz", - "integrity": "sha512-XxoNOBvq1WXRKXxgnSYbtCF76TJrRoe5++pD4cCBsssSiWSnPEktyFrFLE8LTk3JW5mt9hB0Sk5zn4x/JeWY7Q==", - "dev": true, - "requires": { - "unist-util-visit": "^1.1.0" - } - }, - "unist-util-visit": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-1.3.1.tgz", - "integrity": "sha512-0fdB9EQJU0tho5tK0VzOJzAQpPv2LyLZ030b10GxuzAWEfvd54mpY7BMjQ1L69k2YNvL+SvxRzH0yUIehOO8aA==", - "dev": true, - "requires": { - "unist-util-is": "^2.1.1" - } - }, "universalify": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.1.tgz", - "integrity": "sha1-+nG63UQ3r0wUiEHjs7Fl+enlkLc=", + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", "dev": true }, "unpipe": { @@ -12653,13 +13426,7 @@ "has-values": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", "dev": true } } @@ -12671,9 +13438,9 @@ "dev": true }, "upath": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.0.5.tgz", - "integrity": "sha512-qbKn90aDQ0YEwvXoLqj0oiuUYroLX2lVHZ+b+xwjozFasAOC4GneDq5+OaIG5Zj+jFmbz/uO+f7a9qxjktJQww==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.0.tgz", + "integrity": "sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==", "dev": true }, "update-notifier": { @@ -12693,12 +13460,6 @@ "xdg-basedir": "^3.0.0" } }, - "update-section": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/update-section/-/update-section-0.3.3.tgz", - "integrity": "sha1-RY8Xgg03gg3GDiC4bZQ5GwASMVg=", - "dev": true - }, "uri-js": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", @@ -12706,14 +13467,6 @@ "dev": true, "requires": { "punycode": "^2.1.0" - }, - "dependencies": { - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - } } }, "urix": { @@ -12750,21 +13503,10 @@ } }, "use": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.0.tgz", - "integrity": "sha512-6UJEQM/L+mzC3ZJNM56Q4DFGLX/evKGRg15UJHGB9X5j5Z3AFbgZvjUh2yq/UJUY4U5dh7Fal++XbNg1uzpRAw==", - "dev": true, - "requires": { - "kind-of": "^6.0.2" - }, - "dependencies": { - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", - "dev": true - } - } + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true }, "user-home": { "version": "2.0.0", @@ -12776,20 +13518,12 @@ } }, "util": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "version": "0.10.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", + "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", "dev": true, "requires": { - "inherits": "2.0.1" - }, - "dependencies": { - "inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", - "dev": true - } + "inherits": "2.0.3" } }, "util-deprecate": { @@ -12804,15 +13538,24 @@ "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" }, "uuid": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.2.1.tgz", - "integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", "dev": true }, + "v8flags": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.1.3.tgz", + "integrity": "sha512-amh9CCg3ZxkzQ48Mhcb8iX7xpAfYJgePHxWMQCBWECpOSqJUXgY26ncA61UTV0BkPqfhcy6mzwCIoP4ygxpW8w==", + "dev": true, + "requires": { + "homedir-polyfill": "^1.0.1" + } + }, "validate-npm-package-license": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz", - "integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, "requires": { "spdx-correct": "^3.0.0", @@ -12841,18 +13584,6 @@ "extsprintf": "^1.2.0" } }, - "vfile": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-1.4.0.tgz", - "integrity": "sha1-wP1vpIT43r23cfaMMe112I2pf+c=", - "dev": true - }, - "vfile-location": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-2.0.3.tgz", - "integrity": "sha512-zM5/l4lfw1CBoPx3Jimxoc5RNDAHHpk6AM6LM0pTIkm5SUSsx8ZekZ0PVdf0WEZ7kjlhSt7ZlqbRL6Cd6dBs6A==", - "dev": true - }, "vm-browserify": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", @@ -12868,6 +13599,12 @@ "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", "dev": true }, + "vscode-languageserver-types": { + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.14.0.tgz", + "integrity": "sha512-lTmS6AlAlMHOvPQemVwo3CezxBp0sNB95KNPkqp3Nxd5VFEnuG1ByM0zlRWos0zjO3ZWtkvhal0COgiV1xIA4A==", + "dev": true + }, "walkdir": { "version": "0.0.11", "resolved": "https://registry.npmjs.org/walkdir/-/walkdir-0.0.11.tgz", @@ -12895,15 +13632,15 @@ } }, "web-ext": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/web-ext/-/web-ext-2.7.0.tgz", - "integrity": "sha512-hXj/MV/x6G0oxplOirV4/j7BJ5MZJ2yZHml0gulBr7mH2BMNyTJHdRi+qzVBNPFdBMLV0/PS05YGZ7xr2YmwVA==", + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/web-ext/-/web-ext-2.9.3.tgz", + "integrity": "sha512-aZnlxuYOMUUBS5C8NBhhAj7T0ouJexlW5Cx5ObtOheoguG3fqXUl+KTY19L1Am/bJoyHC8otGTgew9Z0WHeTtg==", "dev": true, "requires": { "@cliqz-oss/firefox-client": "0.3.1", "@cliqz-oss/node-firefox-connect": "1.2.1", "adbkit": "2.11.0", - "addons-linter": "1.0.0", + "addons-linter": "1.4.1", "babel-polyfill": "6.26.0", "babel-runtime": "6.26.0", "bunyan": "1.8.12", @@ -12913,11 +13650,11 @@ "es6-error": "4.1.1", "es6-promisify": "5.0.0", "event-to-promise": "0.8.0", - "firefox-profile": "1.1.0", + "firefox-profile": "1.2.0", "fx-runner": "1.0.9", "git-rev-sync": "1.9.1", - "minimatch": "3.0.4", "mkdirp": "0.5.1", + "multimatch": "2.1.0", "mz": "2.7.0", "node-notifier": "5.2.1", "opn": "5.3.0", @@ -12961,6 +13698,12 @@ "xregexp": "4.0.0" } }, + "invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "dev": true + }, "is-fullwidth-code-point": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", @@ -12970,6 +13713,15 @@ "number-is-nan": "^1.0.0" } }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "dev": true, + "requires": { + "invert-kv": "^1.0.0" + } + }, "opn": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/opn/-/opn-5.3.0.tgz", @@ -12998,6 +13750,21 @@ "json-parse-better-errors": "^1.0.1" } }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "source-map-support": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.3.tgz", + "integrity": "sha512-eKkTgWYeBOQqFGXRfKabMFdnWepo51vWqEdoeikaEPFiJC7MCU5j2h4+6Q8npkZTeLGbSyecZvRxiSoWl3rh+w==", + "dev": true, + "requires": { + "source-map": "^0.6.0" + } + }, "string-width": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", @@ -13088,22 +13855,22 @@ "dev": true }, "webpack": { - "version": "4.10.2", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.10.2.tgz", - "integrity": "sha512-S4yIBevM7DFSAOAvWSBgvuH5mtJ3HgjAS6tCGsTxxHtrVdbntdRVaPey2u9sCns6KV859Vwd2DwkvBLTcs6t6g==", + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.33.0.tgz", + "integrity": "sha512-ggWMb0B2QUuYso6FPZKUohOgfm+Z0sVFs8WwWuSH1IAvkWs428VDNmOlAxvHGTB9Dm/qOB/qtE5cRx5y01clxw==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.5.9", - "@webassemblyjs/wasm-edit": "1.5.9", - "@webassemblyjs/wasm-opt": "1.5.9", - "@webassemblyjs/wasm-parser": "1.5.9", - "acorn": "^5.0.0", - "acorn-dynamic-import": "^3.0.0", + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-module-context": "1.8.5", + "@webassemblyjs/wasm-edit": "1.8.5", + "@webassemblyjs/wasm-parser": "1.8.5", + "acorn": "^6.0.5", + "acorn-dynamic-import": "^4.0.0", "ajv": "^6.1.0", "ajv-keywords": "^3.1.0", - "chrome-trace-event": "^0.1.1", - "enhanced-resolve": "^4.0.0", - "eslint-scope": "^3.7.1", + "chrome-trace-event": "^1.0.0", + "enhanced-resolve": "^4.1.0", + "eslint-scope": "^4.0.0", "json-parse-better-errors": "^1.0.2", "loader-runner": "^2.3.0", "loader-utils": "^1.1.0", @@ -13112,346 +13879,45 @@ "mkdirp": "~0.5.0", "neo-async": "^2.5.0", "node-libs-browser": "^2.0.0", - "schema-utils": "^0.4.4", - "tapable": "^1.0.0", - "uglifyjs-webpack-plugin": "^1.2.4", + "schema-utils": "^1.0.0", + "tapable": "^1.1.0", + "terser-webpack-plugin": "^1.1.0", "watchpack": "^1.5.0", - "webpack-sources": "^1.0.1" + "webpack-sources": "^1.3.0" }, "dependencies": { "acorn": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.6.0.tgz", - "integrity": "sha512-QatFQ4C0n+PLqemyC6zXEv04tSqRR0hRqe+uGKPEVgKe2G8kl8wJvHzRYWwz6vqqEqt6idPVMFojZ4P1zlyAzQ==", - "dev": true - }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "commander": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", - "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.1.1.tgz", + "integrity": "sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA==", "dev": true }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "dev": true, - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { + "schema-utils": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", - "dev": true - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.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.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "uglify-es": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", - "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", - "dev": true, - "requires": { - "commander": "~2.13.0", - "source-map": "~0.6.1" - } - }, - "uglifyjs-webpack-plugin": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.5.tgz", - "integrity": "sha512-hIQJ1yxAPhEA2yW/i7Fr+SXZVMp+VEI3d42RTHBgQd2yhp/1UdBcR3QEWPV5ahBxlqQDMEMTuTEvDHSFINfwSw==", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", "dev": true, "requires": { - "cacache": "^10.0.4", - "find-cache-dir": "^1.0.0", - "schema-utils": "^0.4.5", - "serialize-javascript": "^1.4.0", - "source-map": "^0.6.1", - "uglify-es": "^3.3.4", - "webpack-sources": "^1.1.0", - "worker-farm": "^1.5.2" + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" } } } }, "webpack-merge": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.1.2.tgz", - "integrity": "sha512-/0QYwW/H1N/CdXYA2PNPVbsxO3u2Fpz34vs72xm03SRfg6bMNGfMJIQEpQjKRvkG2JvT6oRJFpDtSrwbX8Jzvw==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.1.tgz", + "integrity": "sha512-4p8WQyS98bUJcCvFMbdGZyZmsKuWjWVnVHnAS3FFg0HDaRVrPbkivx2RYCre8UiemD67RsiFFLfn4JhLAin8Vw==", "dev": true, "requires": { "lodash": "^4.17.5" } }, "webpack-sources": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.1.0.tgz", - "integrity": "sha512-aqYp18kPphgoO5c/+NaUvEeACtZjMESmDChuD3NBciVpah3XpMEU9VAAtIaB1BsfJWWTSdv8Vv1m3T0aRk2dUw==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.3.0.tgz", + "integrity": "sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA==", "dev": true, "requires": { "source-list-map": "^2.0.0", @@ -13483,9 +13949,9 @@ "dev": true }, "whatwg-url": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.4.1.tgz", - "integrity": "sha512-FwygsxsXx27x6XXuExA/ox3Ktwcbf+OAvrKmLulotDAiO1Q6ixchPFaHYsis2zZBZSJTR0+dR+JVtf7MlbqZjw==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.0.0.tgz", + "integrity": "sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ==", "dev": true, "requires": { "lodash.sortby": "^4.7.0", @@ -13500,9 +13966,9 @@ "dev": true }, "which": { - "version": "1.2.14", - "resolved": "https://registry.npmjs.org/which/-/which-1.2.14.tgz", - "integrity": "sha1-mofEN48D6CfOyvGs31bHNsAcFOU=", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, "requires": { "isexe": "^2.0.0" @@ -13515,9 +13981,9 @@ "dev": true }, "widest-line": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.0.tgz", - "integrity": "sha1-AUKk6KJD+IgsAjOqDgKBqnYVInM=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz", + "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==", "dev": true, "requires": { "string-width": "^2.1.1" @@ -13561,13 +14027,12 @@ "dev": true }, "worker-farm": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.5.4.tgz", - "integrity": "sha512-ITyClEvcfv0ozqJl1vmWFWhvI+OIrkbInYqkEPE50wFPXj8J9Gd3FYf8+CkZJXJJsQBYe+2DvmoK9Zhx5w8W+w==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", + "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", "dev": true, "requires": { - "errno": "~0.1.7", - "xtend": "~4.0.1" + "errno": "~0.1.7" } }, "wrap-ansi": { @@ -13618,9 +14083,9 @@ } }, "write-file-atomic": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.3.0.tgz", - "integrity": "sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==", + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", + "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", "dev": true, "requires": { "graceful-fs": "^4.1.11", @@ -13629,9 +14094,9 @@ } }, "ws": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.1.2.tgz", - "integrity": "sha512-rfUqzvz0WxmSXtJpPMX2EeASXabOrSMk1ruMOV3JBTBjo4ac2lDjGGsbQSyxj8Odhw5fBib8ZKEjDNvgouNKYw==", + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz", + "integrity": "sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==", "dev": true, "requires": { "async-limiter": "~1.0.0" @@ -13644,9 +14109,9 @@ "dev": true }, "xhr-mock": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xhr-mock/-/xhr-mock-2.2.0.tgz", - "integrity": "sha1-TfIzjszRSRT62wHP4ieo+FrXvjU=", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/xhr-mock/-/xhr-mock-2.4.1.tgz", + "integrity": "sha1-y1AuPVC4suwxvWF2bOUWv8HdBy8=", "dev": true, "requires": { "global": "^4.3.0", @@ -13728,18 +14193,19 @@ } }, "yargs-parser": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-9.0.2.tgz", - "integrity": "sha1-nM9qQ0YP5O1Aqbto9I1DuKaMwHc=", + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", + "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", "dev": true, "requires": { - "camelcase": "^4.1.0" + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" }, "dependencies": { "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true } } @@ -13753,15 +14219,6 @@ "fd-slicer": "~1.0.1" } }, - "zip": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/zip/-/zip-1.2.0.tgz", - "integrity": "sha1-rQrUImUwm+QutW/IYZThfCTmapw=", - "dev": true, - "requires": { - "bops": "~0.1.1" - } - }, "zip-dir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/zip-dir/-/zip-dir-1.0.2.tgz", @@ -13770,6 +14227,17 @@ "requires": { "async": "^1.5.2", "jszip": "^2.4.0" + }, + "dependencies": { + "jszip": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-2.6.1.tgz", + "integrity": "sha1-uI86ey5noqBIFSmCx6N1bZxIKPA=", + "dev": true, + "requires": { + "pako": "~1.0.2" + } + } } }, "zip-stream": { diff --git a/package.json b/package.json index 20fd7df1..9d87f8e2 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ "url": "https://github.com/jsonwebtoken/jsonwebtoken.github.io" }, "dependencies": { - "express": "^4.16.2", + "express": "^4.17.1", "express-sslify": "^1.2.0", "querystring": "^0.2.0" }, @@ -15,23 +15,23 @@ "npm": "^6.4.1" }, "devDependencies": { - "@babel/core": "^7.0.0-beta.36", - "@babel/polyfill": "^7.0.0-beta.37", - "@babel/preset-env": "^7.0.0-beta.36", - "babel-loader": "^8.0.0-beta.0", + "@babel/core": "^7.4.5", + "@babel/polyfill": "^7.4.4", + "@babel/preset-env": "^7.4.5", + "babel-loader": "^8.0.6", "babel-plugin-transform-async-to-generator": "^6.24.1", - "bootstrap": "^3.3.7", - "chai": "^4.1.2", + "bootstrap": "^3.4.1", + "chai": "^4.2.0", "chai-arrays": "^2.0.0", "chai-as-promised": "^7.1.1", - "chai-json-schema": "^1.5.0", - "clipboard-polyfill": "^2.4.6", - "codemirror": "^5.33.0", + "chai-json-schema": "^1.5.1", + "clipboard-polyfill": "^2.8.1", + "codemirror": "^5.47.0", "deep-freeze": "0.0.1", - "esm": "^3.0.47", + "esm": "^3.2.25", "flipclock": "^0.7.8", - "grunt": "^1.0.1", - "grunt-cli": "^1.2.0", + "grunt": "^1.0.4", + "grunt-cli": "^1.3.2", "grunt-contrib-clean": "^1.1.0", "grunt-contrib-connect": "^1.0.2", "grunt-contrib-copy": "^1.0.0", @@ -41,31 +41,31 @@ "grunt-crx": "^1.0.5", "grunt-exec": "^3.0.0", "grunt-mocha-test": "^0.13.3", - "grunt-webpack": "^3.0.2", - "highlight.js": "^9.12.0", + "grunt-webpack": "^3.1.3", + "highlight.js": "^9.15.8", "inject-loader": "^3.0.1", - "isotope-layout": "^3.0.5", - "jquery": "^3.2.1", - "jstransformer-markdown-it": "^2.0.0", - "lodash": "^4.17.4", - "loglevel": "^1.6.1", - "mocha": "^5.0.0", - "node-jose": "^1.0.0", + "isotope-layout": "^3.0.6", + "jquery": "^3.4.1", + "jstransformer-markdown-it": "^2.1.0", + "lodash": "^4.17.11", + "loglevel": "^1.6.2", + "mocha": "^5.2.0", + "node-jose": "^1.1.3", "promise.any": "^0.1.1", - "pug": "^2.0.0-rc.4", - "puppeteer": "^1.11.0", - "request-promise-native": "^1.0.5", - "sinon": "^4.2.2", + "pug": "^2.0.3", + "puppeteer": "^1.17.0", + "request-promise-native": "^1.0.7", + "sinon": "^4.5.0", "sinon-chai": "^2.14.0", - "source-map-support": "^0.5.3", + "source-map-support": "^0.5.12", "stylus": "^0.54.5", - "tippy.js": "^2.3.0", + "tippy.js": "^2.6.0", "tv4-formats": "^3.0.3", - "uglifyjs-webpack-plugin": "^1.1.6", - "web-ext": "^2.7.0", - "webpack": "^4.10.2", - "webpack-merge": "^4.1.1", - "xhr-mock": "^2.0.3" + "uglifyjs-webpack-plugin": "^1.3.0", + "web-ext": "^2.9.3", + "webpack": "^4.33.0", + "webpack-merge": "^4.2.1", + "xhr-mock": "^2.4.1" }, "scripts": { "start": "node server.js", diff --git a/test/functional/editor.js b/test/functional/editor.js index bb9dfb29..897dea2d 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -13,7 +13,7 @@ const defaultTokens = require('esm')(module)('../../src/editor/default-tokens.js').default; const jwks = require('./jwks.json'); -const isVisible = utils.isVisible; +const { isVisible, selectAll } = utils; chai.use(chaiAsPromised); chai.use(chaiArrays); @@ -136,9 +136,7 @@ describe('Editor', function() { }); await this.page.click('.js-header'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); const header = { alg: 'HS256', @@ -173,9 +171,7 @@ describe('Editor', function() { }); await this.page.click('.js-payload'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); const payload = { "sub": "1234567890", @@ -213,9 +209,7 @@ describe('Editor', function() { }); await this.page.click('.js-header'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); const header = { alg: 'HS384', @@ -254,9 +248,7 @@ describe('Editor', function() { await this.page.select('#algorithm-select', 'HS256'); await this.page.click('.js-payload'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); const payload = { sub: 'test' @@ -342,17 +334,13 @@ describe('Editor', function() { it(`Decodes ${alg.toUpperCase()} tokens`, async function() { const secretInput = await this.page.$('input[name="secret"]'); await secretInput.click(); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await secretInput.type(tokens[alg].secret, { delay: typingDelay }); await this.page.click('.js-input'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.type(tokens[alg].token, { delay: typingDelay }); @@ -382,9 +370,7 @@ describe('Editor', function() { const secretInput = await this.page.$('input[name="secret"]'); await secretInput.click(); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await secretInput.type(secret, { delay: typingDelay }); @@ -401,9 +387,7 @@ describe('Editor', function() { secret += 'test'; await secretInput.click(); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await secretInput.type(secret, { delay: typingDelay }); @@ -424,9 +408,7 @@ describe('Editor', function() { it('Signs tokens with an empty secret', async function() { const secretInput = await this.page.$('input[name="secret"]'); await secretInput.click(); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.press('Delete'); // Wait for token processing. @@ -448,21 +430,15 @@ describe('Editor', function() { for(const alg of algs) { it(alg.toUpperCase(), async function() { - //this.timeout(20000); - await this.page.click('.js-input'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.type(tokens[alg].token, { delay: typingDelay }); const secretInput = await this.page.$('textarea[name="public-key"]'); await secretInput.click(); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await secretInput.type(tokens[alg].publicKey, { delay: typingDelay }); @@ -490,22 +466,16 @@ describe('Editor', function() { describe('Encodes RS/ES/PS tokens', function() { describe('RS/PS', async function() { before(async function() { - //this.timeout(30000); - await this.page.select('#algorithm-select', 'RS256'); await this.page.click('textarea[name="public-key"]'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.type(defaultTokens['rs256'].publicKey, { delay: typingDelay }); await this.page.click('textarea[name="private-key"]'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.type(defaultTokens['rs256'].privateKey, { delay: typingDelay }); @@ -530,9 +500,7 @@ describe('Editor', function() { }); await this.page.click('.js-header'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.type(JSON.stringify({ alg: alg.toUpperCase(), typ: 'JWT' @@ -541,9 +509,7 @@ describe('Editor', function() { }); await this.page.click('.js-payload'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.type(JSON.stringify({ sub: 'test' }, null, 2), { @@ -574,22 +540,16 @@ describe('Editor', function() { describe('ES', async function() { before(async function() { - //this.timeout(30000); - await this.page.select('#algorithm-select', 'ES256'); await this.page.click('textarea[name="public-key"]'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.type(defaultTokens['es256'].publicKey, { delay: typingDelay }); await this.page.click('textarea[name="private-key"]'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.type(defaultTokens['es256'].privateKey, { delay: typingDelay }); @@ -613,9 +573,7 @@ describe('Editor', function() { }); await this.page.click('.js-header'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.type(JSON.stringify({ alg: alg.toUpperCase(), typ: 'JWT' @@ -624,9 +582,7 @@ describe('Editor', function() { }); await this.page.click('.js-payload'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.type(JSON.stringify({ sub: 'test' }, null, 2), { @@ -680,9 +636,7 @@ describe('Editor', function() { beforeEach(async function() { const publicKeyInput = await this.page.$('textarea[name="public-key"]'); await publicKeyInput.click(); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.press('Delete'); }); @@ -691,8 +645,6 @@ describe('Editor', function() { }); it('iss URL + .well-known', async function() { - //this.timeout(20000); - const key = await jose.JWK.asKey(defaultTokens.rs256.privateKey, 'pem'); const token = await jose.JWS.createSign({ fields: { @@ -709,9 +661,7 @@ describe('Editor', function() { }), 'utf8').final(); await this.page.click('.js-input'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.type(token, { delay: typingDelay }); @@ -722,7 +672,7 @@ describe('Editor', function() { const publicKey = await this.page.$eval('textarea[name="public-key"]', publicKeyElement => publicKeyElement.value); - expect(publicKey).to.include(`-----BEGIN PUBLIC KEY-----\nMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDdlatRjRjogo3WojgGHFHYLugd\nUWAY9iR3fy4arWNA1KoS8kVw33cJibXr8bvwUAUparCwlvdbH6dvEOfou0/gCFQs\nHUfQrSDv+MuSUMAe8jzKE4qW+jK+xQU9a03GUnKHkkle+Q0pX/g6jXZ7r1/xAK5D\no2kQ+X5xK9cipRgEKwIDAQAB\n-----END PUBLIC KEY-----\n`); + expect(publicKey).to.include(`-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnzyis1ZjfNB0bBgKFMSv\nvkTtwlvBsaJq7S5wA+kzeVOVpVWwkWdVha4s38XM/pa/yr47av7+z3VTmvDRyAHc\naT92whREFpLv9cj5lTeJSibyr/Mrm/YtjCZVWgaOYIhwrXwKLqPr/11inWsAkfIy\ntvHWTxZYEcXLgAXFuUuaS3uF9gEiNQwzGTU1v0FqkqTBr4B8nW3HCN47XUu0t8Y0\ne+lf4s4OxQawWD79J9/5d3Ry0vbV3Am1FtGJiJvOwRsIfVChDpYStTcHTCMqtvWb\nV6L11BWkpzGXSW4Hv43qa+GSYOD2QU68Mb59oSk2OB+BtOLpJofmbGEGgvmwyCI9\nMwIDAQAB\n-----END PUBLIC KEY-----`); const valid = await this.page.$eval('.validation-status', status => { return status.classList.contains('valid-token') && @@ -751,9 +701,7 @@ describe('Editor', function() { }), 'utf8').final(); await this.page.click('.js-input'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.type(token, { delay: typingDelay }); @@ -792,9 +740,7 @@ describe('Editor', function() { }), 'utf8').final(); await this.page.click('.js-input'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.type(token, { delay: typingDelay }); @@ -821,15 +767,11 @@ describe('Editor', function() { const secretInput = await this.page.$('textarea[name="private-key"]'); await secretInput.click(); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.press('Delete'); await this.page.click('.js-header'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); const header = { alg: 'RS256', @@ -856,15 +798,11 @@ describe('Editor', function() { const secretInput = await this.page.$('textarea[name="private-key"]'); await secretInput.click(); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.press('Delete'); await this.page.click('.js-payload'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); const payload = { sub: 'test' @@ -889,18 +827,14 @@ describe('Editor', function() { await this.page.select('#algorithm-select', 'RS256'); await this.page.click('.js-input'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.type(tokens['rs256'].token, { delay: typingDelay }); const secretInput = await this.page.$('textarea[name="public-key"]'); await secretInput.click(); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await secretInput.type(tokens['rs256'].publicKey, { delay: typingDelay }); @@ -917,9 +851,7 @@ describe('Editor', function() { expect(valid).to.be.true; await secretInput.click(); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.press('Delete'); // Wait for token processing. @@ -940,18 +872,14 @@ describe('Editor', function() { await this.page.select('#algorithm-select', 'RS256'); await this.page.click('.js-input'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.type(tokens['rs256'].token, { delay: typingDelay }); const secretInput = await this.page.$('textarea[name="public-key"]'); await secretInput.click(); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await secretInput.type(tokens['rs256'].publicKey, { delay: typingDelay }); @@ -991,18 +919,14 @@ describe('Editor', function() { const secretInput = await this.page.$('textarea[name="public-key"]'); await secretInput.click(); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await secretInput.type(defaultTokens['rs256'].publicKey, { delay: typingDelay }); const privateKeyInput = await this.page.$('textarea[name="private-key"]'); await privateKeyInput.click(); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); const head = defaultTokens['rs256'].privateKey.slice(0, 20); const tail = defaultTokens['rs256'].privateKey.slice(20); @@ -1012,9 +936,7 @@ describe('Editor', function() { }); await this.page.click('.js-input'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.type(defaultTokens['rs256'].token, { delay: typingDelay }); @@ -1037,24 +959,18 @@ describe('Editor', function() { const secretInput = await this.page.$('textarea[name="public-key"]'); await secretInput.click(); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await secretInput.type(tokens['rs256'].publicKey, { delay: typingDelay }); const privateKeyInput = await this.page.$('textarea[name="private-key"]'); await privateKeyInput.click(); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.press('Delete'); await this.page.click('.js-input'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.type(tokens['rs256'].token, { delay: typingDelay }); @@ -1075,9 +991,7 @@ describe('Editor', function() { await this.page.select('#algorithm-select', 'HS256'); await this.page.click('.js-input'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.type(tokens.hs256.token, { delay: typingDelay }); @@ -1095,9 +1009,7 @@ describe('Editor', function() { //this.timeout(20000); await this.page.click('.js-input'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.type(tokens.none.token, { delay: typingDelay }); @@ -1118,17 +1030,13 @@ describe('Editor', function() { const secretInput = await this.page.$('input[name="secret"]'); await secretInput.click(); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await secretInput.type('secret-test', { delay: typingDelay }); await this.page.click('.js-payload'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); const payload = { sub: 'test' @@ -1152,17 +1060,13 @@ describe('Editor', function() { const secretInput = await this.page.$('input[name="secret"]'); await secretInput.click(); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await secretInput.type('secret-test', { delay: typingDelay }); await this.page.click('.js-payload'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); const payload = { sub: 'test' @@ -1205,18 +1109,14 @@ describe('Editor', function() { await this.page.select('#algorithm-select', 'RS256'); await this.page.click('.js-input'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await this.page.keyboard.type(defaultTokens['rs256'].token, { delay: typingDelay }); const pubKeyInput = await this.page.$('textarea[name="public-key"]'); await pubKeyInput.click(); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await pubKeyInput.type(defaultTokens['rs256'].publicKey, { delay: typingDelay }); @@ -1224,17 +1124,13 @@ describe('Editor', function() { const privateKeyInput = await this.page.$('textarea[name="private-key"]'); await privateKeyInput.click(); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); await privateKeyInput.type(defaultTokens['rs256'].privateKey, { delay: typingDelay }); await this.page.click('.js-payload'); - await this.page.keyboard.down('ControlLeft'); - await this.page.keyboard.press('KeyA'); - await this.page.keyboard.up('ControlLeft'); + await selectAll.call(this); const payload = { sub: 'test' diff --git a/test/functional/jwks.json b/test/functional/jwks.json index 65d6f481..8f57c7e7 100644 --- a/test/functional/jwks.json +++ b/test/functional/jwks.json @@ -5,12 +5,12 @@ "kty": "RSA", "use": "sig", "x5c": [ - "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" ], "kid": "1", "x5t": "1", "e": "AQAB", - "n": "3ZWrUY0Y6IKN1qI4BhxR2C7oHVFgGPYkd38uGq1jQNSqEvJFcN93CYm16_G78FAFKWqwsJb3Wx-nbxDn6LtP4AhULB1H0K0g7_jLklDAHvI8yhOKlvoyvsUFPWtNxlJyh5JJXvkNKV_4Oo12e69f8QCuQ6NpEPl-cSvXIqUYBCs" + "n": "nzyis1ZjfNB0bBgKFMSvvkTtwlvBsaJq7S5wA-kzeVOVpVWwkWdVha4s38XM_pa_yr47av7-z3VTmvDRyAHcaT92whREFpLv9cj5lTeJSibyr_Mrm_YtjCZVWgaOYIhwrXwKLqPr_11inWsAkfIytvHWTxZYEcXLgAXFuUuaS3uF9gEiNQwzGTU1v0FqkqTBr4B8nW3HCN47XUu0t8Y0e-lf4s4OxQawWD79J9_5d3Ry0vbV3Am1FtGJiJvOwRsIfVChDpYStTcHTCMqtvWbV6L11BWkpzGXSW4Hv43qa-GSYOD2QU68Mb59oSk2OB-BtOLpJofmbGEGgvmwyCI9Mw" } ] } diff --git a/test/functional/utils.js b/test/functional/utils.js index 53af74aa..d975720b 100644 --- a/test/functional/utils.js +++ b/test/functional/utils.js @@ -1,5 +1,4 @@ const puppeteer = require('puppeteer'); -const os = require('os'); // https://stackoverflow.com/questions/5353934/check-if-element-is-visible-on-screen function isVisible(elm) { @@ -19,14 +18,7 @@ async function launchBrowser() { // Initial navigation may take long due to outside requests. this.timeout(30000); - const options = os.hostname() === 'i7-4790K-LIN' ? { - //headless: false, - executablePath: '/usr/bin/chromium' - } : { - args: ['--no-sandbox'] - }; - - this.browser = await puppeteer.launch(options); + this.browser = await puppeteer.launch(); this.page = await this.browser.newPage(); await this.page.setViewport({ width: 1920, @@ -39,8 +31,78 @@ async function closeBrowser() { await this.browser.close(); } +/** + * Emulates a Ctrl+A SelectAll key combination by dispatching custom keyboard + * events and using the results of those events to determine whether to call + * `document.execCommand( 'selectall' );`. This is necessary because Puppeteer + * does not emulate Ctrl+A SelectAll in macOS. Events are dispatched to ensure + * that any `Event#preventDefault` which would have normally occurred in the + * application as a result of Ctrl+A is respected. + * + * @link https://github.com/GoogleChrome/puppeteer/issues/1313 + * @link https://w3c.github.io/uievents/tools/key-event-viewer.html + * + * @return {Promise} Promise resolving once the SelectAll emulation completes. + */ +async function selectAll() { + await this.page.evaluate(() => { + const isMac = /Mac|iPod|iPhone|iPad/.test(window.navigator.platform); + + document.activeElement.dispatchEvent( + new KeyboardEvent('keydown', { + bubbles: true, + cancelable: true, + key: isMac ? 'Meta' : 'Control', + code: isMac ? 'MetaLeft' : 'ControlLeft', + location: window.KeyboardEvent.DOM_KEY_LOCATION_LEFT, + getModifierState: (keyArg) => keyArg === (isMac ? 'Meta' : 'Control'), + ctrlKey: ! isMac, + metaKey: isMac, + charCode: 0, + keyCode: isMac ? 93 : 17, + which: isMac ? 93 : 17, + }) + ); + + const preventableEvent = new KeyboardEvent('keydown', { + bubbles: true, + cancelable: true, + key: 'a', + code: 'KeyA', + location: window.KeyboardEvent.DOM_KEY_LOCATION_STANDARD, + getModifierState: (keyArg) => keyArg === (isMac ? 'Meta' : 'Control'), + ctrlKey: ! isMac, + metaKey: isMac, + charCode: 0, + keyCode: 65, + which: 65, + }); + + const wasPrevented = (!document.activeElement.dispatchEvent(preventableEvent) || preventableEvent.defaultPrevented); + + if (!wasPrevented) { + document.execCommand('selectall', false, null); + } + + document.activeElement.dispatchEvent( + new KeyboardEvent('keyup', { + bubbles: true, + cancelable: true, + key: isMac ? 'Meta' : 'Control', + code: isMac ? 'MetaLeft' : 'ControlLeft', + location: window.KeyboardEvent.DOM_KEY_LOCATION_LEFT, + getModifierState: () => false, + charCode: 0, + keyCode: isMac ? 93 : 17, + which: isMac ? 93 : 17, + }), + ); + }); +} + module.exports = { isVisible: isVisible, launchBrowser: launchBrowser, - closeBrowser: closeBrowser + closeBrowser: closeBrowser, + selectAll: selectAll }; From 4e5946c898bb1dca86d3c00b1482ad61cb1abf13 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Thu, 20 Jun 2019 09:32:58 +0200 Subject: [PATCH 166/456] fix: first populate input, then verify signatures --- src/website/index.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/website/index.js b/src/website/index.js index a3aca97e..66ae0505 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -39,13 +39,13 @@ function parseLocationQuery() { if (token) { metrics.track("token-in-url", { type: key }); - setTokenEditorValue(token); - if (locSearch.publicKey || locHash.publicKey) { metrics.track("pubkey-in-url"); publicKeyTextArea.value = locSearch.publicKey || locHash.publicKey; } + setTokenEditorValue(token); + debuggerSection.scrollIntoView(true); break; From 2f8ca97e4dcc21e297756789770245805f615a77 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Fri, 21 Jun 2019 13:13:53 +1000 Subject: [PATCH 167/456] add RSA support to crystal-community/jwt --- views/website/libraries/25-Crystal.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/views/website/libraries/25-Crystal.json b/views/website/libraries/25-Crystal.json index d7c86430..585e6b98 100644 --- a/views/website/libraries/25-Crystal.json +++ b/views/website/libraries/25-Crystal.json @@ -19,9 +19,9 @@ "hs256": true, "hs384": true, "hs512": true, - "rs256": false, - "rs384": false, - "rs512": false, + "rs256": true, + "rs384": true, + "rs512": true, "es256": false, "es384": false, "es512": false, From 011237e884c81aefffee6cb55018530bd9d08e9f Mon Sep 17 00:00:00 2001 From: Brian Voelker Date: Mon, 24 Jun 2019 09:22:00 -0500 Subject: [PATCH 168/456] Update 9-Go.json --- views/website/libraries/9-Go.json | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index 9bccf3de..55cd0893 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -342,6 +342,37 @@ "gitHubRepoPath": null, "repoUrl": "https://gitlab.com/rucuriousyet/jwt", "installCommandHtml": "go get gitlab.com/rucuriousyet/jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": false, + "hs512": false, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false + }, + "authorUrl": "https://github.com/brianvoe", + "authorName": "Brian Voelker", + "gitHubRepoPath": "brianvoe/sjwt", + "repoUrl": "https://github.com/brianvoe/sjwt", + "installCommandHtml": "go get github.com/brianvoe/sjwt" } ] } From 2a41c31e5887c2da42e6bbc720b3e7ae019f9da4 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Tue, 9 Jul 2019 20:49:44 +0200 Subject: [PATCH 169/456] fix: dont validate ill-formed tokens --- src/editor/jwt.js | 46 +++++++++++++---------------------------- src/editor/utils.js | 21 ------------------- test/unit/editor/jwt.js | 5 +---- 3 files changed, 15 insertions(+), 57 deletions(-) diff --git a/src/editor/jwt.js b/src/editor/jwt.js index 022e9bd8..d05fe1cd 100644 --- a/src/editor/jwt.js +++ b/src/editor/jwt.js @@ -102,7 +102,7 @@ export function verify(jwt, secretOrPublicKeyString, base64Secret = false) { const decoded = decode(jwt); - if(!decoded.header.alg) { + if(!decoded.header.alg || decoded.errors) { return Promise.resolve(false); } @@ -133,51 +133,33 @@ export function decode(jwt) { const split = jwt.split('.'); + if (!isValidBase64String(split[2])) { + result.errors = true; + } + try { + if (!isValidBase64String(split[0])) { + result.errors = true; + } result.header = JSON.parse(b64u.decode(split[0])); } catch(e) { - result.header = {}; result.errors = true; } try { + if (!isValidBase64String(split[1])) { + result.errors = true; + } result.payload = JSON.parse(b64u.decode(split[1])); } catch(e) { - result.payload = {}; result.errors = true; } return result; } -export function isValidBase64String(s, urlOnly) { - try { - const validChars = urlOnly ? - 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=' : - 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_+/='; - - let hasPadding = false; - for(let i = 0; i < s.length; ++i) { - hasPadding |= s.charAt(i) === '='; - if(validChars.indexOf(s.charAt(i)) === -1) { - return false; - } - } - - if(hasPadding) { - for(let i = s.indexOf('='); i < s.length; ++i) { - if(s.charAt(i) !== '=') { - return false; - } - } - - return s.length % 4 === 0; - } - - return true; - } catch (e) { - return false; - } +export function isValidBase64String(s) { + return /^[a-zA-Z0-9_-]*$/.test(s); } export function isToken(jwt, checkTypClaim = false) { @@ -193,7 +175,7 @@ export function isToken(jwt, checkTypClaim = false) { const split = jwt.split('.'); let valid = true; - split.forEach(s => valid = valid && isValidBase64String(s, true)); + split.forEach(s => valid = valid && isValidBase64String(s)); return valid; } diff --git a/src/editor/utils.js b/src/editor/utils.js index 558f378e..fbaaaf3f 100644 --- a/src/editor/utils.js +++ b/src/editor/utils.js @@ -54,26 +54,6 @@ export function isString(value) { return typeof value === 'string' || value instanceof String; } -function getBase64Format(token) { - try { - function getFormat(str) { - if(jwt.isValidBase64String(str, true)) { - return 'base64url'; - } else if(jwt.isValidBase64String(str, false)) { - return 'base64'; - } else { - return 'invalid'; - } - } - - const formats = token.split('.').map(getFormat); - return formats.every(r => r === formats[0]) ? - formats[0] : 'invalid'; - } catch(e) { - return 'invalid'; - } -} - function getRegisteredClaims(payload) { const result = []; @@ -125,7 +105,6 @@ export function getSafeTokenInfo(token) { Object.assign(result, { decodedWithErrors: decoded.errors, encodedSize: token.length, - base64Format: getBase64Format(token), header: { alg: decoded.header.alg, }, diff --git a/test/unit/editor/jwt.js b/test/unit/editor/jwt.js index 9969aee9..0759b9ed 100644 --- a/test/unit/editor/jwt.js +++ b/test/unit/editor/jwt.js @@ -220,16 +220,13 @@ describe('JWT', function() { it('detects valid Base64 and Base64URL strings', function() { data.forEach(d => { - jwt.isValidBase64String(d.b64, false).should.be.true; - jwt.isValidBase64String(d.b64u, false).should.be.true; jwt.isValidBase64String(d.b64u).should.be.true; - jwt.isValidBase64String(d.b64u, true).should.be.true; }); }); it('fails on invalid Base64 and Base64 URL strings', function() { data.forEach(d => { - if(d.b64.match(/[\+\/]/)) { + if(d.b64.match(/[\+\/=]/)) { jwt.isValidBase64String(d.b64, true).should.be.false; } }); From 0a940a1824b0c4d03d4f5ade271542067408442e Mon Sep 17 00:00:00 2001 From: Radoslaw Nowakowski Date: Sat, 13 Jul 2019 14:41:39 +0200 Subject: [PATCH 170/456] Adding nowakowskir/php-jwt PHP library --- views/website/libraries/24-PHP.json | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/views/website/libraries/24-PHP.json b/views/website/libraries/24-PHP.json index 08cf40bd..ef36d46a 100644 --- a/views/website/libraries/24-PHP.json +++ b/views/website/libraries/24-PHP.json @@ -341,6 +341,34 @@ "gitHubRepoPath": "miladrahimi/php-jwt", "repoUrl": "https://github.com/miladrahimi/php-jwt", "installCommandHtml": "composer require miladrahimi/php-jwt" + }, + { + "minimumVersion": "7.2.1", + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false + }, + "authorUrl": "https://github.com/nowakowskir", + "authorName": "Radosław Nowakowski", + "gitHubRepoPath": "nowakowskir/php-jwt", + "repoUrl": "https://github.com/nowakowskir/php-jwt", + "installCommandHtml": "composer require nowakowskir/php-jwt" } ] } From 4bd54b6a81107e403469555bbf9f430a80ecfe8e Mon Sep 17 00:00:00 2001 From: Sambego Date: Fri, 23 Aug 2019 08:41:16 +0200 Subject: [PATCH 171/456] Add localstorage warning --- views/website/md/introduction.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/views/website/md/introduction.md b/views/website/md/introduction.md index c1fd799f..77ee398d 100755 --- a/views/website/md/introduction.md +++ b/views/website/md/introduction.md @@ -95,6 +95,8 @@ If you want to play with JWT and put these concepts into practice, you can use [ ## How do JSON Web Tokens work? In authentication, when the user successfully logs in using their credentials, a JSON Web Token will be returned. Since tokens are credentials, great care must be taken to prevent security issues. In general, you should not keep tokens longer than required. +You also [should not store sensitive session data in browser storage due to lack of security](https://cheatsheetseries.owasp.org/cheatsheets/HTML5_Security_Cheat_Sheet.html#local-storage). + Whenever the user wants to access a protected route or resource, the user agent should send the JWT, typically in the **Authorization** header using the **Bearer** schema. The content of the header should look like the following: ``` From 3fceb9d929c4affa6a3e379e03df33926d4729f5 Mon Sep 17 00:00:00 2001 From: Sambego Date: Fri, 23 Aug 2019 12:58:30 +0200 Subject: [PATCH 172/456] Show a warning when a token with invalid base64 or padded base64 is being encoded --- src/dom-elements.js | 2 ++ src/editor/index.js | 63 ++++++++++++++++++++++++++++----- src/editor/jwt.js | 30 ++++++++++------ src/strings.js | 10 ++++-- stylus/website/codemirror.styl | 3 ++ stylus/website/index.styl | 27 ++++++++++++++ test/unit/editor/jwt.js | 18 +++++----- views/token-editor-common.pug | 1 + views/token-editor-warnings.pug | 1 + 9 files changed, 125 insertions(+), 30 deletions(-) create mode 100644 views/token-editor-warnings.pug diff --git a/src/dom-elements.js b/src/dom-elements.js index dd4fecff..e35beb2d 100644 --- a/src/dom-elements.js +++ b/src/dom-elements.js @@ -13,6 +13,8 @@ export const payloadElement = document.querySelector('.js-payload'); export const signatureStatusElement = document.querySelector('.validation-status.js-signature'); +export const editorWarnings = + document.querySelector('.js-editor-warnings'); export const algorithmSelect = document.getElementById('algorithm-select'); export const algorithmEs512 = diff --git a/src/editor/index.js b/src/editor/index.js index d6571ecb..3d432758 100644 --- a/src/editor/index.js +++ b/src/editor/index.js @@ -36,7 +36,8 @@ import { encodedTabLink, decodedTabLink, encodedTabElement, - decodedTabElement + decodedTabElement, + editorWarnings } from "../dom-elements.js"; import log from "loglevel"; @@ -80,6 +81,14 @@ function markAsInvalid() { }`; } +function markJWTAsInvalid() { + signatureStatusElement.classList.remove("valid-token"); + signatureStatusElement.classList.add("invalid-token"); + signatureStatusElement.innerHTML = ` ${ + strings.editor.jwtInvalid + }`; +} + function markAsValid() { const elementsWithError = document.getElementsByClassName("error"); Array.prototype.forEach.call(elementsWithError, element => { @@ -212,6 +221,28 @@ function markAsInvalidWithElement(element, clearTokenEditor = true) { } } +function showEditorWarnings(warnings) { + editorElement.classList.add("warning"); + editorWarnings.classList.remove("hidden"); + editorWarnings.innerHTML = ''; + + warnings.forEach(warning => { + const warningElement = document.createElement('p'); + const warningLabel = document.createElement('strong'); + const warningMessage = document.createTextNode(warning) + warningLabel.innerText = 'Warning: '; + warningElement.appendChild(warningLabel); + warningElement.appendChild(warningMessage); + editorWarnings.appendChild(warningElement) + }); +} + +function hideEditorWarnings() { + editorElement.classList.remove("warning"); + editorWarnings.classList.add("hidden"); + editorWarnings.innerHTML = ''; +} + function encodeToken() { deferToNextLoop(fixEditorHeight); @@ -300,6 +331,13 @@ function decodeToken() { tokenHash: tokenHash }); } else { + if (decoded.warnings && decoded.warnings.length > 0) { + showEditorWarnings(decoded.warnings); + markJWTAsInvalid(); + } else { + hideEditorWarnings(); + } + verifyToken(); } } catch (e) { @@ -332,13 +370,22 @@ function verifyToken() { ? secretInput.value : publicKeyTextArea.value; - verify(jwt, publicKeyOrSecret, secretBase64Checkbox.checked).then(valid => { - if (valid) { - markAsValid(); - metrics.track("editor-jwt-verified", { - tokenHash: tokenHash, - secretBase64Checkbox: secretBase64Checkbox.checked - }); + verify(jwt, publicKeyOrSecret, secretBase64Checkbox.checked).then(result => { + if (result.validSignature) { + if (!result.validBase64) { + markJWTAsInvalid(); + metrics.track("editor-jwt-invalid", { + reason: "invalid base64", + tokenHash: tokenHash, + secretBase64Checkbox: secretBase64Checkbox.checked + }); + } else { + markAsValid(); + metrics.track("editor-jwt-verified", { + tokenHash: tokenHash, + secretBase64Checkbox: secretBase64Checkbox.checked + }); + } } else { markAsInvalid(); metrics.track("editor-jwt-invalid", { diff --git a/src/editor/jwt.js b/src/editor/jwt.js index d05fe1cd..47710f08 100644 --- a/src/editor/jwt.js +++ b/src/editor/jwt.js @@ -2,7 +2,7 @@ import jose from 'node-jose'; import b64u from 'base64url'; import any from 'promise.any'; import { pki } from 'node-forge'; - +import strings from '../strings';strings import log from 'loglevel'; // node-jose does not support keys shorter than block size. This is a @@ -97,24 +97,27 @@ export function sign(header, export function verify(jwt, secretOrPublicKeyString, base64Secret = false) { if(!isToken(jwt)) { - return Promise.resolve(false); + return Promise.resolve({validSignature: false}); } const decoded = decode(jwt); if(!decoded.header.alg || decoded.errors) { - return Promise.resolve(false); + return Promise.resolve({validSignature: false}); } return getJoseKey(decoded.header, secretOrPublicKeyString, base64Secret).then( key => { return jose.JWS.createVerify(key) .verify(jwt) - .then(() => true, () => false); + .then(() => ({ + validSignature: true, + validBase64: jwt.split('.').reduce((valid, s) => valid = valid && isValidBase64String(s), true) + }), () => ({validSignature: false})); }, e => { log.warn('Could not verify token, ' + 'probably due to bad data in it or the keys: ', e); - return false; + return {validSignature: false}; } ); } @@ -123,7 +126,8 @@ export function decode(jwt) { const result = { header: {}, payload: {}, - errors: false + errors: false, + warnings: [], }; if(!jwt) { @@ -134,12 +138,12 @@ export function decode(jwt) { const split = jwt.split('.'); if (!isValidBase64String(split[2])) { - result.errors = true; + result.warnings.push(strings.warnings.signatureBase64Invalid); } try { if (!isValidBase64String(split[0])) { - result.errors = true; + result.warnings.push(strings.warnings.headerBase64Invalid); } result.header = JSON.parse(b64u.decode(split[0])); } catch(e) { @@ -148,7 +152,7 @@ export function decode(jwt) { try { if (!isValidBase64String(split[1])) { - result.errors = true; + result.warnings.push(strings.warnings.payloadBase64Invalid); } result.payload = JSON.parse(b64u.decode(split[1])); } catch(e) { @@ -158,7 +162,11 @@ export function decode(jwt) { return result; } -export function isValidBase64String(s) { +export function isValidBase64String(s, allowPadding = false) { + if (allowPadding) { + return /^[a-zA-Z0-9_=-]*$/.test(s); + } + return /^[a-zA-Z0-9_-]*$/.test(s); } @@ -175,7 +183,7 @@ export function isToken(jwt, checkTypClaim = false) { const split = jwt.split('.'); let valid = true; - split.forEach(s => valid = valid && isValidBase64String(s)); + split.forEach(s => valid = valid && isValidBase64String(s, true)); return valid; } diff --git a/src/strings.js b/src/strings.js index c9f7ca68..030bd008 100644 --- a/src/strings.js +++ b/src/strings.js @@ -39,12 +39,18 @@ export default { }, extension: { alreadyInstalled: 'Already installed', - addToBrowser: 'Add to Browser', + addToBrowser: 'Add to Browser', noJwtsFound: 'No JWTs found', saveBackTo: 'Save back to ' }, editor: { signatureVerified: 'signature verified', - signatureInvalid: 'invalid signature' + signatureInvalid: 'invalid signature', + jwtInvalid: 'Invalid JWT' + }, + warnings: { + headerBase64Invalid: 'Looks like your JWT header is not encoded correctly using base64url (https://tools.ietf.org/html/rfc4648#section-5). Note that padding ("=") must be omitted as per https://tools.ietf.org/html/rfc7515#section-2', + payloadBase64Invalid: 'Looks like your JWT payload is not encoded correctly using base64url (https://tools.ietf.org/html/rfc4648#section-5). Note that padding ("=") must be omitted as per https://tools.ietf.org/html/rfc7515#section-2', + signatureBase64Invalid: 'Looks like your JWT signature is not encoded correctly using base64url (https://tools.ietf.org/html/rfc4648#section-5). Note that padding ("=") must be omitted as per https://tools.ietf.org/html/rfc7515#section-2', } }; diff --git a/stylus/website/codemirror.styl b/stylus/website/codemirror.styl index 48b81b2e..9793bb2f 100644 --- a/stylus/website/codemirror.styl +++ b/stylus/website/codemirror.styl @@ -16,6 +16,9 @@ .jwt-playground .input &.error background pink + &.warning + background #fff7c9 + margin: 0 .CodeMirror font-size 20px line-height 30px diff --git a/stylus/website/index.styl b/stylus/website/index.styl index f3942003..3eb2ff15 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -522,6 +522,9 @@ body .error .CodeMirror background-color #ffc0cb + .warning .CodeMirror + background-color #fff7c9 + .box-content height 0 overflow hidden @@ -536,6 +539,7 @@ body .input padding 10px + position relative +breakpoint("tablet") padding 20px // &[data-alg="HS256"] @@ -1191,3 +1195,26 @@ footer margin: 0; display: inline; } + +.editor-warning + position: absolute; + bottom: 0; + left: 0; + right: 0; + z-index: 1; + background: rgba(127,123,100,0.1) + margin: 0; + border-top: 1px solid rgba(155,155,155,0.5); + + &.hidden + display: none + + p + margin: 0 + + p + p + margin: 20px 0 0 + +.jwt-playground .algorithm-code .tab-content .input:hover + .editor-warning + display: none; diff --git a/test/unit/editor/jwt.js b/test/unit/editor/jwt.js index 0759b9ed..bda6e62e 100644 --- a/test/unit/editor/jwt.js +++ b/test/unit/editor/jwt.js @@ -43,7 +43,7 @@ describe('JWT', function() { const token = b64u.toBase64(tokens.hs256.token); jwt.isToken(token).should.be.false; - return jwt.verify(token, tokens.hs256.secret).should.eventually.be.false; + return jwt.verify(token, tokens.hs256.secret).should.eventually.include({validBase64: false}); }); describe('verifies valid tokens', function() { @@ -51,10 +51,10 @@ describe('JWT', function() { it(alg.toUpperCase(), function() { if(alg.indexOf('hs') !== -1) { return jwt.verify(tokens[alg].token, tokens[alg].secret) - .should.eventually.be.true; + .should.eventually.include({validSignature: true}); } else { return jwt.verify(tokens[alg].token, tokens[alg].publicKey) - .should.eventually.be.true; + .should.eventually.be.include({validSignature: true}); } }); }); @@ -97,7 +97,7 @@ describe('JWT', function() { return Promise.all(promises.map(p => p.then(v => !v, e => true))) .then(all => all.every(v => v)) .finally(() => log.enableAll()) - .should.eventually.be.true; + .should.eventually.include({validSignature: true}); }); it('signs/verifies tokens (HS256)', function() { @@ -118,7 +118,7 @@ describe('JWT', function() { decoded.header.should.deep.equal(header); decoded.payload.should.deep.equal(payload); - return jwt.verify(token, 'secret').should.eventually.be.true; + return jwt.verify(token, 'secret').should.eventually.include({validSignature: true}); }); }); @@ -141,7 +141,7 @@ describe('JWT', function() { decoded.payload.should.deep.equal(payload); return jwt.verify(token, tokens.rs256.publicKey) - .should.eventually.be.true; + .should.eventually.include({validSignature: true}); }); }); @@ -164,7 +164,7 @@ describe('JWT', function() { decoded.payload.should.deep.equal(payload); return jwt.verify(token, tokens.es256.publicKey) - .should.eventually.be.true; + .should.eventually.include({validSignature: true}); }); }); @@ -187,7 +187,7 @@ describe('JWT', function() { decoded.payload.should.deep.equal(payload); return jwt.verify(token, tokens.ps256.publicKey) - .should.eventually.be.true; + .should.eventually.include({validSignature: true}); }); }); @@ -200,7 +200,7 @@ describe('JWT', function() { }; return jwt.sign(header, payload, tokens.rs256.privateKey).then(token => { - return jwt.verify(token, publicKeyPlainRSA).should.eventually.be.true; + return jwt.verify(token, publicKeyPlainRSA).should.eventually.include({validSignature: true}); }); }); diff --git a/views/token-editor-common.pug b/views/token-editor-common.pug index 93e3a32d..36637470 100644 --- a/views/token-editor-common.pug +++ b/views/token-editor-common.pug @@ -10,6 +10,7 @@ .tab-content #encoded-jwt.box-content.current .input.js-input + include token-editor-warnings.pug #decoded-jwt.box-content .output .jwt-explained.jwt-header diff --git a/views/token-editor-warnings.pug b/views/token-editor-warnings.pug new file mode 100644 index 00000000..6e635395 --- /dev/null +++ b/views/token-editor-warnings.pug @@ -0,0 +1 @@ +.editor-warning.warning.js-editor-warnings.hidden From cbc840b143ad125969ba09c3cc2f747328880215 Mon Sep 17 00:00:00 2001 From: Sambego Date: Fri, 23 Aug 2019 13:31:57 +0200 Subject: [PATCH 173/456] Fix unit tests --- test/unit/editor/jwt.js | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/test/unit/editor/jwt.js b/test/unit/editor/jwt.js index bda6e62e..5af6542e 100644 --- a/test/unit/editor/jwt.js +++ b/test/unit/editor/jwt.js @@ -41,9 +41,8 @@ describe('JWT', function() { it('considers Base64 (not URL) encoded tokens invalid', function() { const token = b64u.toBase64(tokens.hs256.token); - jwt.isToken(token).should.be.false; - return jwt.verify(token, tokens.hs256.secret).should.eventually.include({validBase64: false}); + return jwt.verify(token, tokens.hs256.secret).should.eventually.include({validSignature: false}); }); describe('verifies valid tokens', function() { @@ -94,10 +93,10 @@ describe('JWT', function() { promises.push(jwt.verify(token3 + '.', 'whatever')); promises.push(jwt.verify(token3 + '.' + split[2], 'whatever')); - return Promise.all(promises.map(p => p.then(v => !v, e => true))) + return Promise.all(promises.map(p => p.then(v => !v.validSignature, e => true))) .then(all => all.every(v => v)) .finally(() => log.enableAll()) - .should.eventually.include({validSignature: true}); + .should.eventually.be.true; }); it('signs/verifies tokens (HS256)', function() { @@ -227,7 +226,7 @@ describe('JWT', function() { it('fails on invalid Base64 and Base64 URL strings', function() { data.forEach(d => { if(d.b64.match(/[\+\/=]/)) { - jwt.isValidBase64String(d.b64, true).should.be.false; + jwt.isValidBase64String(d.b64).should.be.false; } }); }); From 6a5579853d2884ed0f416fbc8feb1e2b3fa6a279 Mon Sep 17 00:00:00 2001 From: Sambego Date: Fri, 23 Aug 2019 14:01:54 +0200 Subject: [PATCH 174/456] Show library edDSA support when known --- README.md | 3 +- .../libraries/support/get-libs-data.js | 29 ++++++++++--------- .../libraries/support/language-schema.js | 4 +++ views/website/libraries/template.pug | 2 +- 4 files changed, 22 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 86b5919f..8a07450e 100644 --- a/README.md +++ b/README.md @@ -60,7 +60,8 @@ Here's a commented example of the .NET language file (`0-.NET.json`). All fields "es512": true, "ps256": true, "ps384": true, - "ps512": true + "ps512": true, + "eddsa": true }, // Author URL, can be GitHub profile, personal page diff --git a/views/website/libraries/support/get-libs-data.js b/views/website/libraries/support/get-libs-data.js index ad848ed9..bfbcc0e9 100644 --- a/views/website/libraries/support/get-libs-data.js +++ b/views/website/libraries/support/get-libs-data.js @@ -4,9 +4,9 @@ function getLibs() { const result = {}; Array.prototype.forEach.call(libraries, lib => { - try { + try { const uniqueClass = lib.classList.item(1); - + let image = lib.querySelector('img').src; image = image.substr(image.indexOf('/img')); @@ -22,7 +22,7 @@ function getLibs() { libs: [] }; } - + const r = {}; const minimumVersionElement = lib.querySelector('.version p'); @@ -31,14 +31,14 @@ function getLibs() { if(r.minimumVersion) { r.minimumVersion = r.minimumVersion.substr('Minimum Version '.length); } - + r.support = {}; const panelBodyChildren = lib.querySelector('.panel-body').children; - let orderedKeys = ['sign', 'verify', 'iss', + let orderedKeys = ['sign', 'verify', 'iss', 'sub', 'aud', 'exp', 'nbf', 'iat', 'jti']; - + for(let i = 0; i < orderedKeys.length; ++i) { r.support[orderedKeys[i]] = panelBodyChildren[0].children[i] @@ -47,10 +47,11 @@ function getLibs() { .contains('icon-budicon-500'); } - orderedKeys = ['hs256', 'hs384', 'hs512', + orderedKeys = ['hs256', 'hs384', 'hs512', 'rs256', 'rs384', 'rs512', - 'es256', 'es384', 'es512']; - + 'es256', 'es384', 'es512' + 'ps256', 'ps384', 'ps512', 'eddsa']; + for(let i = 0; i < orderedKeys.length; ++i) { r.support[orderedKeys[i]] = panelBodyChildren[1].children[i] @@ -61,21 +62,21 @@ function getLibs() { const maintainerA = lib.querySelector('.maintainer a'); if(maintainerA) { - r.authorUrl = lib.querySelector('.maintainer a').href; + r.authorUrl = lib.querySelector('.maintainer a').href; r.authorName = lib.querySelector('.maintainer a').textContent; } else { r.authorUrl = null; r.authorName = lib.querySelector('.maintainer').childNodes[1].textContent; } - + const spanStarsElement = lib.querySelector('.maintainer span'); - r.gitHubRepoPath = spanStarsElement ? + r.gitHubRepoPath = spanStarsElement ? lib.querySelector('.maintainer span').getAttribute('data-repo') : null; - + r.repoUrl = lib.querySelector('.repository a').href; r.installCommandHtml = lib.querySelector('.panel-footer code').innerHTML; - + result[langName].libs.push(r); } catch(e) { console.log(e); diff --git a/views/website/libraries/support/language-schema.js b/views/website/libraries/support/language-schema.js index 889ae949..52d579ec 100644 --- a/views/website/libraries/support/language-schema.js +++ b/views/website/libraries/support/language-schema.js @@ -82,6 +82,10 @@ module.exports = { es256: { type: 'boolean' }, es384: { type: 'boolean' }, es512: { type: 'boolean' }, + ps256: { type: 'boolean' }, + ps384: { type: 'boolean' }, + ps512: { type: 'boolean' }, + eddsa: { type: 'boolean' }, } } } diff --git a/views/website/libraries/template.pug b/views/website/libraries/template.pug index e0e429d3..568b9aa8 100644 --- a/views/website/libraries/template.pug +++ b/views/website/libraries/template.pug @@ -82,7 +82,7 @@ article(data-accordion, class=`accordion ${lang.uniqueClass}`) i(class=lib.support.ps512 ? 'icon-budicon-500' : (lib.support.ps512 !== undefined ? 'icon-budicon-501' : 'icon-unknown')) | PS512 p - i(class=lib.support.edDSA ? 'icon-budicon-500' : (lib.support.edDSA !== undefined ? 'icon-budicon-501' : 'icon-unknown')) + i(class=lib.support.edDSA ? 'icon-budicon-500' : (lib.support.eddsa !== undefined ? 'icon-budicon-501' : 'icon-unknown')) | EdDSA .author-info From 97df68b649071d73d78be4f9a1b628c3f4a9b450 Mon Sep 17 00:00:00 2001 From: Sambego Date: Fri, 23 Aug 2019 14:06:57 +0200 Subject: [PATCH 175/456] Fix unkown icon margin --- stylus/website/index.styl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 3eb2ff15..765be031 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -1180,7 +1180,7 @@ footer display: inline-block; width: 19px; height: 19px; - margin-top: -2px; + margin: 2px 0 7px; border: 1px solid #000; border-radius: 50%; text-align: center; From 2502848167264e9c986791bd212a9010a80d9049 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Fri, 23 Aug 2019 14:23:02 +0200 Subject: [PATCH 176/456] update @panva/jose with EdDSA support --- views/website/libraries/2-Node.js.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/2-Node.js.json b/views/website/libraries/2-Node.js.json index 3ee29448..88c8bc34 100644 --- a/views/website/libraries/2-Node.js.json +++ b/views/website/libraries/2-Node.js.json @@ -58,7 +58,8 @@ "es512": true, "ps256": true, "ps384": true, - "ps512": true + "ps512": true, + "eddsa": true }, "authorUrl": "https://github.com/panva", "authorName": "Filip Skokan", From ce4b4edf3f6f0cfd672ddbc8ed3a092f024fe4d4 Mon Sep 17 00:00:00 2001 From: Sambego Date: Fri, 23 Aug 2019 14:25:10 +0200 Subject: [PATCH 177/456] Fix eddsa support indicator --- views/website/libraries/template.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/template.pug b/views/website/libraries/template.pug index 568b9aa8..1fc80912 100644 --- a/views/website/libraries/template.pug +++ b/views/website/libraries/template.pug @@ -82,7 +82,7 @@ article(data-accordion, class=`accordion ${lang.uniqueClass}`) i(class=lib.support.ps512 ? 'icon-budicon-500' : (lib.support.ps512 !== undefined ? 'icon-budicon-501' : 'icon-unknown')) | PS512 p - i(class=lib.support.edDSA ? 'icon-budicon-500' : (lib.support.eddsa !== undefined ? 'icon-budicon-501' : 'icon-unknown')) + i(class=lib.support.eddsa ? 'icon-budicon-500' : (lib.support.eddsa !== undefined ? 'icon-budicon-501' : 'icon-unknown')) | EdDSA .author-info From 9bb0b719a95e38567f7aa04bea42335aca9270b3 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Fri, 23 Aug 2019 14:25:10 +0200 Subject: [PATCH 178/456] update node-jsonwebtoken with EdDSA support --- views/website/libraries/2-Node.js.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/2-Node.js.json b/views/website/libraries/2-Node.js.json index 3ee29448..f3b23463 100644 --- a/views/website/libraries/2-Node.js.json +++ b/views/website/libraries/2-Node.js.json @@ -27,7 +27,8 @@ "es512": true, "ps256": true, "ps384": true, - "ps512": true + "ps512": true, + "eddsa": false }, "authorUrl": "https://github.com/auth0", "authorName": "Auth0", From e69482707661330c53225996d53d9a9356186c2f Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Fri, 23 Aug 2019 14:25:44 +0200 Subject: [PATCH 179/456] update node-jose with EdDSA support --- views/website/libraries/4-JavaScript.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/4-JavaScript.json b/views/website/libraries/4-JavaScript.json index de69a760..f2abb58a 100644 --- a/views/website/libraries/4-JavaScript.json +++ b/views/website/libraries/4-JavaScript.json @@ -86,7 +86,8 @@ "es512": true, "ps256": true, "ps384": true, - "ps512": true + "ps512": true, + "eddsa": false }, "authorUrl": "https://github.com/cisco", "authorName": "Cisco Systems", From 90f22771c07fa25efff20866ae890bc8cb789a27 Mon Sep 17 00:00:00 2001 From: Simo Sorce Date: Fri, 23 Aug 2019 13:10:13 -0400 Subject: [PATCH 180/456] Fix EdDSA indicator for jwcrypto --- views/website/libraries/1-Python.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/1-Python.json b/views/website/libraries/1-Python.json index 8eb06543..f0de596c 100644 --- a/views/website/libraries/1-Python.json +++ b/views/website/libraries/1-Python.json @@ -90,7 +90,7 @@ "ps256": true, "ps384": true, "ps512": true, - "edDSA": true + "eddsa": true }, "authorUrl": "https://github.com/simo5", "authorName": "Simo Sorce", From b7eb22c5348f81337cb5020ad9bfe2a4f96cb189 Mon Sep 17 00:00:00 2001 From: Florent Morselli Date: Fri, 23 Aug 2019 19:35:45 +0200 Subject: [PATCH 181/456] EdDSA support for web-token/jwt-framework --- views/website/libraries/24-PHP.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/24-PHP.json b/views/website/libraries/24-PHP.json index ef36d46a..c6a4508a 100644 --- a/views/website/libraries/24-PHP.json +++ b/views/website/libraries/24-PHP.json @@ -182,7 +182,8 @@ "es512": true, "ps256": true, "ps384": true, - "ps512": true + "ps512": true, + "eddsa": true, }, "authorUrl": "https://github.com/Spomky", "authorName": "Spomky", From 9fd88c5cb7262b5b85ea04c51670e880b2b2fc0a Mon Sep 17 00:00:00 2001 From: Florent Morselli Date: Fri, 23 Aug 2019 19:48:38 +0200 Subject: [PATCH 182/456] Typo --- views/website/libraries/24-PHP.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/24-PHP.json b/views/website/libraries/24-PHP.json index c6a4508a..bd4e4766 100644 --- a/views/website/libraries/24-PHP.json +++ b/views/website/libraries/24-PHP.json @@ -183,7 +183,7 @@ "ps256": true, "ps384": true, "ps512": true, - "eddsa": true, + "eddsa": true }, "authorUrl": "https://github.com/Spomky", "authorName": "Spomky", From 91585e2609641b261e3d6558c2d3329336b0f65c Mon Sep 17 00:00:00 2001 From: Sambego Date: Tue, 27 Aug 2019 11:21:50 +0200 Subject: [PATCH 183/456] Debounce all tracking events --- src/editor/index.js | 7 +++---- src/metrics.js | 6 ++++-- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/editor/index.js b/src/editor/index.js index 3d432758..2c2854af 100644 --- a/src/editor/index.js +++ b/src/editor/index.js @@ -41,7 +41,6 @@ import { } from "../dom-elements.js"; import log from "loglevel"; -import _ from "lodash"; // The event manager lets us enable/disable events as needed without // manually tracking them. Events that need to be disabled should be @@ -439,18 +438,18 @@ function setupEvents() { eventManager.addCodeMirrorEvent( tokenEditor, "change", - _.throttle(decodeToken, 1000) + decodeToken ); // When parts of the decoded token are changed, it must be reencoded. eventManager.addCodeMirrorEvent( headerEditor, "change", - _.throttle(encodeToken, 1000) + encodeToken ); eventManager.addCodeMirrorEvent( payloadEditor, "change", - _.throttle(encodeToken, 1000) + encodeToken ); // HMAC secret, show tooltip if secret is too short. diff --git a/src/metrics.js b/src/metrics.js index a7b931b5..c5a38ee8 100644 --- a/src/metrics.js +++ b/src/metrics.js @@ -1,4 +1,6 @@ import log from "loglevel"; +import _ from "lodash"; + export function init() { // Create a queue, but don't obliterate an existing one! @@ -119,7 +121,7 @@ export function init() { analytics.page(); } -export function track(event, data) { +export const track = _.debounce((event, data) => { if (window.metrics) { try { window.metrics.track(event, data); @@ -127,4 +129,4 @@ export function track(event, data) { log.error(`Metrics library error for event ${event}: ${e}`); } } -} +}, 2000); From 6df9a0a1018f404047f0ed27b262c34735079a93 Mon Sep 17 00:00:00 2001 From: Sambego Date: Tue, 27 Aug 2019 11:31:14 +0200 Subject: [PATCH 184/456] Only import debounce function from lodash instead of the whole lib --- package-lock.json | 46 ++++++++++++++++------------------------------ package.json | 2 ++ src/metrics.js | 6 +++--- 3 files changed, 21 insertions(+), 33 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4a9ed317..3ac6d0e1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2972,8 +2972,7 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "aproba": { "version": "1.2.0", @@ -2994,14 +2993,12 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, - "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -3016,20 +3013,17 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "core-util-is": { "version": "1.0.2", @@ -3146,8 +3140,7 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "ini": { "version": "1.3.5", @@ -3159,7 +3152,6 @@ "version": "1.0.0", "bundled": true, "dev": true, - "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -3174,7 +3166,6 @@ "version": "3.0.4", "bundled": true, "dev": true, - "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -3182,14 +3173,12 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "minipass": { "version": "2.3.5", "bundled": true, "dev": true, - "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -3208,7 +3197,6 @@ "version": "0.5.1", "bundled": true, "dev": true, - "optional": true, "requires": { "minimist": "0.0.8" } @@ -3289,8 +3277,7 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "object-assign": { "version": "4.1.1", @@ -3302,7 +3289,6 @@ "version": "1.4.0", "bundled": true, "dev": true, - "optional": true, "requires": { "wrappy": "1" } @@ -3388,8 +3374,7 @@ "safe-buffer": { "version": "5.1.2", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "safer-buffer": { "version": "2.1.2", @@ -3425,7 +3410,6 @@ "version": "1.0.2", "bundled": true, "dev": true, - "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -3445,7 +3429,6 @@ "version": "3.0.1", "bundled": true, "dev": true, - "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -3489,14 +3472,12 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "yallist": { "version": "3.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true } } }, @@ -8302,6 +8283,11 @@ "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", "dev": true }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=" + }, "lodash.flatten": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", diff --git a/package.json b/package.json index 9d87f8e2..67adbfca 100644 --- a/package.json +++ b/package.json @@ -8,6 +8,7 @@ "dependencies": { "express": "^4.17.1", "express-sslify": "^1.2.0", + "lodash.debounce": "^4.0.8", "querystring": "^0.2.0" }, "devEngines": { @@ -70,6 +71,7 @@ "scripts": { "start": "node server.js", "test": "grunt test", + "test:unit": "grunt unit-tests", "build": "grunt build-website" }, "heroku-run-build-script": true diff --git a/src/metrics.js b/src/metrics.js index c5a38ee8..e1f68cf1 100644 --- a/src/metrics.js +++ b/src/metrics.js @@ -1,5 +1,5 @@ import log from "loglevel"; -import _ from "lodash"; +import debounce from 'lodash.debounce'; export function init() { @@ -121,7 +121,7 @@ export function init() { analytics.page(); } -export const track = _.debounce((event, data) => { +export const track = debounce((event, data) => { if (window.metrics) { try { window.metrics.track(event, data); @@ -129,4 +129,4 @@ export const track = _.debounce((event, data) => { log.error(`Metrics library error for event ${event}: ${e}`); } } -}, 2000); +}, 1000); From 868a1811bd0e6d88bb0dcd7a15dbc0d70815ee2c Mon Sep 17 00:00:00 2001 From: "Pascal S. de Kloe" Date: Wed, 28 Aug 2019 02:43:49 +0200 Subject: [PATCH 185/456] EdDSA support on github.com/pascaldekloe/jwt. --- views/website/libraries/9-Go.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index cc1b1ce8..17ebd87c 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -303,7 +303,8 @@ "es512": true, "ps256": true, "ps384": true, - "ps512": true + "ps512": true, + "eddsa": true }, "authorUrl": "https://github.com/pascaldekloe", "authorName": "Pascal de Kloe", From 81575839b011289d98c5a1698606954f51fdc687 Mon Sep 17 00:00:00 2001 From: Sam Bellen Date: Thu, 29 Aug 2019 19:23:59 +0200 Subject: [PATCH 186/456] FIx broken ask link in the navigation --- views/website/index.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/index.pug b/views/website/index.pug index bec27d75..7ea1e2d3 100644 --- a/views/website/index.pug +++ b/views/website/index.pug @@ -15,7 +15,7 @@ block content a(href='#debugger-io').scrollto Debugger a(href='#libraries-io').scrollto Libraries a(href='http://github.com/introduction') Introduction - a(href='https://auth0.com/forum/c/jwt', target='_blank') Ask + a(href='https://community.auth0.com/c/identity/jwt', target='_blank') Ask a(href='http://swag.auth0.com/', target='_blank') Get a T-shirt! .social From 577189cf3c8a61d6446c6034809e984576967ad7 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Tue, 1 Oct 2019 17:21:51 +0200 Subject: [PATCH 187/456] Update 2-Node.js.json --- views/website/libraries/2-Node.js.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/2-Node.js.json b/views/website/libraries/2-Node.js.json index a3078bbe..757a2f47 100644 --- a/views/website/libraries/2-Node.js.json +++ b/views/website/libraries/2-Node.js.json @@ -66,7 +66,7 @@ "authorName": "Filip Skokan", "gitHubRepoPath": "panva/jose", "repoUrl": "https://github.com/panva/jose", - "installCommandHtml": "npm install @panva/jose" + "installCommandHtml": "npm install jose" } ] } From b362ab19a9f37e337b5f8ea38987aa680aa6e0a9 Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 7 Oct 2019 16:29:56 +0200 Subject: [PATCH 188/456] Remove metrics --- src/editor/index.js | 59 ------------- src/editor/utils.js | 2 - src/metrics.js | 132 ------------------------------ src/share-button.js | 3 - src/website/index.js | 22 ----- src/website/introduction/index.js | 6 -- src/website/libraries.js | 31 ------- 7 files changed, 255 deletions(-) delete mode 100644 src/metrics.js diff --git a/src/editor/index.js b/src/editor/index.js index 2c2854af..fda4c6d7 100644 --- a/src/editor/index.js +++ b/src/editor/index.js @@ -18,7 +18,6 @@ import { minSecretLengthCheck, setupSecretLengthTooltip } from "./secret-length-tooltip.js"; -import * as metrics from "../metrics.js"; import { algorithmSelect, signatureStatusElement, @@ -47,23 +46,6 @@ import log from "loglevel"; // passed to the event manager. const eventManager = new EventManager(); -function trackToken(jwt, operation, extra) { - const tokenInfo = getSafeTokenInfo(jwt); - - metrics.track( - "editor-jwt-tracked", - Object.assign( - { - operation: operation, - tokenInfo: tokenInfo - }, - extra - ) - ); - - return tokenInfo.hash; -} - function isSharedSecretAlgorithm(algorithm) { return algorithm && algorithm.indexOf("HS") === 0; } @@ -198,8 +180,6 @@ function setAlgorithmInHeader(algorithm) { function algorithmChangeHandler() { const algorithm = getSelectedAlgorithm(); - metrics.track("editor-algorithm-selected", { algorithm: algorithm }); - displaySecretOrKeys(algorithm); if (isDefaultToken(getTrimmedValue(tokenEditor))) { @@ -277,9 +257,6 @@ function encodeToken() { .then(encoded => { eventManager.withDisabledEvents(() => { tokenEditor.setValue(encoded); - trackToken(encoded, "encode", { - secretBase64Checkbox: secretBase64Checkbox.checked - }); }); }) .catch(e => { @@ -288,7 +265,6 @@ function encodeToken() { markAsInvalid(); tokenEditor.setValue(""); }); - metrics.track("editor-encoding-error"); }) .finally(() => { verifyToken(); @@ -304,15 +280,9 @@ function decodeToken() { const jwt = getTrimmedValue(tokenEditor); const decoded = decode(jwt); - const tokenHash = trackToken(jwt, "decode"); - selectAlgorithm(decoded.header.alg); if (isPublicKeyAlgorithm(decoded.header.alg)) { downloadPublicKeyIfPossible(decoded).then(publicKey => { - metrics.track("editor-jwt-public-key-downloaded", { - tokenHash: tokenHash - }); - eventManager.withDisabledEvents(() => { publicKeyTextArea.value = publicKey; verifyToken(); @@ -325,10 +295,6 @@ function decodeToken() { if (decoded.errors) { markAsInvalidWithElement(editorElement, false); - metrics.track("editor-jwt-invalid", { - reason: `partial decode`, - tokenHash: tokenHash - }); } else { if (decoded.warnings && decoded.warnings.length > 0) { showEditorWarnings(decoded.warnings); @@ -341,11 +307,6 @@ function decodeToken() { } } catch (e) { log.warn("Failed to decode token: ", e); - - metrics.track("editor-jwt-invalid", { - reason: `failed to decode token`, - tokenHash: trackToken(jwt) - }); } }); } @@ -354,14 +315,8 @@ function verifyToken() { const jwt = getTrimmedValue(tokenEditor); const decoded = decode(jwt); - const tokenHash = trackToken(jwt, "verify"); - if (!decoded.header.alg || decoded.header.alg === "none") { markAsInvalid(); - metrics.track("editor-jwt-invalid", { - reason: `header.alg value is ${decoded.header.alg}`, - tokenHash: tokenHash - }); return; } @@ -373,25 +328,11 @@ function verifyToken() { if (result.validSignature) { if (!result.validBase64) { markJWTAsInvalid(); - metrics.track("editor-jwt-invalid", { - reason: "invalid base64", - tokenHash: tokenHash, - secretBase64Checkbox: secretBase64Checkbox.checked - }); } else { markAsValid(); - metrics.track("editor-jwt-verified", { - tokenHash: tokenHash, - secretBase64Checkbox: secretBase64Checkbox.checked - }); } } else { markAsInvalid(); - metrics.track("editor-jwt-invalid", { - reason: "invalid signature", - tokenHash: tokenHash, - secretBase64Checkbox: secretBase64Checkbox.checked - }); } }); } diff --git a/src/editor/utils.js b/src/editor/utils.js index fbaaaf3f..e944ac14 100644 --- a/src/editor/utils.js +++ b/src/editor/utils.js @@ -1,5 +1,4 @@ import { isWideScreen } from '../utils.js'; -import * as metrics from '../metrics.js'; import * as jwt from './jwt.js'; import registeredClaims from './jwt-iana-registered-claims.js'; import forge from 'node-forge'; @@ -46,7 +45,6 @@ export function disableUnsupportedAlgorithms() { // TODO: test supported algorithms in runtime if(isSafari()) { algorithmEs512.disabled = true; - metrics.track('editor-disabled-es512-safari'); } } diff --git a/src/metrics.js b/src/metrics.js deleted file mode 100644 index e1f68cf1..00000000 --- a/src/metrics.js +++ /dev/null @@ -1,132 +0,0 @@ -import log from "loglevel"; -import debounce from 'lodash.debounce'; - - -export function init() { - // Create a queue, but don't obliterate an existing one! - var analytics = (window.metrics = window.metrics || []); - - // If the real analytics.js is already on the page return. - if (analytics.initialize) return; - - // If the snippet was invoked already show an error. - if (analytics.invoked) { - if (window.console && console.error) { - console.error("Segment snippet included twice."); - } - return; - } - - // Invoked flag, to make sure the snippet - // is never invoked twice. - analytics.invoked = true; - - // A list of the methods in Auth0-metrics to stub. - analytics.methods = [ - "trackSubmit", - "trackClick", - "trackLink", - "trackForm", - "pageview", - "identify", - "reset", - "group", - "track", - "ready", - "alias", - "debug", - "page", - "once", - "off", - "on" - ]; - - // Define a factory to create stubs. These are placeholders - // for methods in Auth0-metrics so that you never have to wait - // for it to load to actually record data. The `method` is - // stored as the first argument, so we can replay the data. - analytics.factory = function(method) { - return function() { - var args = Array.prototype.slice.call(arguments); - args.unshift(method); - analytics.push(args); - return analytics; - }; - }; - - // For each of our methods, generate a queueing stub. - for (var i = 0; i < analytics.methods.length; i++) { - var key = analytics.methods[i]; - analytics[key] = analytics.factory(key); - } - - // Define a method to load Auth0-metrics from our CDN, - // and that will be sure to only ever load it once. - analytics.load = function() { - // Create an async script element based on your key. - var script = document.createElement("script"); - script.type = "text/javascript"; - script.async = true; - script.src = - "https://cdn.auth0.com/website/js/m/1.6.2/auth0-metrics.min.js"; - - script.onerror = function() { - console.error("No metrics"); - }; - - script.onload = function() { - // Grab analytics and make it private - window.metrics = new Auth0Metrics( - "", - "https://dwh-tracking.it.auth0.com/external-metrics", - "jwt.io", - { - removeQueryParam: [ - { - key: "value", - value: "[a-z0-9._~-]+" - }, - { - key: "id_token", - value: "[a-z0-9._~-]+" - }, - { - key: "access_token", - value: "[a-z0-9._~-]+" - }, - { - key: "token", - value: "[a-z0-9._~-]+" - } - ] - } - ); - }; - - // Insert our script next to the first script element. - var first = document.getElementsByTagName("script")[0]; - first.parentNode.insertBefore(script, first); - }; - - // Add a version to keep track of what's in the wild. - analytics.SNIPPET_VERSION = "4.1.0"; - - // Load Auth0-metrics with your key, which will automatically - // load the tools you've enabled for your account. Boosh! - analytics.load(); - - // Make the first page call to load the integrations. If - // you'd like to manually name or tag the page, edit or - // move this call however you'd like. - analytics.page(); -} - -export const track = debounce((event, data) => { - if (window.metrics) { - try { - window.metrics.track(event, data); - } catch (e) { - log.error(`Metrics library error for event ${event}: ${e}`); - } - } -}, 1000); diff --git a/src/share-button.js b/src/share-button.js index 1f65f312..bd1b5328 100644 --- a/src/share-button.js +++ b/src/share-button.js @@ -1,6 +1,5 @@ import { copyTokenLink } from './utils.js'; import { getTokenEditorValue } from './editor'; -import * as metrics from './metrics.js'; import strings from './strings.js'; @@ -8,8 +7,6 @@ export function setupShareJwtButton(shareJwtElement, shareJwtTextElement) { shareJwtElement.addEventListener('click', event => { event.preventDefault(); - metrics.track('editor-share-button-clicked'); - const value = getTokenEditorValue(); if(value.token) { // If the selected algorithm does not use public keys, publicKey will be diff --git a/src/website/index.js b/src/website/index.js index 66ae0505..439dd0b3 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -1,4 +1,3 @@ -import * as metrics from "../metrics.js"; import { setupNavbar } from "./navbar.js"; import { setupExtensionButton } from "./extension.js"; import { setupLibraries } from "./libraries.js"; @@ -37,10 +36,7 @@ function parseLocationQuery() { const token = locSearch[key] || locHash[key]; if (token) { - metrics.track("token-in-url", { type: key }); - if (locSearch.publicKey || locHash.publicKey) { - metrics.track("pubkey-in-url"); publicKeyTextArea.value = locSearch.publicKey || locHash.publicKey; } @@ -55,31 +51,13 @@ function parseLocationQuery() { function pickEbookOrExtensionBanner() { if ((isChrome() || isFirefox()) && Math.random() >= 0.5) { - metrics.track("extension-banner-shown"); extensionSection.style.display = "block"; } else { - metrics.track("ebook-banner-shown"); ebookSection.style.display = "block"; } } -function setupMetrics() { - metrics.init(); - - // Section visible metrics - window.addEventListener("scroll", e => { - if (isPartiallyInViewport(librariesElement)) { - once("libraries-visible", () => metrics.track("libraries-visible-once")); - } - - if (isPartiallyInViewport(debuggerSection)) { - once("editor-visible", () => metrics.track("editor-visible-once")); - } - }); -} - // Initialization -setupMetrics(); setupNavbar(); setupExtensionButton(); setupSmoothScrolling(); diff --git a/src/website/introduction/index.js b/src/website/introduction/index.js index c41bde5e..2645aba5 100644 --- a/src/website/introduction/index.js +++ b/src/website/introduction/index.js @@ -1,12 +1,6 @@ import { setupHighlighting } from "../highlighting.js"; import { setupJwtCounter } from "../counter.js"; -import * as metrics from "../../metrics.js"; - -function setupMetrics() { - metrics.init(); -} // Initialization -setupMetrics(); setupHighlighting(); setupJwtCounter(); diff --git a/src/website/libraries.js b/src/website/libraries.js index 78865482..eeb9e3b8 100644 --- a/src/website/libraries.js +++ b/src/website/libraries.js @@ -1,6 +1,5 @@ import { safeLocalStorageSetItem } from '../utils.js'; import { httpGet } from '../utils.js'; -import * as metrics from '../metrics.js'; import { starsElements, librariesElement, @@ -78,40 +77,10 @@ function getStarsForGitHubRepos() { }); } -function setupMetrics() { - const tracked = [{ - selector: '.version p a', - event: 'libraries-jwt-vulns-link-clicked' - }, { - selector: '.maintainer a', - event: 'libraries-maintainer-link-clicked' - }, { - selector: '.repository a', - event: 'libraries-repository-link-clicked' - }]; - - tracked.forEach(t => { - const els = document.querySelectorAll(t.selector); - Array.prototype.forEach.call(els, el => { - el.addEventListener('click', () => { - metrics.track(t.event, { - id: el.dataset.metricsLibId - }); - }); - }); - }); -} - export function setupLibraries() { getStarsForGitHubRepos(); - setupMetrics(); - librariesSelect.addEventListener('change', event => { - metrics.track('libraries-filter-selected', { - selected: event.target.value - }); - librariesGrid.arrange({ filter: event.target.value }); From 8192704891887be1d69b62d2ce08186d2458bb51 Mon Sep 17 00:00:00 2001 From: Artur Troian Date: Thu, 17 Oct 2019 11:36:04 +0300 Subject: [PATCH 189/456] feat: add PSS support for github.com/troian/josepp Signed-off-by: Artur Troian --- views/website/libraries/21-C++.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/views/website/libraries/21-C++.json b/views/website/libraries/21-C++.json index 8550a81c..45660c59 100644 --- a/views/website/libraries/21-C++.json +++ b/views/website/libraries/21-C++.json @@ -25,9 +25,9 @@ "es256": true, "es384": true, "es512": true, - "ps256": false, - "ps384": false, - "ps512": false + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/troian", "authorName": "Artur Troian", From 5ceac1a1fca3127e37eaa8f6596e04cd2a087175 Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 17 Oct 2019 13:50:14 +0200 Subject: [PATCH 190/456] Add ebook banner variation --- .gitignore | 4 ++- Gruntfile.js | 33 ++++++++++---------- img/website/ebook.png | Bin 0 -> 107722 bytes stylus/website/index.styl | 33 ++++++++++++++++++++ views/website/ebook-image.pug | 6 ++++ views/website/ebook.pug | 2 +- views/website/home.pug | 55 ++++++++++++++++++++++++++++++++++ 7 files changed, 115 insertions(+), 18 deletions(-) create mode 100644 img/website/ebook.png create mode 100644 views/website/ebook-image.pug create mode 100644 views/website/home.pug diff --git a/.gitignore b/.gitignore index 9871fe48..fee5fda1 100644 --- a/.gitignore +++ b/.gitignore @@ -3,4 +3,6 @@ dist .tmp .DS_Store npm-debug.log - +.dockerignore +Dockerfile +yarn.lock diff --git a/Gruntfile.js b/Gruntfile.js index 401478fe..87c68214 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -72,25 +72,25 @@ module.exports = grunt => { dest: 'dist/extension/css/' }] } - }, + }, crx: { pack: { src: "dist/extension/**/*", - dest: 'dist/chrome-jwt-debugger-extension-v' + + dest: 'dist/chrome-jwt-debugger-extension-v' + `${extensionManifest.version}.zip` } }, exec: { firefoxExtensionPack: { - command: 'node_modules/web-ext/bin/web-ext build ' + - '--source-dir=dist/extension --artifacts-dir=dist ' + + command: 'node_modules/web-ext/bin/web-ext build ' + + '--source-dir=dist/extension --artifacts-dir=dist ' + '--overwrite-dest' }, renameFirefoxExtension: { - command: `mv dist/jwt_debugger-${extensionManifest.version}.zip ` + - 'dist/firefox-jwt-debugger-extension-' + + command: `mv dist/jwt_debugger-${extensionManifest.version}.zip ` + + 'dist/firefox-jwt-debugger-extension-' + `v${extensionManifest.version}.zip` } }, @@ -118,13 +118,14 @@ module.exports = grunt => { }, files: { 'dist/website/index.html': 'views/website/index.pug', - 'dist/website/introduction/index.html': + 'dist/website/home/index.html': 'views/website/home.pug', + 'dist/website/introduction/index.html': 'views/website/introduction.pug' } }, extension: { files: { - 'dist/extension/index.html': 'views/extension/index.pug' + 'dist/extension/index.html': 'views/extension/index.pug' } } }, @@ -201,7 +202,7 @@ module.exports = grunt => { // Higher default timeout to account for some animations timeout: 10000 }, - src: ['test/functional/**.js'] + src: ['test/functional/**.js'] } }, @@ -248,30 +249,30 @@ module.exports = grunt => { 'exec:firefoxExtensionPack', 'exec:renameFirefoxExtension' ]); - + grunt.registerTask('build-extension-dev', [ 'clean:extension', - 'copy:extension', + 'copy:extension', 'build-extension-views', 'webpack:extensionDev' ]); - + grunt.registerTask('build', ['build-website', 'build-extension']); - + grunt.registerTask('build-dev', [ 'build-website-dev', 'build-extension-dev' ]); grunt.registerTask('unit-tests', ['webpack:unitTests', 'mochaTest:unit']); - + grunt.registerTask('functional-tests', [ 'build-website-dev', - 'connect:website', + 'connect:website', 'mochaTest:functional' ]); grunt.registerTask('test', ['unit-tests', 'functional-tests']); - + grunt.registerTask('default', ['build-dev', 'connect:website', 'watch']); }; diff --git a/img/website/ebook.png b/img/website/ebook.png new file mode 100644 index 0000000000000000000000000000000000000000..e176e43f6f84bad64ec29534c6fb3e06eba4e8df GIT binary patch literal 107722 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%0A_Osr{i;&@zSbWht~O@SwE)nQy5$Lc6Zn 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 z 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 literal 0 HcmV?d00001 diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 765be031..d2a1e4b6 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -423,6 +423,39 @@ body text-align: center; text-decoration: none; +.jwt-ebook-banner-image + position: relative; + padding: 45px 0 235px; + background: #E3E5E7 url('http://github.com/img/ebook.png') 100% 100% no-repeat; + + p + margin-top: 0; + + .btn-download-ebook + display: block; + + &::after + content: ''; + position: absolute + bottom: 202px; + left: 0; + right: 0; + width: 100%; + height: 35px; + background: linear-gradient(rgba(227, 229, 231,1), rgba(227, 229, 231,0)); + + + @media (min-width: 768px) + height: 235px; + padding: 65px 0; + text-align: left; + + .btn-download-ebook + display: inline-block; + + &::after + display: none; + // debugger-jwt .jwt-select diff --git a/views/website/ebook-image.pug b/views/website/ebook-image.pug new file mode 100644 index 00000000..c66c1d75 --- /dev/null +++ b/views/website/ebook-image.pug @@ -0,0 +1,6 @@ +section.jtw-ebook-banner.jwt-ebook-banner-image + .container + p + strong Get the JWT Handbook for free! + |  Download it now and get up-to-speed faster. + a.btn.btn-download-ebook(href='https://auth0.com/resources/ebooks/jwt-handbook?utm_source=jwtio&utm_medium=variation&utm_campaign=gc_jwt_test_10_2019', target='_blank') Download Ebook diff --git a/views/website/ebook.pug b/views/website/ebook.pug index 20950f54..ebddf537 100644 --- a/views/website/ebook.pug +++ b/views/website/ebook.pug @@ -2,4 +2,4 @@ section.jtw-ebook-banner span strong Get the JWT Handbook for free! |  Spread the word and download it now. - a.btn.btn-download-ebook(href='https://auth0.com/resources/ebooks/jwt-handbook?utm_source=jwtio&utm_medium=sc&utm_campaign=rotating_banner', target='_blank') Download Ebook + a.btn.btn-download-ebook(href='https://auth0.com/resources/ebooks/jwt-handbook?utm_source=jwtio&utm_medium=control&utm_campaign=gc_jwt_test_10_2019', target='_blank') Download Ebook diff --git a/views/website/home.pug b/views/website/home.pug new file mode 100644 index 00000000..ce096b7b --- /dev/null +++ b/views/website/home.pug @@ -0,0 +1,55 @@ +extends layout + +block content + nav.navbar.closed + .container + .top-mobile + .menu-trigger + span + + a.brand(href='http://github.com/') + img(src='http://github.com/img/pic_logo.svg').icon + img(src='http://github.com/img/logo.svg').logo + + nav.menu + a(href='#debugger-io').scrollto Debugger + a(href='#libraries-io').scrollto Libraries + a(href='http://github.com/introduction') Introduction + a(href='https://community.auth0.com/c/identity/jwt', target='_blank') Ask + a(href='http://swag.auth0.com/', target='_blank') Get a T-shirt! + + .social + a.a0(href='https://auth0.com/?utm_source=jwtio&utm_campaign=craftedby', target='_blank') + span.by-text Crafted by + img(src='http://github.com/img/pic_logo_ft.svg', alt='Token Based Authentication') + + a.supported(href='https://auth0.com/?utm_source=jwtio&utm_campaign=craftedby', target="_blank") + | Supported by + img(src='http://github.com/img/ico_logo.svg', alt='Token Based Authentication') + + section.banner-jwt + .container + a.logo(href='http://github.com/') + img(src='http://github.com/img/pic_logo.svg', alt='Token Based Authentication') + + p + | JSON Web Tokens are an open, industry standard  + a(href='https://tools.ietf.org/html/rfc7519', target='_blank') RFC 7519 + | method for representing claims securely between two parties. + p JWT.IO allows you to decode, verify and generate JWT. + + a.btn.btn-lg(href="http://github.com/introduction") Learn more about jwt + + include extension.pug + + include ebook-image.pug + + include token-editor.pug + + include libraries.pug + + include assets.pug + + include counter.pug + + script(src='http://github.com/js/index.js') From 341b4b02028004324f1bed50f5b96537eb986373 Mon Sep 17 00:00:00 2001 From: Sambego Date: Tue, 22 Oct 2019 12:32:25 +0200 Subject: [PATCH 191/456] Update jwt version B banner --- stylus/website/index.styl | 8 ++++++-- views/website/ebook-image.pug | 4 ++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/stylus/website/index.styl b/stylus/website/index.styl index d2a1e4b6..9e120e4f 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -425,7 +425,9 @@ body .jwt-ebook-banner-image position: relative; - padding: 45px 0 235px; + padding: 45px 45px 235px; + margin-left: -15px; + margin-right: -15px; background: #E3E5E7 url('http://github.com/img/ebook.png') 100% 100% no-repeat; p @@ -447,7 +449,9 @@ body @media (min-width: 768px) height: 235px; - padding: 65px 0; + margin-top: 70px + padding: 65px 235px 65px 65px; + box-shadow: 0 10px 20px 0 rgba(0,0,0,0.25) text-align: left; .btn-download-ebook diff --git a/views/website/ebook-image.pug b/views/website/ebook-image.pug index c66c1d75..213d6db3 100644 --- a/views/website/ebook-image.pug +++ b/views/website/ebook-image.pug @@ -1,5 +1,5 @@ -section.jtw-ebook-banner.jwt-ebook-banner-image - .container +section.container + .jtw-ebook-banner.jwt-ebook-banner-image p strong Get the JWT Handbook for free! |  Download it now and get up-to-speed faster. From 4ce333206f638cf679b04ed097f18643ca1e56f9 Mon Sep 17 00:00:00 2001 From: Sambego Date: Wed, 30 Oct 2019 08:19:34 +0100 Subject: [PATCH 192/456] Stop AB test --- Gruntfile.js | 1 - server.js | 7 ++++- views/website/ebook-image.pug | 6 ---- views/website/ebook.pug | 11 +++---- views/website/home.pug | 55 ----------------------------------- 5 files changed, 12 insertions(+), 68 deletions(-) delete mode 100644 views/website/ebook-image.pug delete mode 100644 views/website/home.pug diff --git a/Gruntfile.js b/Gruntfile.js index 87c68214..3c2de48a 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -118,7 +118,6 @@ module.exports = grunt => { }, files: { 'dist/website/index.html': 'views/website/index.pug', - 'dist/website/home/index.html': 'views/website/home.pug', 'dist/website/introduction/index.html': 'views/website/introduction.pug' } diff --git a/server.js b/server.js index a8406200..8bc4e4fa 100644 --- a/server.js +++ b/server.js @@ -4,7 +4,7 @@ const enforce = require('express-sslify'); const app = express(); if(process.env.NODE_ENV === 'production') { - console.log('Redirecting to TLS endpoint.'); + console.log('Redirecting to TLS endpoint.'); app.use(enforce.HTTPS({ // Required for proper use under a reverse proxy (Heroku, etc.). trustProtoHeader: true @@ -13,6 +13,11 @@ if(process.env.NODE_ENV === 'production') { app.use('/', express.static('dist/website')); +// Fallback for the homepage JWT handbook CTA A/B experiment we ran +app.get('/home', function (req, res) { + res.redirect('/'); +}); + app.listen(process.env.PORT || 3000, function() { console.log('Started.'); }); diff --git a/views/website/ebook-image.pug b/views/website/ebook-image.pug deleted file mode 100644 index 213d6db3..00000000 --- a/views/website/ebook-image.pug +++ /dev/null @@ -1,6 +0,0 @@ -section.container - .jtw-ebook-banner.jwt-ebook-banner-image - p - strong Get the JWT Handbook for free! - |  Download it now and get up-to-speed faster. - a.btn.btn-download-ebook(href='https://auth0.com/resources/ebooks/jwt-handbook?utm_source=jwtio&utm_medium=variation&utm_campaign=gc_jwt_test_10_2019', target='_blank') Download Ebook diff --git a/views/website/ebook.pug b/views/website/ebook.pug index ebddf537..213d6db3 100644 --- a/views/website/ebook.pug +++ b/views/website/ebook.pug @@ -1,5 +1,6 @@ -section.jtw-ebook-banner - span - strong Get the JWT Handbook for free! - |  Spread the word and download it now. - a.btn.btn-download-ebook(href='https://auth0.com/resources/ebooks/jwt-handbook?utm_source=jwtio&utm_medium=control&utm_campaign=gc_jwt_test_10_2019', target='_blank') Download Ebook +section.container + .jtw-ebook-banner.jwt-ebook-banner-image + p + strong Get the JWT Handbook for free! + |  Download it now and get up-to-speed faster. + a.btn.btn-download-ebook(href='https://auth0.com/resources/ebooks/jwt-handbook?utm_source=jwtio&utm_medium=variation&utm_campaign=gc_jwt_test_10_2019', target='_blank') Download Ebook diff --git a/views/website/home.pug b/views/website/home.pug deleted file mode 100644 index ce096b7b..00000000 --- a/views/website/home.pug +++ /dev/null @@ -1,55 +0,0 @@ -extends layout - -block content - nav.navbar.closed - .container - .top-mobile - .menu-trigger - span - - a.brand(href='http://github.com/') - img(src='http://github.com/img/pic_logo.svg').icon - img(src='http://github.com/img/logo.svg').logo - - nav.menu - a(href='#debugger-io').scrollto Debugger - a(href='#libraries-io').scrollto Libraries - a(href='http://github.com/introduction') Introduction - a(href='https://community.auth0.com/c/identity/jwt', target='_blank') Ask - a(href='http://swag.auth0.com/', target='_blank') Get a T-shirt! - - .social - a.a0(href='https://auth0.com/?utm_source=jwtio&utm_campaign=craftedby', target='_blank') - span.by-text Crafted by - img(src='http://github.com/img/pic_logo_ft.svg', alt='Token Based Authentication') - - a.supported(href='https://auth0.com/?utm_source=jwtio&utm_campaign=craftedby', target="_blank") - | Supported by - img(src='http://github.com/img/ico_logo.svg', alt='Token Based Authentication') - - section.banner-jwt - .container - a.logo(href='http://github.com/') - img(src='http://github.com/img/pic_logo.svg', alt='Token Based Authentication') - - p - | JSON Web Tokens are an open, industry standard  - a(href='https://tools.ietf.org/html/rfc7519', target='_blank') RFC 7519 - | method for representing claims securely between two parties. - p JWT.IO allows you to decode, verify and generate JWT. - - a.btn.btn-lg(href="http://github.com/introduction") Learn more about jwt - - include extension.pug - - include ebook-image.pug - - include token-editor.pug - - include libraries.pug - - include assets.pug - - include counter.pug - - script(src='http://github.com/js/index.js') From 941cf4631dfcf4ab59f8e32abef6c32fb400e5e1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 30 Oct 2019 07:21:04 +0000 Subject: [PATCH 193/456] Bump lodash from 4.17.11 to 4.17.13 Bumps [lodash](https://github.com/lodash/lodash) from 4.17.11 to 4.17.13. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.11...4.17.13) Signed-off-by: dependabot[bot] --- package-lock.json | 47 +++++++++++++++++++++++++++++++++-------------- package.json | 2 +- 2 files changed, 34 insertions(+), 15 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3ac6d0e1..72d90fbb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2972,7 +2972,8 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -2993,12 +2994,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -3013,17 +3016,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -3140,7 +3146,8 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -3152,6 +3159,7 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -3166,6 +3174,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -3173,12 +3182,14 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.3.5", "bundled": true, "dev": true, + "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -3197,6 +3208,7 @@ "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -3277,7 +3289,8 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -3289,6 +3302,7 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { "wrappy": "1" } @@ -3374,7 +3388,8 @@ "safe-buffer": { "version": "5.1.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -3410,6 +3425,7 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -3429,6 +3445,7 @@ "version": "3.0.1", "bundled": true, "dev": true, + "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -3472,12 +3489,14 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true } } }, @@ -8254,9 +8273,9 @@ } }, "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", + "version": "4.17.13", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.13.tgz", + "integrity": "sha512-vm3/XWXfWtRua0FkUyEHBZy8kCPjErNBT9fJx8Zvs+U6zjqPbTUOpkaoum3O5uiA8sm+yNMHXfYkTUHFoMxFNA==", "dev": true }, "lodash.assign": { diff --git a/package.json b/package.json index 67adbfca..17b078b7 100644 --- a/package.json +++ b/package.json @@ -48,7 +48,7 @@ "isotope-layout": "^3.0.6", "jquery": "^3.4.1", "jstransformer-markdown-it": "^2.1.0", - "lodash": "^4.17.11", + "lodash": "^4.17.13", "loglevel": "^1.6.2", "mocha": "^5.2.0", "node-jose": "^1.1.3", From 2e75f89081509cfe530f5fd24aaaf8ac98f0a41e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 30 Oct 2019 07:21:17 +0000 Subject: [PATCH 194/456] Bump morgan from 1.9.0 to 1.9.1 Bumps [morgan](https://github.com/expressjs/morgan) from 1.9.0 to 1.9.1. - [Release notes](https://github.com/expressjs/morgan/releases) - [Changelog](https://github.com/expressjs/morgan/blob/master/HISTORY.md) - [Commits](https://github.com/expressjs/morgan/compare/1.9.0...1.9.1) Signed-off-by: dependabot[bot] --- package-lock.json | 49 ++++++++++++++++++++++++++++++++--------------- 1 file changed, 34 insertions(+), 15 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3ac6d0e1..eef6f0f1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2972,7 +2972,8 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -2993,12 +2994,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -3013,17 +3016,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -3140,7 +3146,8 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -3152,6 +3159,7 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -3166,6 +3174,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -3173,12 +3182,14 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.3.5", "bundled": true, "dev": true, + "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -3197,6 +3208,7 @@ "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -3277,7 +3289,8 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -3289,6 +3302,7 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { "wrappy": "1" } @@ -3374,7 +3388,8 @@ "safe-buffer": { "version": "5.1.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -3410,6 +3425,7 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -3429,6 +3445,7 @@ "version": "3.0.1", "bundled": true, "dev": true, + "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -3472,12 +3489,14 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true } } }, @@ -8810,14 +8829,14 @@ "dev": true }, "morgan": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.9.0.tgz", - "integrity": "sha1-0B+mxlhZt2/PMbPLU6OCGjEdgFE=", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.9.1.tgz", + "integrity": "sha512-HQStPIV4y3afTiCYVxirakhlCfGkI161c76kKFca7Fk1JusM//Qeo1ej2XaMniiNeaZklMVrh3vTtIzpzwbpmA==", "dev": true, "requires": { "basic-auth": "~2.0.0", "debug": "2.6.9", - "depd": "~1.1.1", + "depd": "~1.1.2", "on-finished": "~2.3.0", "on-headers": "~1.0.1" } From 8dfd47602c7c49245167e4b259cc3c818119a205 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 30 Oct 2019 07:21:19 +0000 Subject: [PATCH 195/456] Bump mixin-deep from 1.3.1 to 1.3.2 Bumps [mixin-deep](https://github.com/jonschlinkert/mixin-deep) from 1.3.1 to 1.3.2. - [Release notes](https://github.com/jonschlinkert/mixin-deep/releases) - [Commits](https://github.com/jonschlinkert/mixin-deep/compare/1.3.1...1.3.2) Signed-off-by: dependabot[bot] --- package-lock.json | 47 +++++++++++++++++++++++++++++++++-------------- 1 file changed, 33 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3ac6d0e1..8885cf36 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2972,7 +2972,8 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -2993,12 +2994,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -3013,17 +3016,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -3140,7 +3146,8 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -3152,6 +3159,7 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -3166,6 +3174,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -3173,12 +3182,14 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.3.5", "bundled": true, "dev": true, + "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -3197,6 +3208,7 @@ "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -3277,7 +3289,8 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -3289,6 +3302,7 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { "wrappy": "1" } @@ -3374,7 +3388,8 @@ "safe-buffer": { "version": "5.1.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -3410,6 +3425,7 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -3429,6 +3445,7 @@ "version": "3.0.1", "bundled": true, "dev": true, + "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -3472,12 +3489,14 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true } } }, @@ -8697,9 +8716,9 @@ } }, "mixin-deep": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", - "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", "dev": true, "requires": { "for-in": "^1.0.2", From 99e3e1b0ab19e21cac18e393fa664cba409d093d Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 31 Oct 2019 16:52:37 +0100 Subject: [PATCH 196/456] Dont show extension banner --- src/website/index.js | 9 --------- views/website/ebook.pug | 2 +- views/website/index.pug | 2 -- 3 files changed, 1 insertion(+), 12 deletions(-) diff --git a/src/website/index.js b/src/website/index.js index 439dd0b3..1061643e 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -49,14 +49,6 @@ function parseLocationQuery() { } } -function pickEbookOrExtensionBanner() { - if ((isChrome() || isFirefox()) && Math.random() >= 0.5) { - extensionSection.style.display = "block"; - } else { - ebookSection.style.display = "block"; - } -} - // Initialization setupNavbar(); setupExtensionButton(); @@ -66,5 +58,4 @@ setupTokenEditor(); parseLocationQuery(); setupHighlighting(); setupJwtCounter(); -pickEbookOrExtensionBanner(); setupShareJwtButton(shareJwtButton, shareJwtTextElement); diff --git a/views/website/ebook.pug b/views/website/ebook.pug index 213d6db3..01dfb666 100644 --- a/views/website/ebook.pug +++ b/views/website/ebook.pug @@ -3,4 +3,4 @@ section.container p strong Get the JWT Handbook for free! |  Download it now and get up-to-speed faster. - a.btn.btn-download-ebook(href='https://auth0.com/resources/ebooks/jwt-handbook?utm_source=jwtio&utm_medium=variation&utm_campaign=gc_jwt_test_10_2019', target='_blank') Download Ebook + a.btn.btn-download-ebook(href='https://auth0.com/resources/ebooks/jwt-handbook?utm_source=jwtio&utm_medium=main_gc_banner&utm_campaign=gc_jwt_test_10_2019', target='_blank') Download Ebook diff --git a/views/website/index.pug b/views/website/index.pug index 7ea1e2d3..dae6e6cf 100644 --- a/views/website/index.pug +++ b/views/website/index.pug @@ -39,8 +39,6 @@ block content p JWT.IO allows you to decode, verify and generate JWT. a.btn.btn-lg(href="http://github.com/introduction") Learn more about jwt - - include extension.pug include ebook.pug From 96146d977ae16c56991e90381364b489e3227ac1 Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 31 Oct 2019 16:56:12 +0100 Subject: [PATCH 197/456] Fix banner --- stylus/website/index.styl | 1 - 1 file changed, 1 deletion(-) diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 9e120e4f..83eeec2b 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -401,7 +401,6 @@ body // jtw ebook banner .jtw-ebook-banner - display: none; background: #e3e5e7; padding: 30px 20px; font-size: 18px; From 8d4a1ad2e9f465c75a71fe70012f67aba85ff00d Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 31 Oct 2019 17:10:20 +0100 Subject: [PATCH 198/456] Fix extension button error --- src/website/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/website/index.js b/src/website/index.js index 1061643e..b0e52190 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -51,7 +51,7 @@ function parseLocationQuery() { // Initialization setupNavbar(); -setupExtensionButton(); +// setupExtensionButton(); setupSmoothScrolling(); setupLibraries(); setupTokenEditor(); From 1e3695c884033f9d53ae6eb8e3a6b05741e58e77 Mon Sep 17 00:00:00 2001 From: Winfried Dobbe Date: Mon, 11 Nov 2019 18:26:15 +0100 Subject: [PATCH 199/456] Add C++ library jwt-cpp by Erwin Jansen --- views/website/libraries/21-C++.json | 32 +++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/views/website/libraries/21-C++.json b/views/website/libraries/21-C++.json index 45660c59..2d96bd88 100644 --- a/views/website/libraries/21-C++.json +++ b/views/website/libraries/21-C++.json @@ -96,6 +96,38 @@ "gitHubRepoPath": "arun11299/cpp-jwt", "repoUrl": "https://github.com/arun11299/cpp-jwt", "installCommandHtml": "git clone https://github.com/arun11299/cpp-jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false, + "eddsa": false + }, + "authorUrl": "https://github.com/pokowaka", + "authorName": "Erwin Jansen", + "gitHubRepoPath": "pokowaka/jwt-cpp", + "repoUrl": "https://github.com/pokowaka/jwt-cpp", + "installCommandHtml": "git clone https://github.com/pokowaka/jwt-cpp" } ] } From e6ff3ad112733ee95c8bc82a914835256b333bee Mon Sep 17 00:00:00 2001 From: Jesse Cooke Date: Tue, 12 Nov 2019 09:41:23 -0800 Subject: [PATCH 200/456] Add Joken's support for EdDSA Listed in https://github.com/potatosalad/erlang-jose#alg-rfc-7518-section-3 --- views/website/libraries/7-Elixir.json | 1 + 1 file changed, 1 insertion(+) diff --git a/views/website/libraries/7-Elixir.json b/views/website/libraries/7-Elixir.json index 1a7017bd..0faa43e7 100644 --- a/views/website/libraries/7-Elixir.json +++ b/views/website/libraries/7-Elixir.json @@ -54,6 +54,7 @@ "rs256": true, "rs384": true, "rs512": true, + "eddsa": true, "es256": true, "es384": true, "es512": true, From c6992f9a5d3fe4ab8bfe097896526cbcf0dc3773 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Tue, 10 Dec 2019 22:34:23 +1100 Subject: [PATCH 201/456] add ECDSA support to crystal-community/jwt --- views/website/libraries/25-Crystal.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/views/website/libraries/25-Crystal.json b/views/website/libraries/25-Crystal.json index 585e6b98..276a6ff3 100644 --- a/views/website/libraries/25-Crystal.json +++ b/views/website/libraries/25-Crystal.json @@ -22,9 +22,9 @@ "rs256": true, "rs384": true, "rs512": true, - "es256": false, - "es384": false, - "es512": false, + "es256": true, + "es384": true, + "es512": true, "ps256": false, "ps384": false, "ps512": false From a47322a1a39ccbbe7f6e10d48c7d230a7dc53c75 Mon Sep 17 00:00:00 2001 From: Pablo Alvarez Date: Tue, 10 Dec 2019 11:00:30 -0500 Subject: [PATCH 202/456] Adds the question mark and css rules for tooltip --- package-lock.json | 41 ++++++++++++++++++++++++++++----------- stylus/website/index.styl | 32 ++++++++++++++++++++++++++++++ views/website/index.pug | 5 +++-- 3 files changed, 65 insertions(+), 13 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3ac6d0e1..6b9d662c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2972,7 +2972,8 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -2993,12 +2994,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -3013,17 +3016,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -3140,7 +3146,8 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -3152,6 +3159,7 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -3166,6 +3174,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -3173,12 +3182,14 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.3.5", "bundled": true, "dev": true, + "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -3197,6 +3208,7 @@ "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -3277,7 +3289,8 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -3289,6 +3302,7 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { "wrappy": "1" } @@ -3374,7 +3388,8 @@ "safe-buffer": { "version": "5.1.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -3410,6 +3425,7 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -3429,6 +3445,7 @@ "version": "3.0.1", "bundled": true, "dev": true, + "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -3472,12 +3489,14 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true } } }, diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 83eeec2b..e2a10979 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -234,6 +234,38 @@ body color white padding-right 10px + .crafted-by__question-mark + background-color #555 + color black + font-size 10px + border-radius 50% + width 14px + height 14px + display inline-block + margin-left 10px + vertical-align middle + transition background-color .5s + ../ + &:before + content "Learn more about Auth0" + position absolute + min-width 180px + top 32px + background-color #555 + color white + border-radius 3px + padding 4px + transition visibility 0s, opacity .5s + visibility hidden + opacity 0 + &:hover + .crafted-by__question-mark + background-color white + &:before + opacity 1 + visibility visible + + .supported display none diff --git a/views/website/index.pug b/views/website/index.pug index dae6e6cf..5550f574 100644 --- a/views/website/index.pug +++ b/views/website/index.pug @@ -22,8 +22,9 @@ block content a.a0(href='https://auth0.com/?utm_source=jwtio&utm_campaign=craftedby', target='_blank') span.by-text Crafted by img(src='http://github.com/img/pic_logo_ft.svg', alt='Token Based Authentication') + span.crafted-by__question-mark ? - a.supported(href='https://auth0.com/?utm_source=jwtio&utm_campaign=craftedby', target="_blank") + a.supported(href='https://auth0.com/?utm_source=jwtio&utm_campaign=craftedby', target="_blank") | Supported by img(src='http://github.com/img/ico_logo.svg', alt='Token Based Authentication') @@ -39,7 +40,7 @@ block content p JWT.IO allows you to decode, verify and generate JWT. a.btn.btn-lg(href="http://github.com/introduction") Learn more about jwt - + include ebook.pug include token-editor.pug From 93c7b50ce1356e785097f3c135d0b9ec95b1890d Mon Sep 17 00:00:00 2001 From: Pablo Alvarez Date: Tue, 10 Dec 2019 11:06:34 -0500 Subject: [PATCH 203/456] Adds the question mark to the /introduction page navbar --- views/website/introduction.pug | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/views/website/introduction.pug b/views/website/introduction.pug index fcbaa0db..b436c5d1 100644 --- a/views/website/introduction.pug +++ b/views/website/introduction.pug @@ -49,8 +49,9 @@ block content a.a0(href='https://auth0.com/?utm_source=jwtio&utm_campaign=craftedby', target='_blank') span.by-text Crafted by img(src='http://github.com/img/pic_logo_ft.svg', alt='Token Based Authentication') + span.crafted-by__question-mark ? - a.supported(href='https://auth0.com/', target="_blank") + a.supported(href='https://auth0.com/', target="_blank") | Supported by img(src='http://github.com/img/ico_logo.svg') From 02c9f3d5691f70e570e770c711fd98679422103e Mon Sep 17 00:00:00 2001 From: Pablo Alvarez Date: Tue, 10 Dec 2019 12:05:59 -0500 Subject: [PATCH 204/456] Changes the Crafted By Auth0 links and adds UTM --- views/website/index.pug | 2 +- views/website/introduction.pug | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/views/website/index.pug b/views/website/index.pug index 5550f574..2a6e7a90 100644 --- a/views/website/index.pug +++ b/views/website/index.pug @@ -19,7 +19,7 @@ block content a(href='http://swag.auth0.com/', target='_blank') Get a T-shirt! .social - a.a0(href='https://auth0.com/?utm_source=jwtio&utm_campaign=craftedby', target='_blank') + a.a0(href='https://auth0.com/why-auth0?utm_source=jwtio&utm_medium=navbar_whats_auth0&utm_campaign=jwt_nav_cta_12_2019', target='_blank') span.by-text Crafted by img(src='http://github.com/img/pic_logo_ft.svg', alt='Token Based Authentication') span.crafted-by__question-mark ? diff --git a/views/website/introduction.pug b/views/website/introduction.pug index b436c5d1..900ea92c 100644 --- a/views/website/introduction.pug +++ b/views/website/introduction.pug @@ -46,7 +46,7 @@ block content a(href='http://swag.auth0.com/', target='_blank') Get a T-shirt! .social - a.a0(href='https://auth0.com/?utm_source=jwtio&utm_campaign=craftedby', target='_blank') + a.a0(href='https://auth0.com/why-auth0?utm_source=jwtio&utm_medium=navbar_whats_auth0&utm_campaign=jwt_nav_cta_12_2019', target='_blank') span.by-text Crafted by img(src='http://github.com/img/pic_logo_ft.svg', alt='Token Based Authentication') span.crafted-by__question-mark ? From 1b86cb958e034327c943c010bb987ff6e51c3da8 Mon Sep 17 00:00:00 2001 From: Pablo Alvarez Date: Wed, 11 Dec 2019 13:40:33 -0500 Subject: [PATCH 205/456] Removes editor formatted delta --- views/website/index.pug | 2 +- views/website/introduction.pug | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/views/website/index.pug b/views/website/index.pug index 2a6e7a90..00cc1f5c 100644 --- a/views/website/index.pug +++ b/views/website/index.pug @@ -24,7 +24,7 @@ block content img(src='http://github.com/img/pic_logo_ft.svg', alt='Token Based Authentication') span.crafted-by__question-mark ? - a.supported(href='https://auth0.com/?utm_source=jwtio&utm_campaign=craftedby', target="_blank") + a.supported(href='https://auth0.com/?utm_source=jwtio&utm_campaign=craftedby', target="_blank") | Supported by img(src='http://github.com/img/ico_logo.svg', alt='Token Based Authentication') diff --git a/views/website/introduction.pug b/views/website/introduction.pug index 900ea92c..d7a74514 100644 --- a/views/website/introduction.pug +++ b/views/website/introduction.pug @@ -51,7 +51,7 @@ block content img(src='http://github.com/img/pic_logo_ft.svg', alt='Token Based Authentication') span.crafted-by__question-mark ? - a.supported(href='https://auth0.com/', target="_blank") + a.supported(href='https://auth0.com/', target="_blank") | Supported by img(src='http://github.com/img/ico_logo.svg') From 1967f9d83c61dfc0266e13aba5490c82c379f358 Mon Sep 17 00:00:00 2001 From: Pablo Alvarez Date: Wed, 11 Dec 2019 13:50:59 -0500 Subject: [PATCH 206/456] Simplifies styles --- stylus/website/index.styl | 37 ++++++++++++++++++------------------- 1 file changed, 18 insertions(+), 19 deletions(-) diff --git a/stylus/website/index.styl b/stylus/website/index.styl index e2a10979..179fa90a 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -245,25 +245,24 @@ body margin-left 10px vertical-align middle transition background-color .5s - ../ - &:before - content "Learn more about Auth0" - position absolute - min-width 180px - top 32px - background-color #555 - color white - border-radius 3px - padding 4px - transition visibility 0s, opacity .5s - visibility hidden - opacity 0 - &:hover - .crafted-by__question-mark - background-color white - &:before - opacity 1 - visibility visible + &:before + content "Learn more about Auth0" + position fixed + width auto + padding 6px + top 64px + border-radius 3px + background-color #555 + color white + transition visibility 0s, opacity .5s + visibility hidden + opacity 0 + &:hover + .crafted-by__question-mark + background-color white + &:before + visibility visible + opacity 1 .supported From fe471fb90d2f1f1ff7967e040a23c7bb41561ca3 Mon Sep 17 00:00:00 2001 From: Pablo Alvarez Date: Tue, 17 Dec 2019 13:36:25 -0500 Subject: [PATCH 207/456] Changes tooltip positioning for Chrome based browsers --- stylus/website/index.styl | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 179fa90a..3ca57a01 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -247,10 +247,10 @@ body transition background-color .5s &:before content "Learn more about Auth0" - position fixed - width auto + position absolute + width 164px padding 6px - top 64px + top 30px border-radius 3px background-color #555 color white From dd02008df51b68052032d7656f4834ced662cf3c Mon Sep 17 00:00:00 2001 From: Zandor Smith Date: Sat, 28 Dec 2019 18:49:07 +0100 Subject: [PATCH 208/456] Update that firebase/php-jwt now supports ES256. Support was added in https://github.com/firebase/php-jwt/pull/239. --- views/website/libraries/24-PHP.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/24-PHP.json b/views/website/libraries/24-PHP.json index bd4e4766..bf0bc9b6 100644 --- a/views/website/libraries/24-PHP.json +++ b/views/website/libraries/24-PHP.json @@ -22,7 +22,7 @@ "rs256": true, "rs384": true, "rs512": true, - "es256": false, + "es256": true, "es384": false, "es512": false, "ps256": false, From af459e9a9fc07abc426ec6905a3fef3a60bcc0f7 Mon Sep 17 00:00:00 2001 From: Robert Bragg Date: Sun, 29 Dec 2019 01:56:37 +0000 Subject: [PATCH 209/456] Add rib/jsonwebtokens to Rust libraries --- views/website/libraries/13-Rust.json | 31 ++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/views/website/libraries/13-Rust.json b/views/website/libraries/13-Rust.json index ce124804..6b7cbcb6 100644 --- a/views/website/libraries/13-Rust.json +++ b/views/website/libraries/13-Rust.json @@ -96,6 +96,37 @@ "gitHubRepoPath": "lawliet89/biscuit", "repoUrl": "https://github.com/lawliet89/biscuit", "installCommandHtml": "Cargo.toml: biscuit = \"*\"" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": false, + "ps256": true, + "ps384": true, + "ps512": true + }, + "authorUrl": "https://github.com/rib", + "authorName": "Robert Bragg", + "gitHubRepoPath": "rib/jsonwebtokens", + "repoUrl": "https://github.com/rib/jsonwebtokens", + "installCommandHtml": "Cargo.toml: jsonwebtokens = \"*\"" } ] } From 4ee9afeefc117ad7cfd9f50def4eb2ac9cbd628d Mon Sep 17 00:00:00 2001 From: Oleg Kovalov Date: Thu, 9 Jan 2020 23:49:54 +0100 Subject: [PATCH 210/456] Update 9-Go.json --- views/website/libraries/9-Go.json | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index 17ebd87c..ec0d4eee 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -373,6 +373,37 @@ "gitHubRepoPath": "brianvoe/sjwt", "repoUrl": "https://github.com/brianvoe/sjwt", "installCommandHtml": "go get github.com/brianvoe/sjwt" + }, + { + "minimumVersion": 1.12, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true + }, + "authorUrl": "https://github.com/cristalhq", + "authorName": "Oleg Kovalov", + "gitHubRepoPath": "cristalhq/jwt", + "repoUrl": "https://github.com/cristalhq/jwt", + "installCommandHtml": "go get github.com/cristalhq/jwt" } ] } From 8178e1e8e7ae3062fa6327dee32a01ed0efbd2f3 Mon Sep 17 00:00:00 2001 From: Oleg Kovalov Date: Thu, 16 Jan 2020 14:46:09 +0100 Subject: [PATCH 211/456] Update 9-Go.json --- views/website/libraries/9-Go.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index ec0d4eee..07c2853e 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -375,7 +375,7 @@ "installCommandHtml": "go get github.com/brianvoe/sjwt" }, { - "minimumVersion": 1.12, + "minimumVersion": "1.12", "support": { "sign": true, "verify": true, From 714781c65f7967d33f58918b846daf0656905955 Mon Sep 17 00:00:00 2001 From: Oleg Kovalov Date: Thu, 16 Jan 2020 19:20:17 +0100 Subject: [PATCH 212/456] Update 9-Go.json --- views/website/libraries/9-Go.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index 07c2853e..ce46408e 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -397,7 +397,8 @@ "es512": true, "ps256": true, "ps384": true, - "ps512": true + "ps512": true, + "eddsa": true }, "authorUrl": "https://github.com/cristalhq", "authorName": "Oleg Kovalov", From 79c0bcca372df43193e1142484f5081e604d5ae3 Mon Sep 17 00:00:00 2001 From: Sambego Date: Tue, 21 Jan 2020 12:36:19 +0100 Subject: [PATCH 213/456] update browser plugin version --- jwtio-debugger-source.zip | Bin 0 -> 891747 bytes manifest.json | 2 +- package-lock.json | 41 ++++++++++++++++++++++++++++---------- package.json | 3 ++- 4 files changed, 33 insertions(+), 13 deletions(-) create mode 100644 jwtio-debugger-source.zip diff --git a/jwtio-debugger-source.zip b/jwtio-debugger-source.zip new file mode 100644 index 0000000000000000000000000000000000000000..444a0697351d6b694f87521b16dbd2002a85687a GIT binary patch literal 891747 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 z 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≫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%0AF^!x4~`*$aX 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 z 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 literal 0 HcmV?d00001 diff --git a/manifest.json b/manifest.json index 51bdb3c7..3742879a 100644 --- a/manifest.json +++ b/manifest.json @@ -3,7 +3,7 @@ "name": "JWT Debugger", "description": "The JWT.io debugger as a Web Extension", - "version": "3.0.0", + "version": "3.1.0", "browser_action": { "default_icon": "img/favicon/favicon-96x96.png", diff --git a/package-lock.json b/package-lock.json index 3ac6d0e1..6b9d662c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2972,7 +2972,8 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -2993,12 +2994,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -3013,17 +3016,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -3140,7 +3146,8 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -3152,6 +3159,7 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -3166,6 +3174,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -3173,12 +3182,14 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.3.5", "bundled": true, "dev": true, + "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -3197,6 +3208,7 @@ "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -3277,7 +3289,8 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -3289,6 +3302,7 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { "wrappy": "1" } @@ -3374,7 +3388,8 @@ "safe-buffer": { "version": "5.1.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -3410,6 +3425,7 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -3429,6 +3445,7 @@ "version": "3.0.1", "bundled": true, "dev": true, + "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -3472,12 +3489,14 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true } } }, diff --git a/package.json b/package.json index 67adbfca..c0f747ec 100644 --- a/package.json +++ b/package.json @@ -72,7 +72,8 @@ "start": "node server.js", "test": "grunt test", "test:unit": "grunt unit-tests", - "build": "grunt build-website" + "build": "grunt build-website", + "build:extension": "grunt build-extension" }, "heroku-run-build-script": true } From a2f7614fbeeb598b78bb2884f82b1a9c8de32bbd Mon Sep 17 00:00:00 2001 From: Sambego Date: Tue, 21 Jan 2020 12:42:51 +0100 Subject: [PATCH 214/456] Update GTM scripts --- views/website/layout.pug | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/views/website/layout.pug b/views/website/layout.pug index ebf32c0c..1b1f2378 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -36,9 +36,19 @@ html(lang='en') // Chrome extension link, required for inline installs link(rel="chrome-webstore-item", href="https://chrome.google.com/webstore/detail/ppmmlchacdbknfphdeafcbmklcghghmd") - body - + // Google Tag Manager + script. + ​(f​unction(​w​,d,s,l,i​){w[l]=w[l]||[];w[l].push({​'gtm.start'​: new​​Date(​).getTime(),event:'​gtm.js'​});v​ar​f=d.getElementsByTagName(s)[​0]​, j=d.createElement(s),dl=l!='​ dataLayer'?​ ​'&l='+​ l:​'';​ j.async=​true;​ j.src= 'https://www.googletagmanager.com/gtm.js?id='​+i+dl;f.parentNode.insertBefore(j,f); })(​window,​​document​,'​script'​,'​dataLayer',​​'GTM-W7FRLJ')​; + // End Google Tag Manager + + body + // Google Tag Manager (noscript) + noscript + iframe(src='https://www.googletagmanager.com/ns.html?id=GTM-W7FRLJ"', height='0', width='0', style='display:none;visibility:hidden') + // End Google Tag Manager (noscript) + + // Google Tag Manager legacy (remove soon) noscript iframe(src='http://www.googletagmanager.com/ns.html?id=GTM-PT2SNS', height='0', width='0', style='display:none;visibility:hidden') script. From 29ee3b05be912e8770e99473e2236eed0d3e00a3 Mon Sep 17 00:00:00 2001 From: Sambego Date: Tue, 21 Jan 2020 13:05:18 +0100 Subject: [PATCH 215/456] Fix typo --- views/website/layout.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/layout.pug b/views/website/layout.pug index 1b1f2378..63881de6 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -45,7 +45,7 @@ html(lang='en') body // Google Tag Manager (noscript) noscript - iframe(src='https://www.googletagmanager.com/ns.html?id=GTM-W7FRLJ"', height='0', width='0', style='display:none;visibility:hidden') + iframe(src='https://www.googletagmanager.com/ns.html?id=GTM-W7FRLJ', height='0', width='0', style='display:none;visibility:hidden') // End Google Tag Manager (noscript) // Google Tag Manager legacy (remove soon) From 76b54f188628576344e46d83d4fc5e33ebd3ca1b Mon Sep 17 00:00:00 2001 From: Maxim Reznik Date: Thu, 23 Jan 2020 20:24:21 +0200 Subject: [PATCH 216/456] Add an Ada library --- img/website/28.svg | 53 +++++++++++++++++++++++++++++ views/website/libraries/28-Ada.json | 39 +++++++++++++++++++++ 2 files changed, 92 insertions(+) create mode 100644 img/website/28.svg create mode 100644 views/website/libraries/28-Ada.json diff --git a/img/website/28.svg b/img/website/28.svg new file mode 100644 index 00000000..543962ff --- /dev/null +++ b/img/website/28.svg @@ -0,0 +1,53 @@ + + + + +Created by potrace 1.14, written by Peter Selinger 2001-2017 + + + + + + + + + + + + diff --git a/views/website/libraries/28-Ada.json b/views/website/libraries/28-Ada.json new file mode 100644 index 00000000..6fe0b6b9 --- /dev/null +++ b/views/website/libraries/28-Ada.json @@ -0,0 +1,39 @@ +{ + "name": "Ada", + "uniqueClass": "ada", + "image": "/img/28.svg", + "bgColor": "#634421", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": false, + "hs512": false, + "rs256": true, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false + }, + "authorUrl": "https://github.com/reznikmm", + "authorName": "reznikmm", + "gitHubRepoPath": "reznikmm/jwt", + "repoUrl": "https://github.com/reznikmm/jwt", + "installCommandHtml": "alr get jwt" + } + ] +} From e6698aba4ac8b94d23c83ea09710a876b53e1f7f Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Tue, 28 Jan 2020 23:15:44 -0800 Subject: [PATCH 217/456] Update 13-Rust.json --- views/website/libraries/13-Rust.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/views/website/libraries/13-Rust.json b/views/website/libraries/13-Rust.json index 6b7cbcb6..f1d6fa77 100644 --- a/views/website/libraries/13-Rust.json +++ b/views/website/libraries/13-Rust.json @@ -53,12 +53,12 @@ "rs256": true, "rs384": true, "rs512": true, - "es256": false, - "es384": false, + "es256": true, + "es384": true, "es512": false, - "ps256": false, - "ps384": false, - "ps512": false + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/Keats", "authorName": "Keats", From 6655020f1fa6784db49711afe5e671ea94032fe3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=BCnter=20Obiltschnig?= Date: Wed, 29 Jan 2020 08:42:24 +0100 Subject: [PATCH 218/456] added POCO C++ Libraries --- views/website/libraries/21-C++.json | 31 +++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/views/website/libraries/21-C++.json b/views/website/libraries/21-C++.json index 2d96bd88..3cf7d203 100644 --- a/views/website/libraries/21-C++.json +++ b/views/website/libraries/21-C++.json @@ -128,6 +128,37 @@ "gitHubRepoPath": "pokowaka/jwt-cpp", "repoUrl": "https://github.com/pokowaka/jwt-cpp", "installCommandHtml": "git clone https://github.com/pokowaka/jwt-cpp" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false + }, + "authorUrl": "https://github.com/pocoproject", + "authorName": "POCO C++ Libraries", + "gitHubRepoPath": "pocoproject/poco", + "repoUrl": "https://github.com/pocoproject/poco", + "installCommandHtml": "git clone https://github.com/pocoproject/poco.git" } ] } From 41b1d85372f281709c80bdea75f832721f90d8f8 Mon Sep 17 00:00:00 2001 From: Philipp Jahoda Date: Tue, 4 Feb 2020 16:17:46 +0100 Subject: [PATCH 219/456] Added Kotlin .svg file --- img/website/29.svg | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 img/website/29.svg diff --git a/img/website/29.svg b/img/website/29.svg new file mode 100644 index 00000000..3480717d --- /dev/null +++ b/img/website/29.svg @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 7347c7fe2eb37e95fcc41d7a3734462534ca2324 Mon Sep 17 00:00:00 2001 From: Philipp Jahoda Date: Tue, 4 Feb 2020 16:25:04 +0100 Subject: [PATCH 220/456] Create 29-Kotlin.json --- views/website/libraries/29-Kotlin.json | 39 ++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 views/website/libraries/29-Kotlin.json diff --git a/views/website/libraries/29-Kotlin.json b/views/website/libraries/29-Kotlin.json new file mode 100644 index 00000000..5c708451 --- /dev/null +++ b/views/website/libraries/29-Kotlin.json @@ -0,0 +1,39 @@ +{ + "name": "Kotlin", + "uniqueClass": "kotlin", + "image": "/img/29.svg", + "bgColor": "#f3750d", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": false, + "iat": true, + "jti": false, + "hs256": false, + "hs384": false, + "hs512": false, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": true, + "es384": false, + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false + }, + "authorUrl": "https://github.com/PhilJay", + "authorName": "PhilJay", + "gitHubRepoPath": "PhilJay/JWT", + "repoUrl": "https://github.com/PhilJay/JWT", + "installCommandHtml": "maven: com.github.PhilJay / JWT / 1.1.5" + } + ] +} From 220bde28eb181868d1467ca1fe63a6c77390083d Mon Sep 17 00:00:00 2001 From: Sambego Date: Tue, 4 Feb 2020 09:47:28 -1000 Subject: [PATCH 221/456] Update Kotlin image --- img/website/29.svg | 71 ++++++++++++++++++++++++---------------------- 1 file changed, 37 insertions(+), 34 deletions(-) diff --git a/img/website/29.svg b/img/website/29.svg index 3480717d..7534bb16 100644 --- a/img/website/29.svg +++ b/img/website/29.svg @@ -1,34 +1,37 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + Oval + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From 82a1f1f09b0f0cd40df06fe78f957f5d64389468 Mon Sep 17 00:00:00 2001 From: Carlos Menezes Date: Sat, 8 Feb 2020 13:27:27 +0000 Subject: [PATCH 222/456] Add link to JWT Debugger This feature adds the "correct" link to the `jwt.io Debugger` feature by redirecting the user to the index page and scrolling to the debugger, whose `id` is `debugger-io`. --- views/website/md/introduction.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/md/introduction.md b/views/website/md/introduction.md index 77ee398d..2f75e7c5 100755 --- a/views/website/md/introduction.md +++ b/views/website/md/introduction.md @@ -88,7 +88,7 @@ The output is three Base64-URL strings separated by dots that can be easily pass The following shows a JWT that has the previous header and payload encoded, and it is signed with a secret. ![Encoded JWT](https://cdn.auth0.com/content/jwt/encoded-jwt3.png) -If you want to play with JWT and put these concepts into practice, you can use [jwt.io Debugger](http://jwt.io) to decode, verify, and generate JWTs. +If you want to play with JWT and put these concepts into practice, you can use [jwt.io Debugger](https://jwt.io/index.html#debugger-io) to decode, verify, and generate JWTs. ![JWT.io Debugger](https://cdn.auth0.com/blog/legacy-app-auth/legacy-app-auth-5.png) From 0f71e312067d624ebf1ff1b209232c5376246062 Mon Sep 17 00:00:00 2001 From: thomas Date: Sun, 9 Feb 2020 10:04:05 -0500 Subject: [PATCH 223/456] add jsmn-web-tokens to jwt.io --- views/website/libraries/20-C.json | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/views/website/libraries/20-C.json b/views/website/libraries/20-C.json index b8e85af9..56e907cb 100644 --- a/views/website/libraries/20-C.json +++ b/views/website/libraries/20-C.json @@ -65,6 +65,37 @@ "gitHubRepoPath": "cisco/cjose", "repoUrl": "https://github.com/cisco/cjose", "installCommandHtml": "git clone https://github.com/cisco/cjose.git && cd cjose && ./configure && make" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false + }, + "authorUrl": "https://github.com/TomzBench/jsmn-web-tokens", + "authorName": "Thomas", + "gitHubRepoPath": "TomzBench/jsmn-web-tokens", + "repoUrl": "https://github.com/TomzBench/jsmn-web-tokens", + "installCommandHtml": "git clone https://github.com/TomzBench/jsmn-web-tokens.git && cd jsmn-web-tokens && cmake . && cmake --build . --target install" } ] } From fe90803e588d42cadc56214f36905753c748ecb5 Mon Sep 17 00:00:00 2001 From: Glitched Polygons <37942667+GlitchedPolygons@users.noreply.github.com> Date: Sun, 9 Feb 2020 18:09:15 +0100 Subject: [PATCH 224/456] Update 20-C.json Added l8w8jwt --- views/website/libraries/20-C.json | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/views/website/libraries/20-C.json b/views/website/libraries/20-C.json index b8e85af9..b62c3c27 100644 --- a/views/website/libraries/20-C.json +++ b/views/website/libraries/20-C.json @@ -65,6 +65,37 @@ "gitHubRepoPath": "cisco/cjose", "repoUrl": "https://github.com/cisco/cjose", "installCommandHtml": "git clone https://github.com/cisco/cjose.git && cd cjose && ./configure && make" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true + }, + "authorUrl": "https://github.com/GlitchedPolygons", + "authorName": "Glitched Polygons", + "gitHubRepoPath": "GlitchedPolygons/l8w8jwt", + "repoUrl": "https://github.com/GlitchedPolygons/l8w8jwt", + "installCommandHtml": "git clone https://github.com/GlitchedPolygons/l8w8jwt.git" } ] } From 035346d985103e851ab15455fee5dc0bfd14c72d Mon Sep 17 00:00:00 2001 From: Carlos Menezes Date: Tue, 11 Feb 2020 11:51:56 +0000 Subject: [PATCH 225/456] Fix navigation links to Debugger and Libraries Introduction page now has correct links to Debugger and Libraries --- views/website/introduction.pug | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/views/website/introduction.pug b/views/website/introduction.pug index d7a74514..b060b086 100644 --- a/views/website/introduction.pug +++ b/views/website/introduction.pug @@ -39,8 +39,8 @@ block content img(src='http://github.com/img/logo.svg').logo nav.menu - a(href='http://github.com/#debugger').scrollto Debugger - a(href='http://github.com/#libraries').scrollto Libraries + a(href='http://github.com/index.html#debugger-io').scrollto Debugger + a(href='http://github.com/index.html#libraries').scrollto Libraries a(href='http://github.com/introduction').active Introduction a(href='https://community.auth0.com/', target='_blank') Ask a(href='http://swag.auth0.com/', target='_blank') Get a T-shirt! From 4bc7d7a5b0ed43701d59d31019bc4a6f7f2c93e8 Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 13 Feb 2020 10:08:10 +0100 Subject: [PATCH 226/456] Fix GTM code --- views/website/layout.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/layout.pug b/views/website/layout.pug index 63881de6..4a69b818 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -39,7 +39,7 @@ html(lang='en') // Google Tag Manager script. - ​(f​unction(​w​,d,s,l,i​){w[l]=w[l]||[];w[l].push({​'gtm.start'​: new​​Date(​).getTime(),event:'​gtm.js'​});v​ar​f=d.getElementsByTagName(s)[​0]​, j=d.createElement(s),dl=l!='​ dataLayer'?​ ​'&l='+​ l:​'';​ j.async=​true;​ j.src= 'https://www.googletagmanager.com/gtm.js?id='​+i+dl;f.parentNode.insertBefore(j,f); })(​window,​​document​,'​script'​,'​dataLayer',​​'GTM-W7FRLJ')​; + (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': newDate().getTime(),event:'gtm.js'});varf=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!=' dataLayer'? '&l='+ l:''; j.async=true; j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-W7FRLJ'); // End Google Tag Manager body From 4bb1ed406d0d532616a64dcd15b82d0358fbccb3 Mon Sep 17 00:00:00 2001 From: Sambego Date: Fri, 21 Feb 2020 11:09:04 +0100 Subject: [PATCH 227/456] Fix gtm --- views/website/layout.pug | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/views/website/layout.pug b/views/website/layout.pug index 4a69b818..dccaeeb6 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -39,7 +39,11 @@ html(lang='en') // Google Tag Manager script. - (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': newDate().getTime(),event:'gtm.js'});varf=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!=' dataLayer'? '&l='+ l:''; j.async=true; j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-W7FRLJ'); + (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': + new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], + j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= + '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); + })(window,document,'script','dataLayer','GTM-W7FRLJ'); // End Google Tag Manager body @@ -48,17 +52,6 @@ html(lang='en') iframe(src='https://www.googletagmanager.com/ns.html?id=GTM-W7FRLJ', height='0', width='0', style='display:none;visibility:hidden') // End Google Tag Manager (noscript) - // Google Tag Manager legacy (remove soon) - noscript - iframe(src='http://www.googletagmanager.com/ns.html?id=GTM-PT2SNS', height='0', width='0', style='display:none;visibility:hidden') - script. - (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': - new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], - j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= - '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); - })(window,document,'script','dataLayer','GTM-PT2SNS'); - // End Google Tag Manager —> - block content footer From 0f4fce8f0f0cf4c34276c16f360fca715a93b1a2 Mon Sep 17 00:00:00 2001 From: Zbigniew Mandziejewicz Date: Sat, 29 Feb 2020 19:53:58 +0700 Subject: [PATCH 228/456] Mark claims validation support for square/go-jose Reference: https://godoc.org/gopkg.in/square/go-jose.v2/jwt#Expected Source: https://github.com/square/go-jose/blob/master/jwt/validation.go --- views/website/libraries/9-Go.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index ce46408e..fda53924 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -164,13 +164,13 @@ "support": { "sign": true, "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, "hs256": true, "hs384": true, "hs512": true, From 8001080660d13c34adb9392cf1002a841040909f Mon Sep 17 00:00:00 2001 From: Artur Troian Date: Thu, 19 Mar 2020 12:23:10 -0400 Subject: [PATCH 229/456] fix: rename josepp to jwtpp as project renamed Signed-off-by: Artur Troian --- views/website/libraries/21-C++.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/views/website/libraries/21-C++.json b/views/website/libraries/21-C++.json index 3cf7d203..9100fe61 100644 --- a/views/website/libraries/21-C++.json +++ b/views/website/libraries/21-C++.json @@ -31,9 +31,9 @@ }, "authorUrl": "https://github.com/troian", "authorName": "Artur Troian", - "gitHubRepoPath": "troian/josepp", - "repoUrl": "https://github.com/troian/josepp", - "installCommandHtml": "git clone https://github.com/troian/josepp" + "gitHubRepoPath": "troian/jwtpp", + "repoUrl": "https://github.com/troian/jwtpp", + "installCommandHtml": "git clone https://github.com/troian/jwtpp" }, { "minimumVersion": null, From fff0a7c56d92c7d4dddf80526cce452a2729b46c Mon Sep 17 00:00:00 2001 From: Artur Troian Date: Thu, 19 Mar 2020 22:53:17 -0400 Subject: [PATCH 230/456] feat: jwtpp support EdDSA Signed-off-by: Artur Troian --- views/website/libraries/21-C++.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/21-C++.json b/views/website/libraries/21-C++.json index 9100fe61..e9992ecf 100644 --- a/views/website/libraries/21-C++.json +++ b/views/website/libraries/21-C++.json @@ -27,7 +27,8 @@ "es512": true, "ps256": true, "ps384": true, - "ps512": true + "ps512": true, + "eddsa": true }, "authorUrl": "https://github.com/troian", "authorName": "Artur Troian", From 8a1cef094296f0042301b50e04bb3dea81920ad0 Mon Sep 17 00:00:00 2001 From: Sam Bellen Date: Mon, 23 Mar 2020 08:43:38 +0100 Subject: [PATCH 231/456] Update introduction links in the navigation --- views/website/introduction.pug | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/views/website/introduction.pug b/views/website/introduction.pug index b060b086..20773463 100644 --- a/views/website/introduction.pug +++ b/views/website/introduction.pug @@ -39,8 +39,8 @@ block content img(src='http://github.com/img/logo.svg').logo nav.menu - a(href='http://github.com/index.html#debugger-io').scrollto Debugger - a(href='http://github.com/index.html#libraries').scrollto Libraries + a(href='http://github.com/#debugger-io').scrollto Debugger + a(href='http://github.com/#libraries-io').scrollto Libraries a(href='http://github.com/introduction').active Introduction a(href='https://community.auth0.com/', target='_blank') Ask a(href='http://swag.auth0.com/', target='_blank') Get a T-shirt! From b3e5f02fce438245c8287690028e520b6bbbb49a Mon Sep 17 00:00:00 2001 From: Sam Bellen Date: Mon, 23 Mar 2020 08:47:58 +0100 Subject: [PATCH 232/456] Use clean url in link --- views/website/md/introduction.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/md/introduction.md b/views/website/md/introduction.md index 2f75e7c5..fe2143fa 100755 --- a/views/website/md/introduction.md +++ b/views/website/md/introduction.md @@ -88,7 +88,7 @@ The output is three Base64-URL strings separated by dots that can be easily pass The following shows a JWT that has the previous header and payload encoded, and it is signed with a secret. ![Encoded JWT](https://cdn.auth0.com/content/jwt/encoded-jwt3.png) -If you want to play with JWT and put these concepts into practice, you can use [jwt.io Debugger](https://jwt.io/index.html#debugger-io) to decode, verify, and generate JWTs. +If you want to play with JWT and put these concepts into practice, you can use [jwt.io Debugger](https://jwt.io/#debugger-io) to decode, verify, and generate JWTs. ![JWT.io Debugger](https://cdn.auth0.com/blog/legacy-app-auth/legacy-app-auth-5.png) From 067ee8cd88047fba355b15d1f3d5605636d92192 Mon Sep 17 00:00:00 2001 From: Yann Crumeyrolle Date: Wed, 1 Apr 2020 18:18:11 +0200 Subject: [PATCH 233/456] Add .Net library JsonWebToken --- views/website/libraries/0-.NET.json | 32 +++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/views/website/libraries/0-.NET.json b/views/website/libraries/0-.NET.json index 2e841745..e18eaffc 100644 --- a/views/website/libraries/0-.NET.json +++ b/views/website/libraries/0-.NET.json @@ -155,6 +155,38 @@ "gitHubRepoPath": "jwt-dotnet/jwt", "repoUrl": "https://github.com/jwt-dotnet/jwt", "installCommandHtml": "Install-Package
JWT" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true, + "eddsa": false + }, + "authorUrl": "https://github.com/ycrumeyrolle", + "authorName": "Yann Crumeyrolle", + "gitHubRepoPath": "ycrumeyrolle/jwt", + "repoUrl": "https://github.com/ycrumeyrolle/jwt", + "installCommandHtml": "Install-Package
JsonWebToken" } ] } From cbec674f871ecfef475964e69337a0ebb45e3220 Mon Sep 17 00:00:00 2001 From: Yann Crumeyrolle Date: Wed, 1 Apr 2020 23:07:58 +0200 Subject: [PATCH 234/456] Remove BR --- views/website/libraries/0-.NET.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/0-.NET.json b/views/website/libraries/0-.NET.json index e18eaffc..a3beef25 100644 --- a/views/website/libraries/0-.NET.json +++ b/views/website/libraries/0-.NET.json @@ -186,7 +186,7 @@ "authorName": "Yann Crumeyrolle", "gitHubRepoPath": "ycrumeyrolle/jwt", "repoUrl": "https://github.com/ycrumeyrolle/jwt", - "installCommandHtml": "Install-Package
JsonWebToken" + "installCommandHtml": "Install-Package JsonWebToken" } ] } From 068323c0f9d1fe4393b0ebfb90a3c904ff88804e Mon Sep 17 00:00:00 2001 From: Nicolas Mora Date: Thu, 9 Apr 2020 07:55:05 -0400 Subject: [PATCH 235/456] Add rhonabwy library --- views/website/libraries/20-C.json | 34 ++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/20-C.json b/views/website/libraries/20-C.json index 6613fcd4..3e092cf8 100644 --- a/views/website/libraries/20-C.json +++ b/views/website/libraries/20-C.json @@ -126,6 +126,38 @@ "gitHubRepoPath": "TomzBench/jsmn-web-tokens", "repoUrl": "https://github.com/TomzBench/jsmn-web-tokens", "installCommandHtml": "git clone https://github.com/TomzBench/jsmn-web-tokens.git && cd jsmn-web-tokens && cmake . && cmake --build . --target install" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true, + "EdDSA": true + }, + "authorUrl": "https://babelouest.github.io/", + "authorName": "babelouest", + "gitHubRepoPath": "babelouest/rhonabwy", + "repoUrl": "https://github.com/babelouest/rhonabwy", + "installCommandHtml": "git clone https://github.com/babelouest/rhonabwy.git && mkdir build cd build && cmake .. && cmake --build . --target install" } ] -} \ No newline at end of file +} From 8b8d60b77afaace5ed90a6f23b8f05d852109baf Mon Sep 17 00:00:00 2001 From: Nicolas Mora Date: Thu, 9 Apr 2020 07:56:47 -0400 Subject: [PATCH 236/456] Fix eddsa case --- views/website/libraries/20-C.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/20-C.json b/views/website/libraries/20-C.json index 3e092cf8..eee0d755 100644 --- a/views/website/libraries/20-C.json +++ b/views/website/libraries/20-C.json @@ -151,7 +151,7 @@ "ps256": true, "ps384": true, "ps512": true, - "EdDSA": true + "eddsa": true }, "authorUrl": "https://babelouest.github.io/", "authorName": "babelouest", From dceaa8b2f495c5a1057b0b7372aa78d1d284113d Mon Sep 17 00:00:00 2001 From: Nicolas Mora Date: Fri, 10 Apr 2020 09:31:32 -0400 Subject: [PATCH 237/456] Update rhonabwy claims support and installCommand --- views/website/libraries/20-C.json | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/views/website/libraries/20-C.json b/views/website/libraries/20-C.json index eee0d755..fa2c4388 100644 --- a/views/website/libraries/20-C.json +++ b/views/website/libraries/20-C.json @@ -132,13 +132,13 @@ "support": { "sign": true, "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, "hs256": true, "hs384": true, "hs512": true, @@ -157,7 +157,7 @@ "authorName": "babelouest", "gitHubRepoPath": "babelouest/rhonabwy", "repoUrl": "https://github.com/babelouest/rhonabwy", - "installCommandHtml": "git clone https://github.com/babelouest/rhonabwy.git && mkdir build cd build && cmake .. && cmake --build . --target install" + "installCommandHtml": "Download release package or install from source" } ] } From 03be71fbe3011e4a25e31d8b6d75be2f9f7fdf6c Mon Sep 17 00:00:00 2001 From: Daniel Date: Tue, 14 Apr 2020 14:46:44 +0200 Subject: [PATCH 238/456] Add joseswift --- views/website/libraries/19-Swift.json | 31 +++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/views/website/libraries/19-Swift.json b/views/website/libraries/19-Swift.json index c2373cef..ee588373 100644 --- a/views/website/libraries/19-Swift.json +++ b/views/website/libraries/19-Swift.json @@ -129,6 +129,37 @@ "repoUrl": "https://github.com/IBM-Swift/Swift-JWT", "installCommandHtml": ".package(url:\"https://github.com/IBM-Swift/Swift-JWT/", from: \"3.5.0\")" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": false, + "hs384": false, + "hs512": false, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true + }, + "authorUrl": "https://github.com/airsidemobile", + "authorName": "Airside", + "gitHubRepoPath": "airsidemobile/JOSESwift", + "repoUrl": "https://github.com/airsidemobile/JOSESwift", + "installCommandHtml": "pod 'JOSESwift'" } ] } From 45d982dda0f06480b4f84540f7af972be7162bf6 Mon Sep 17 00:00:00 2001 From: Sambego Date: Tue, 5 May 2020 16:06:02 +0200 Subject: [PATCH 239/456] Exclude the editor from heap analytics --- views/token-editor-common.pug | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/views/token-editor-common.pug b/views/token-editor-common.pug index 36637470..991402f1 100644 --- a/views/token-editor-common.pug +++ b/views/token-editor-common.pug @@ -8,10 +8,10 @@ small edit the payload and secret .tab-content - #encoded-jwt.box-content.current + #encoded-jwt.box-content.current(heap-ignore="true") .input.js-input include token-editor-warnings.pug - #decoded-jwt.box-content + #decoded-jwt.box-content(heap-ignore="true") .output .jwt-explained.jwt-header p.text-line HEADER: From f67bf6e9313447c141fd6c671560ccd8c2bc8368 Mon Sep 17 00:00:00 2001 From: mikerosner Date: Wed, 6 May 2020 12:14:42 -0400 Subject: [PATCH 240/456] Update Artifact name for - io.jsonwebtoken-jjwt Currently listed artifact version is 0.9.0. It looks like the repo owner changed the artifact name from jjwt to jjwt-root a while back: https://github.com/jwtk/jjwt/blob/master/pom.xml. There are newer versions to the jjwt-root artifact in maven. Before: https://mvnrepository.com/artifact/io.jsonwebtoken/jjwt After: https://mvnrepository.com/artifact/io.jsonwebtoken/jjwt-root --- views/website/libraries/3-Java.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/3-Java.json b/views/website/libraries/3-Java.json index ce33a31f..0ad487ac 100644 --- a/views/website/libraries/3-Java.json +++ b/views/website/libraries/3-Java.json @@ -126,7 +126,7 @@ "authorName": "Les Hazlewood", "gitHubRepoPath": "jwtk/jjwt", "repoUrl": "https://github.com/jwtk/jjwt", - "installCommandHtml": "maven: io.jsonwebtoken / jjwt / 0.9.0" + "installCommandHtml": "maven: io.jsonwebtoken / jjwt-root / 0.11.1" }, { "minimumVersion": null, From 295d2bd472b8446c036c708a59095f04ce007b0f Mon Sep 17 00:00:00 2001 From: nov Date: Mon, 1 Jun 2020 09:03:43 +0900 Subject: [PATCH 241/456] ES256K support --- views/website/libraries/6-Ruby.json | 4 +++- views/website/libraries/support/get-libs-data.js | 2 +- views/website/libraries/support/language-schema.js | 1 + views/website/libraries/template.pug | 5 ++++- 4 files changed, 9 insertions(+), 3 deletions(-) diff --git a/views/website/libraries/6-Ruby.json b/views/website/libraries/6-Ruby.json index 090fe54a..c9bf7f33 100644 --- a/views/website/libraries/6-Ruby.json +++ b/views/website/libraries/6-Ruby.json @@ -89,7 +89,9 @@ "es512": true, "ps256": true, "ps384": true, - "ps512": true + "ps512": true, + "eddsa": false, + "es256k": true }, "authorUrl": "https://github.com/nov", "authorName": "Nov Matake", diff --git a/views/website/libraries/support/get-libs-data.js b/views/website/libraries/support/get-libs-data.js index bfbcc0e9..e4b3c175 100644 --- a/views/website/libraries/support/get-libs-data.js +++ b/views/website/libraries/support/get-libs-data.js @@ -50,7 +50,7 @@ function getLibs() { orderedKeys = ['hs256', 'hs384', 'hs512', 'rs256', 'rs384', 'rs512', 'es256', 'es384', 'es512' - 'ps256', 'ps384', 'ps512', 'eddsa']; + 'ps256', 'ps384', 'ps512', 'eddsa', 'es256k']; for(let i = 0; i < orderedKeys.length; ++i) { r.support[orderedKeys[i]] = diff --git a/views/website/libraries/support/language-schema.js b/views/website/libraries/support/language-schema.js index 52d579ec..7fabbb68 100644 --- a/views/website/libraries/support/language-schema.js +++ b/views/website/libraries/support/language-schema.js @@ -86,6 +86,7 @@ module.exports = { ps384: { type: 'boolean' }, ps512: { type: 'boolean' }, eddsa: { type: 'boolean' }, + es256k: { type: 'boolean' }, } } } diff --git a/views/website/libraries/template.pug b/views/website/libraries/template.pug index 1fc80912..343c1975 100644 --- a/views/website/libraries/template.pug +++ b/views/website/libraries/template.pug @@ -84,7 +84,10 @@ article(data-accordion, class=`accordion ${lang.uniqueClass}`) p i(class=lib.support.eddsa ? 'icon-budicon-500' : (lib.support.eddsa !== undefined ? 'icon-budicon-501' : 'icon-unknown')) | EdDSA - + p + i(class=lib.support.es256k ? 'icon-budicon-500' : (lib.support.es256k !== undefined ? 'icon-budicon-501' : 'icon-unknown')) + | ES256K + .author-info .maintainer if lib.authorUrl From 297ae0a300022c92dae6c06076d2a1312e276c16 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Wed, 29 Jan 2020 15:02:43 +0100 Subject: [PATCH 242/456] feat: es256k tick --- views/website/libraries/1-Python.json | 3 ++- views/website/libraries/2-Node.js.json | 6 +++-- views/website/libraries/24-PHP.json | 8 ++++--- views/website/libraries/4-JavaScript.json | 3 ++- .../libraries/support/get-libs-data.js | 7 +++--- views/website/libraries/template.pug | 24 +++++++++---------- 6 files changed, 29 insertions(+), 22 deletions(-) diff --git a/views/website/libraries/1-Python.json b/views/website/libraries/1-Python.json index f0de596c..2f94d066 100644 --- a/views/website/libraries/1-Python.json +++ b/views/website/libraries/1-Python.json @@ -90,7 +90,8 @@ "ps256": true, "ps384": true, "ps512": true, - "eddsa": true + "eddsa": true, + "es256k": true }, "authorUrl": "https://github.com/simo5", "authorName": "Simo Sorce", diff --git a/views/website/libraries/2-Node.js.json b/views/website/libraries/2-Node.js.json index 757a2f47..08584714 100644 --- a/views/website/libraries/2-Node.js.json +++ b/views/website/libraries/2-Node.js.json @@ -28,7 +28,8 @@ "ps256": true, "ps384": true, "ps512": true, - "eddsa": false + "eddsa": false, + "es256k": false }, "authorUrl": "https://github.com/auth0", "authorName": "Auth0", @@ -60,7 +61,8 @@ "ps256": true, "ps384": true, "ps512": true, - "eddsa": true + "eddsa": true, + "es256k": true }, "authorUrl": "https://github.com/panva", "authorName": "Filip Skokan", diff --git a/views/website/libraries/24-PHP.json b/views/website/libraries/24-PHP.json index bf0bc9b6..a0645bb2 100644 --- a/views/website/libraries/24-PHP.json +++ b/views/website/libraries/24-PHP.json @@ -120,7 +120,8 @@ "es512": true, "ps256": true, "ps384": true, - "ps512": true + "ps512": true, + "es256k": false }, "authorUrl": "https://github.com/Spomky-Labs/jose", "authorName": "Spomky", @@ -182,8 +183,9 @@ "es512": true, "ps256": true, "ps384": true, - "ps512": true, - "eddsa": true + "ps512": true, + "eddsa": true, + "es256k": true }, "authorUrl": "https://github.com/Spomky", "authorName": "Spomky", diff --git a/views/website/libraries/4-JavaScript.json b/views/website/libraries/4-JavaScript.json index f2abb58a..25b4db71 100644 --- a/views/website/libraries/4-JavaScript.json +++ b/views/website/libraries/4-JavaScript.json @@ -87,7 +87,8 @@ "ps256": true, "ps384": true, "ps512": true, - "eddsa": false + "eddsa": false, + "es256k": false }, "authorUrl": "https://github.com/cisco", "authorName": "Cisco Systems", diff --git a/views/website/libraries/support/get-libs-data.js b/views/website/libraries/support/get-libs-data.js index e4b3c175..5df52911 100644 --- a/views/website/libraries/support/get-libs-data.js +++ b/views/website/libraries/support/get-libs-data.js @@ -48,9 +48,10 @@ function getLibs() { } orderedKeys = ['hs256', 'hs384', 'hs512', - 'rs256', 'rs384', 'rs512', - 'es256', 'es384', 'es512' - 'ps256', 'ps384', 'ps512', 'eddsa', 'es256k']; + 'rs256', 'rs384', 'rs512', + 'es256', 'es256k', 'es384', 'es512', + 'ps256', 'ps384', 'ps512', + 'eddsa']; for(let i = 0; i < orderedKeys.length; ++i) { r.support[orderedKeys[i]] = diff --git a/views/website/libraries/template.pug b/views/website/libraries/template.pug index 343c1975..519dcda3 100644 --- a/views/website/libraries/template.pug +++ b/views/website/libraries/template.pug @@ -54,6 +54,15 @@ article(data-accordion, class=`accordion ${lang.uniqueClass}`) p i(class=lib.support.hs512 ? 'icon-budicon-500' : 'icon-budicon-501') | HS512 + p + i(class=lib.support.ps256 ? 'icon-budicon-500' : (lib.support.ps256 !== undefined ? 'icon-budicon-501' : 'icon-unknown')) + | PS256 + p + i(class=lib.support.ps384 ? 'icon-budicon-500' : (lib.support.ps384 !== undefined ? 'icon-budicon-501' : 'icon-unknown')) + | PS384 + p + i(class=lib.support.ps512 ? 'icon-budicon-500' : (lib.support.ps512 !== undefined ? 'icon-budicon-501' : 'icon-unknown')) + | PS512 p i(class=lib.support.rs256 ? 'icon-budicon-500' : 'icon-budicon-501') | RS256 @@ -66,27 +75,18 @@ article(data-accordion, class=`accordion ${lang.uniqueClass}`) p i(class=lib.support.es256 ? 'icon-budicon-500' : 'icon-budicon-501') | ES256 + p + i(class=lib.support.es256k ? 'icon-budicon-500' : (lib.support.es256k !== undefined ? 'icon-budicon-501' : 'icon-unknown')) + | ES256K p i(class=lib.support.es384 ? 'icon-budicon-500' : 'icon-budicon-501') | ES384 p i(class=lib.support.es512 ? 'icon-budicon-500' : 'icon-budicon-501') | ES512 - p - i(class=lib.support.ps256 ? 'icon-budicon-500' : (lib.support.ps256 !== undefined ? 'icon-budicon-501' : 'icon-unknown')) - | PS256 - p - i(class=lib.support.ps384 ? 'icon-budicon-500' : (lib.support.ps384 !== undefined ? 'icon-budicon-501' : 'icon-unknown')) - | PS384 - p - i(class=lib.support.ps512 ? 'icon-budicon-500' : (lib.support.ps512 !== undefined ? 'icon-budicon-501' : 'icon-unknown')) - | PS512 p i(class=lib.support.eddsa ? 'icon-budicon-500' : (lib.support.eddsa !== undefined ? 'icon-budicon-501' : 'icon-unknown')) | EdDSA - p - i(class=lib.support.es256k ? 'icon-budicon-500' : (lib.support.es256k !== undefined ? 'icon-budicon-501' : 'icon-unknown')) - | ES256K .author-info .maintainer From 93d11b2d4762e74a05b778ca24d5eb8a0f32b3d3 Mon Sep 17 00:00:00 2001 From: Renato Santos Date: Sun, 21 Jun 2020 11:10:25 -0300 Subject: [PATCH 243/456] Update 5-Perl.json Perl Crypt::JWT distribution supports ES256K since 0.027 2020-06-05 EdDSA since 0.026 2019-02-02 --- views/website/libraries/5-Perl.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/5-Perl.json b/views/website/libraries/5-Perl.json index 13e28668..c25f9068 100644 --- a/views/website/libraries/5-Perl.json +++ b/views/website/libraries/5-Perl.json @@ -27,7 +27,9 @@ "es512": true, "ps256": true, "ps384": true, - "ps512": true + "ps512": true, + "es256k": true, + "EdDSA": true }, "authorUrl": "https://github.com/DCIT", "authorName": "Karel Miko", From afad1aa6203600659b0aa1b23c185400e0830695 Mon Sep 17 00:00:00 2001 From: Renato Santos Date: Mon, 22 Jun 2020 13:00:09 -0300 Subject: [PATCH 244/456] Change EdDSA to lowercase! Sorry! --- views/website/libraries/5-Perl.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/5-Perl.json b/views/website/libraries/5-Perl.json index c25f9068..c9333a82 100644 --- a/views/website/libraries/5-Perl.json +++ b/views/website/libraries/5-Perl.json @@ -29,7 +29,7 @@ "ps384": true, "ps512": true, "es256k": true, - "EdDSA": true + "eddsa": true }, "authorUrl": "https://github.com/DCIT", "authorName": "Karel Miko", From 855e712c344d32c772af328dc860b3f966d7ff47 Mon Sep 17 00:00:00 2001 From: Scott Mathson Date: Wed, 1 Jul 2020 12:24:22 -0600 Subject: [PATCH 245/456] adding alt attribute to jwt logo asset --- views/website/index.pug | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/views/website/index.pug b/views/website/index.pug index 00cc1f5c..f8981b34 100644 --- a/views/website/index.pug +++ b/views/website/index.pug @@ -8,8 +8,8 @@ block content span a.brand(href='http://github.com/') - img(src='http://github.com/img/pic_logo.svg').icon - img(src='http://github.com/img/logo.svg').logo + img(src='http://github.com/img/pic_logo.svg' alt='JWT logo').icon + img(src='http://github.com/img/logo.svg' alt='JWT logo').logo nav.menu a(href='#debugger-io').scrollto Debugger From 8ad7c2b050867bd04b2cb0e7655ebcb528c46080 Mon Sep 17 00:00:00 2001 From: Scott Mathson Date: Wed, 1 Jul 2020 12:25:27 -0600 Subject: [PATCH 246/456] updating alt with jwt logo mark context --- views/website/index.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/index.pug b/views/website/index.pug index f8981b34..6bd230a4 100644 --- a/views/website/index.pug +++ b/views/website/index.pug @@ -21,7 +21,7 @@ block content .social a.a0(href='https://auth0.com/why-auth0?utm_source=jwtio&utm_medium=navbar_whats_auth0&utm_campaign=jwt_nav_cta_12_2019', target='_blank') span.by-text Crafted by - img(src='http://github.com/img/pic_logo_ft.svg', alt='Token Based Authentication') + img(src='http://github.com/img/pic_logo_ft.svg', alt='JWT logo mark - Token Based Authentication') span.crafted-by__question-mark ? a.supported(href='https://auth0.com/?utm_source=jwtio&utm_campaign=craftedby', target="_blank") From f5c1ed0b29d42361d558e82e9bdd000ae1a508ea Mon Sep 17 00:00:00 2001 From: Scott Mathson Date: Wed, 1 Jul 2020 12:26:23 -0600 Subject: [PATCH 247/456] updating logo mark alt attribute location --- views/website/index.pug | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/views/website/index.pug b/views/website/index.pug index 6bd230a4..08b23e7d 100644 --- a/views/website/index.pug +++ b/views/website/index.pug @@ -21,7 +21,7 @@ block content .social a.a0(href='https://auth0.com/why-auth0?utm_source=jwtio&utm_medium=navbar_whats_auth0&utm_campaign=jwt_nav_cta_12_2019', target='_blank') span.by-text Crafted by - img(src='http://github.com/img/pic_logo_ft.svg', alt='JWT logo mark - Token Based Authentication') + img(src='http://github.com/img/pic_logo_ft.svg', alt='Token Based Authentication') span.crafted-by__question-mark ? a.supported(href='https://auth0.com/?utm_source=jwtio&utm_campaign=craftedby', target="_blank") @@ -31,7 +31,7 @@ block content section.banner-jwt .container a.logo(href='http://github.com/') - img(src='http://github.com/img/pic_logo.svg', alt='Token Based Authentication') + img(src='http://github.com/img/pic_logo.svg', alt='JWT logo mark - Token Based Authentication') p | JSON Web Tokens are an open, industry standard  From 2af184100fedcac91d6478f71b332a5eae28d48f Mon Sep 17 00:00:00 2001 From: Scott Mathson Date: Wed, 1 Jul 2020 12:27:18 -0600 Subject: [PATCH 248/456] adding crafted by auth0 alt attribute context --- views/website/index.pug | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/views/website/index.pug b/views/website/index.pug index 08b23e7d..bd27b0dd 100644 --- a/views/website/index.pug +++ b/views/website/index.pug @@ -21,12 +21,12 @@ block content .social a.a0(href='https://auth0.com/why-auth0?utm_source=jwtio&utm_medium=navbar_whats_auth0&utm_campaign=jwt_nav_cta_12_2019', target='_blank') span.by-text Crafted by - img(src='http://github.com/img/pic_logo_ft.svg', alt='Token Based Authentication') + img(src='http://github.com/img/pic_logo_ft.svg', alt='Crafted by Auth0 - JWT.io Token Based Authentication') span.crafted-by__question-mark ? a.supported(href='https://auth0.com/?utm_source=jwtio&utm_campaign=craftedby', target="_blank") | Supported by - img(src='http://github.com/img/ico_logo.svg', alt='Token Based Authentication') + img(src='http://github.com/img/ico_logo.svg', alt='Crafted by Auth0 - JWT.io Token Based Authentication') section.banner-jwt .container From 79ebdcecf9f4407b421e6d69cb2a94deb0f610a9 Mon Sep 17 00:00:00 2001 From: Scott Mathson Date: Wed, 1 Jul 2020 12:41:22 -0600 Subject: [PATCH 249/456] replacing span with label element with for attribute --- views/website/token-editor.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/token-editor.pug b/views/website/token-editor.pug index 76e5aef0..7632a8cf 100644 --- a/views/website/token-editor.pug +++ b/views/website/token-editor.pug @@ -10,7 +10,7 @@ section#debugger-io.debugger-jwt .selections .algorithm - span Algorithm + label(for='algorithm-select') Algorithm .jwt-select include ../token-editor-algorithms.pug From 643f10460782010d5449d497206bde07b7ef28fa Mon Sep 17 00:00:00 2001 From: Scott Mathson Date: Wed, 1 Jul 2020 12:55:49 -0600 Subject: [PATCH 250/456] replacing span with label element with for attribute on libraries --- views/website/libraries.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries.pug b/views/website/libraries.pug index dda33d78..0cd137cc 100644 --- a/views/website/libraries.pug +++ b/views/website/libraries.pug @@ -4,7 +4,7 @@ section#libraries-io.libraries-jwt h1 Libraries for Token Signing/Verification .filter - span Filter by + label(for='libraries-select') Filter by .jwt-select select#libraries-select option(value='*', selected='') All From 679494d989fda1b58757725b848eb46f5b7ee4ae Mon Sep 17 00:00:00 2001 From: Scott Mathson Date: Wed, 1 Jul 2020 13:02:44 -0600 Subject: [PATCH 251/456] adding alt and title to minimumVersion question mark icon linking to blog post --- views/website/libraries/template.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/template.pug b/views/website/libraries/template.pug index 519dcda3..369b93ee 100644 --- a/views/website/libraries/template.pug +++ b/views/website/libraries/template.pug @@ -7,7 +7,7 @@ article(data-accordion, class=`accordion ${lang.uniqueClass}`) .version p Minimum Version #{lib.minimumVersion} a(href='https://auth0.com/blog/critical-vulnerabilities-in-json-web-token-libraries/', target='_blank', data-metrics-lib-id=lib.repoUrl) - img(src='http://github.com/img/ico_question.svg') + img(src='http://github.com/img/ico_question.svg' alt='question mark icon' title='Learn more about vulnerabilities in JWT libraries') div(class={ 'panel-body': true, mversion: !!lib.minimumVersion }) .column p From edde7dea582837ce584f525623dc1ceaa49e92fe Mon Sep 17 00:00:00 2001 From: Scott Mathson Date: Wed, 1 Jul 2020 13:07:41 -0600 Subject: [PATCH 252/456] adding alt attributes and text to all lang cards logo file images --- views/website/libraries/template.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/template.pug b/views/website/libraries/template.pug index 369b93ee..7761468e 100644 --- a/views/website/libraries/template.pug +++ b/views/website/libraries/template.pug @@ -1,6 +1,6 @@ article(data-accordion, class=`accordion ${lang.uniqueClass}`) .panel-heading(data-control) - img(src=lang.image) + img(src=lang.image alt=`${lang.name} logo`) h3(style=`background-color: ${lang.bgColor}`) #{lang.name} .panel-wrap(data-content) if lib.minimumVersion From 5a2d9c681f87bc8b40266026e0e2c3222e4bcd1f Mon Sep 17 00:00:00 2001 From: Scott Mathson Date: Wed, 1 Jul 2020 13:16:16 -0600 Subject: [PATCH 253/456] adding alt text to jwt brand assets imagery, badges, logo files --- views/website/assets.pug | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/views/website/assets.pug b/views/website/assets.pug index c04b9c0e..50c2dc29 100644 --- a/views/website/assets.pug +++ b/views/website/assets.pug @@ -5,14 +5,14 @@ section.sources h2 Badges .hold a(href='http://jwt.io/img/badge.svg', target='_blank') - img(src='http://github.com/img/badge.svg') + img(src='http://github.com/img/badge.svg' alt='View on JWT.io badge logo') .text-hold a(href='http://jwt.io/img/badge.svg', target='_blank') i.icon-budicon-722 p http://jwt.io/img/badge.svg .hold a(href='http://jwt.io/img/badge-compatible.svg', target='_blank') - img(src='http://github.com/img/badge-compatible.svg') + img(src='http://github.com/img/badge-compatible.svg' alt='JWT compatible badge logo') .text-hold a(href='http://jwt.io/img/badge-compatible.svg', target='_blank') i.icon-budicon-722 @@ -21,20 +21,20 @@ section.sources h2 Logotype .hold a(href='http://jwt.io/img/icon.svg', target='_blank') - img(src='http://github.com/img/icon.svg') + img(src='http://github.com/img/icon.svg' alt='JWT logo mark icon') .text-hold a(href='http://jwt.io/img/icon.svg', target='_blank') i.icon-budicon-722 p http://jwt.io/img/icon.svg .hold a(href='http://jwt.io/img/logo-asset.svg', target='_blank') - img(src='http://github.com/img/logo-asset.svg') + img(src='http://github.com/img/logo-asset.svg' alt='JWT logo') .text-hold a(href='http://jwt.io/img/logo-asset.svg', target='_blank') i.icon-budicon-722 p http://jwt.io/img/logo-asset.svg .column.tshirt h2 Store - img(src='http://github.com/img/pic_tshirt.png') + img(src='http://github.com/img/pic_tshirt.png' alt='JWT logo mark t-shirt') a.buy(href='http://swag.auth0.com/', target='_blank') Buy T-Shirt \ No newline at end of file From 66d112968ed576381aeeaf6b3f701fcafeb6f4e2 Mon Sep 17 00:00:00 2001 From: Scott Mathson Date: Wed, 1 Jul 2020 13:16:29 -0600 Subject: [PATCH 254/456] adding alt to counter section auth0 logo file --- views/website/counter.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/counter.pug b/views/website/counter.pug index c98a0acc..915a1bac 100644 --- a/views/website/counter.pug +++ b/views/website/counter.pug @@ -1,6 +1,6 @@ .tokens-created .container - img(src='http://github.com/img/pic_logo_ft.svg') + img(src='http://github.com/img/pic_logo_ft.svg' alt='Auth0 logo') p JWT.io is brought to you by a(href='https://auth0.com/signup', target="_blank") Auth0 p Securely implement authentication with JWTs using Auth0 on any stack and any device in less than 10 minutes. From 34da8eebc1f8dbefdd66ac4b6738bc5ec5b85c3a Mon Sep 17 00:00:00 2001 From: Scott Mathson Date: Wed, 1 Jul 2020 13:19:15 -0600 Subject: [PATCH 255/456] updating alt on auth0 logo supported by references throughout --- views/extension/index.pug | 2 +- views/website/index.pug | 2 +- views/website/introduction.pug | 2 +- views/website/layout.pug | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/views/extension/index.pug b/views/extension/index.pug index 28c92576..46a32922 100644 --- a/views/extension/index.pug +++ b/views/extension/index.pug @@ -38,7 +38,7 @@ block content .pull-left a(target="_blank" href="https://auth0.com/?utm_source=jwt-ext&utm_campaign=badge") | Supported by   - img(src="http://github.com/img/ico_logo.svg") + img(src="http://github.com/img/ico_logo.svg" alt='Supported by Auth0 - JWT.io Token Based Authentication') a  -  a.keep-deco(href='https://github.com/jsonwebtoken/jsonwebtoken.github.io/blob/master/LICENSE.txt', target="_blank") License diff --git a/views/website/index.pug b/views/website/index.pug index bd27b0dd..0bf40546 100644 --- a/views/website/index.pug +++ b/views/website/index.pug @@ -26,7 +26,7 @@ block content a.supported(href='https://auth0.com/?utm_source=jwtio&utm_campaign=craftedby', target="_blank") | Supported by - img(src='http://github.com/img/ico_logo.svg', alt='Crafted by Auth0 - JWT.io Token Based Authentication') + img(src='http://github.com/img/ico_logo.svg', alt='Supported by Auth0 - JWT.io Token Based Authentication') section.banner-jwt .container diff --git a/views/website/introduction.pug b/views/website/introduction.pug index 20773463..d86885e9 100644 --- a/views/website/introduction.pug +++ b/views/website/introduction.pug @@ -53,7 +53,7 @@ block content a.supported(href='https://auth0.com/', target="_blank") | Supported by - img(src='http://github.com/img/ico_logo.svg') + img(src='http://github.com/img/ico_logo.svg' alt='Supported by Auth0 - JWT.io Token Based Authentication') section.banner-jwt .container diff --git a/views/website/layout.pug b/views/website/layout.pug index dccaeeb6..e6727527 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -60,7 +60,7 @@ html(lang='en') .column a(href='https://auth0.com/', target="_blank") | Supported by - img(src='http://github.com/img/ico_logo.svg') + img(src='http://github.com/img/ico_logo.svg' alt='Supported by Auth0 - JWT.io Token Based Authentication') .column.pull-request span Missing something? a(href='https://github.com/jsonwebtoken/jsonwebtoken.github.io/tree/master/views', target="_blank") Send a Pull Request From 6d49d841d487d109f0210fd298328d606557ff18 Mon Sep 17 00:00:00 2001 From: Scott Mathson Date: Wed, 1 Jul 2020 13:20:59 -0600 Subject: [PATCH 256/456] adding alt attribute throughout other layouts and where missing --- views/website/introduction.pug | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/views/website/introduction.pug b/views/website/introduction.pug index d86885e9..722107ae 100644 --- a/views/website/introduction.pug +++ b/views/website/introduction.pug @@ -35,8 +35,8 @@ block content span a.brand(href='http://github.com/') - img(src='http://github.com/img/pic_logo.svg').icon - img(src='http://github.com/img/logo.svg').logo + img(src='http://github.com/img/pic_logo.svg' alt='JWT logo').icon + img(src='http://github.com/img/logo.svg' alt='JWT logo').logo nav.menu a(href='http://github.com/#debugger-io').scrollto Debugger @@ -48,7 +48,7 @@ block content .social a.a0(href='https://auth0.com/why-auth0?utm_source=jwtio&utm_medium=navbar_whats_auth0&utm_campaign=jwt_nav_cta_12_2019', target='_blank') span.by-text Crafted by - img(src='http://github.com/img/pic_logo_ft.svg', alt='Token Based Authentication') + img(src='http://github.com/img/pic_logo_ft.svg', alt='Crafted by Auth0 - Token Based Authentication') span.crafted-by__question-mark ? a.supported(href='https://auth0.com/', target="_blank") @@ -58,7 +58,7 @@ block content section.banner-jwt .container a.logo(href='http://github.com/') - img(src='http://github.com/img/pic_logo.svg') + img(src='http://github.com/img/pic_logo.svg' alt='JWT logo') h1 Introduction to JSON Web Tokens From 778844b40198f6cc27cea2369372a1f6d3d7cb40 Mon Sep 17 00:00:00 2001 From: Scott Mathson Date: Wed, 1 Jul 2020 13:25:22 -0600 Subject: [PATCH 257/456] adding title attribute with descriptive text to assets link section --- views/website/assets.pug | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/views/website/assets.pug b/views/website/assets.pug index 50c2dc29..a70fd96b 100644 --- a/views/website/assets.pug +++ b/views/website/assets.pug @@ -4,33 +4,33 @@ section.sources .column.badges h2 Badges .hold - a(href='http://jwt.io/img/badge.svg', target='_blank') + a(href='http://jwt.io/img/badge.svg', target='_blank' title='Download View on JWT.io badge logo') img(src='http://github.com/img/badge.svg' alt='View on JWT.io badge logo') .text-hold - a(href='http://jwt.io/img/badge.svg', target='_blank') + a(href='http://jwt.io/img/badge.svg', target='_blank' title='Download View on JWT.io badge logo') i.icon-budicon-722 p http://jwt.io/img/badge.svg .hold - a(href='http://jwt.io/img/badge-compatible.svg', target='_blank') + a(href='http://jwt.io/img/badge-compatible.svg', target='_blank' title='Download JWT compatible badge logo') img(src='http://github.com/img/badge-compatible.svg' alt='JWT compatible badge logo') .text-hold - a(href='http://jwt.io/img/badge-compatible.svg', target='_blank') + a(href='http://jwt.io/img/badge-compatible.svg', target='_blank' title='Download JWT compatible badge logo') i.icon-budicon-722 p http://jwt.io/img/badge-compatible.svg .column.logotype h2 Logotype .hold - a(href='http://jwt.io/img/icon.svg', target='_blank') + a(href='http://jwt.io/img/icon.svg', target='_blank' title='Download JWT logo mark icon') img(src='http://github.com/img/icon.svg' alt='JWT logo mark icon') .text-hold - a(href='http://jwt.io/img/icon.svg', target='_blank') + a(href='http://jwt.io/img/icon.svg', target='_blank' title='Download JWT logo mark icon') i.icon-budicon-722 p http://jwt.io/img/icon.svg .hold - a(href='http://jwt.io/img/logo-asset.svg', target='_blank') + a(href='http://jwt.io/img/logo-asset.svg', target='_blank' title='Download JWT logo') img(src='http://github.com/img/logo-asset.svg' alt='JWT logo') .text-hold - a(href='http://jwt.io/img/logo-asset.svg', target='_blank') + a(href='http://jwt.io/img/logo-asset.svg', target='_blank' title='Download JWT logo') i.icon-budicon-722 p http://jwt.io/img/logo-asset.svg .column.tshirt From fe9dab7764badd8085c93af5abfc8ab2414fa13a Mon Sep 17 00:00:00 2001 From: Scott Mathson Date: Wed, 1 Jul 2020 15:37:42 -0600 Subject: [PATCH 258/456] updating non-descriptive learn more cta to blog post --- views/website/libraries.pug | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/views/website/libraries.pug b/views/website/libraries.pug index 0cd137cc..3aa27a19 100644 --- a/views/website/libraries.pug +++ b/views/website/libraries.pug @@ -16,10 +16,9 @@ section#libraries-io.libraries-jwt option(value=`.${lang.uniqueClass}`) #{lang.name} .warning - b Warning: - | Critical vulnerabilities in JSON Web Token libraries with asymmetric keys. - a(href='https://auth0.com/blog/critical-vulnerabilities-in-json-web-token-libraries/') - | Learn more + b Warning: + a(href='https://auth0.com/blog/critical-vulnerabilities-in-json-web-token-libraries/' title='Learn more about JWT vulnerabilities') Learn more about critical vulnerabilities + | in JSON Web Token libraries with asymmetric keys. svg(height='48', viewbox='0 0 48 48', width='48', xmlns='http://www.w3.org/2000/svg') path(d='M-838-2232H562v3600H-838z', fill='none') From baa0495d76fed5609a4b87bffcc497cc839f325f Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 2 Jul 2020 15:24:56 +0200 Subject: [PATCH 259/456] Add sitemap XML --- Gruntfile.js | 507 ++++++++++++++++++++++++++------------------------- sitemap.xml | 13 ++ 2 files changed, 268 insertions(+), 252 deletions(-) create mode 100644 sitemap.xml diff --git a/Gruntfile.js b/Gruntfile.js index 3c2de48a..5fa53c56 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -1,277 +1,280 @@ -const extensionManifest = require('./manifest.json'); -const getLanguages = - require('./views/website/libraries/support/get-languages.js'); +const extensionManifest = require("./manifest.json"); +const getLanguages = require("./views/website/libraries/support/get-languages.js"); -module.exports = grunt => { - grunt.loadNpmTasks('grunt-contrib-copy'); - grunt.loadNpmTasks('grunt-contrib-stylus'); - grunt.loadNpmTasks('grunt-contrib-pug'); - grunt.loadNpmTasks('grunt-webpack'); - grunt.loadNpmTasks('grunt-contrib-watch'); - grunt.loadNpmTasks('grunt-contrib-clean'); - grunt.loadNpmTasks('grunt-mocha-test'); - grunt.loadNpmTasks('grunt-contrib-connect'); - grunt.loadNpmTasks('grunt-exec'); - grunt.loadNpmTasks('grunt-crx'); +module.exports = (grunt) => { + grunt.loadNpmTasks("grunt-contrib-copy"); + grunt.loadNpmTasks("grunt-contrib-stylus"); + grunt.loadNpmTasks("grunt-contrib-pug"); + grunt.loadNpmTasks("grunt-webpack"); + grunt.loadNpmTasks("grunt-contrib-watch"); + grunt.loadNpmTasks("grunt-contrib-clean"); + grunt.loadNpmTasks("grunt-mocha-test"); + grunt.loadNpmTasks("grunt-contrib-connect"); + grunt.loadNpmTasks("grunt-exec"); + grunt.loadNpmTasks("grunt-crx"); - grunt.initConfig({ - clean: { - website: [ 'dist/website' ], - extension: ['dist/extension'] - }, + grunt.initConfig({ + clean: { + website: ["dist/website"], + extension: ["dist/extension"], + }, - copy: { - website: { - files: [{ - expand: true, - cwd: 'img/website', - src: ['**'], - dest: 'dist/website/img' - }, { - expand: true, - src: ['fonts/**', 'opensearch.xml'], - dest: 'dist/website' - }, { - expand: true, - flatten: true, - src: [ - 'node_modules/bootstrap/dist/css/bootstrap.min.css', - 'node_modules/codemirror/lib/codemirror.css', - 'node_modules/codemirror/addon/lint/lint.css', - 'css/budicon.css', - 'css/google-roboto-mono.css' - ], - dest: 'dist/website/css/' - }] - }, - extension: { - files: [{ - expand: true, - flatten: true, - src: ['manifest.json', 'html/extension/bg.html'], - dest: 'dist/extension' - }, { - expand: true, - cwd: 'img/extension', - src: ['**'], - dest: 'dist/extension/img' - }, { - expand: true, - src: ['fonts/**'], - dest: 'dist/extension' - }, { - expand: true, - flatten: true, - src: [ - 'node_modules/bootstrap/dist/css/bootstrap.min.css', - 'node_modules/codemirror/lib/codemirror.css', - 'node_modules/codemirror/addon/lint/lint.css', - 'css/budicon.css', - 'css/google-roboto-mono.css' - ], - dest: 'dist/extension/css/' - }] - } - }, + copy: { + website: { + files: [{ + expand: true, + cwd: "img/website", + src: ["**"], + dest: "dist/website/img", + }, + { + expand: true, + src: ["fonts/**", "opensearch.xml"], + dest: "dist/website", + }, + { + expand: true, + flatten: true, + src: [ + "node_modules/bootstrap/dist/css/bootstrap.min.css", + "node_modules/codemirror/lib/codemirror.css", + "node_modules/codemirror/addon/lint/lint.css", + "css/budicon.css", + "css/google-roboto-mono.css", + ], + dest: "dist/website/css/", + }, + { + src: ["sitemap.xml"], + dest: "dist/website/", + }, + ], + }, + extension: { + files: [{ + expand: true, + flatten: true, + src: ["manifest.json", "html/extension/bg.html"], + dest: "dist/extension", + }, + { + expand: true, + cwd: "img/extension", + src: ["**"], + dest: "dist/extension/img", + }, + { + expand: true, + src: ["fonts/**"], + dest: "dist/extension", + }, + { + expand: true, + flatten: true, + src: [ + "node_modules/bootstrap/dist/css/bootstrap.min.css", + "node_modules/codemirror/lib/codemirror.css", + "node_modules/codemirror/addon/lint/lint.css", + "css/budicon.css", + "css/google-roboto-mono.css", + ], + dest: "dist/extension/css/", + }, + ], + }, + }, - crx: { - pack: { - src: "dist/extension/**/*", - dest: 'dist/chrome-jwt-debugger-extension-v' + - `${extensionManifest.version}.zip` - } - }, + crx: { + pack: { + src: "dist/extension/**/*", + dest: "dist/chrome-jwt-debugger-extension-v" + + `${extensionManifest.version}.zip`, + }, + }, - exec: { - firefoxExtensionPack: { - command: 'node_modules/web-ext/bin/web-ext build ' + - '--source-dir=dist/extension --artifacts-dir=dist ' + - '--overwrite-dest' - }, - renameFirefoxExtension: { - command: `mv dist/jwt_debugger-${extensionManifest.version}.zip ` + - 'dist/firefox-jwt-debugger-extension-' + - `v${extensionManifest.version}.zip` - } - }, + exec: { + firefoxExtensionPack: { + command: "node_modules/web-ext/bin/web-ext build " + + "--source-dir=dist/extension --artifacts-dir=dist " + + "--overwrite-dest", + }, + renameFirefoxExtension: { + command: `mv dist/jwt_debugger-${extensionManifest.version}.zip ` + + "dist/firefox-jwt-debugger-extension-" + + `v${extensionManifest.version}.zip`, + }, + }, - stylus: { - website: { - files: { - 'dist/website/css/index.css': 'stylus/website/index.styl' - } - }, - extension: { - files: { - 'dist/extension/css/index.css': 'stylus/extension/index.styl' - } - } - }, + stylus: { + website: { + files: { + "dist/website/css/index.css": "stylus/website/index.styl", + }, + }, + extension: { + files: { + "dist/extension/css/index.css": "stylus/extension/index.styl", + }, + }, + }, - pug: { - website: { - options: { - //pretty: true, - data: { - languages: getLanguages() - } + pug: { + website: { + options: { + //pretty: true, + data: { + languages: getLanguages(), + }, + }, + files: { + "dist/website/index.html": "views/website/index.pug", + "dist/website/introduction/index.html": "views/website/introduction.pug", + }, + }, + extension: { + files: { + "dist/extension/index.html": "views/extension/index.pug", + }, + }, }, - files: { - 'dist/website/index.html': 'views/website/index.pug', - 'dist/website/introduction/index.html': - 'views/website/introduction.pug' - } - }, - extension: { - files: { - 'dist/extension/index.html': 'views/extension/index.pug' - } - } - }, - webpack: { - websiteProd: require('./webpack.website-prod.js'), - websiteDev: require('./webpack.website-dev.js'), - extensionProd: require('./webpack.extension-prod.js'), - extensionDev: require('./webpack.extension-dev.js'), - unitTests: require('./webpack.website-unit-tests.js') - }, + webpack: { + websiteProd: require("./webpack.website-prod.js"), + websiteDev: require("./webpack.website-dev.js"), + extensionProd: require("./webpack.extension-prod.js"), + extensionDev: require("./webpack.extension-dev.js"), + unitTests: require("./webpack.website-unit-tests.js"), + }, - watch: { - websiteSrc: { - files: ['src/*.js', 'src/website/**', 'src/editor/**'], - tasks: 'webpack:websiteDev' - }, - extensionSrc: { - files: ['src/*.js', 'src/extension/**', 'src/editor/**'], - tasks: 'webpack:extensionDev' - }, - websiteImg: { - files: [ 'img/website/**' ], - tasks: 'copy:website' - }, - extensionImg: { - files: [ 'img/extension/**' ], - tasks: 'copy:extension' - }, - opensearch: { - files: 'opensearch.xml', - tasks: 'copy:website' - }, - assets: { - files: [ - 'fonts/**', - 'node_modules/bootstrap/dist/css/bootstrap.min.css', - 'node_modules/codemirror/lib/codemirror.css', - 'node_modules/codemirror/addon/lint/lint.css', - 'css/budicon.css' - ], - tasks: 'copy' - }, - websiteViews: { - files: [ - 'stylus/*.styl', - 'stylus/website/**', - 'views/*.pug', - 'views/website/**' - ], - tasks: ['build-website-views'] - }, - extensionViews: { - files: [ - 'stylus/*.styl', - 'stylus/extension/**', - // Yes, we still share styles with the website, it's really hard - // to refactor them out without breaking stuff - 'stylus/website/**', - 'views/*.pug', - 'views/extension/**' - ], - tasks: ['build-extension-views'] - } - }, + watch: { + websiteSrc: { + files: ["src/*.js", "src/website/**", "src/editor/**"], + tasks: "webpack:websiteDev", + }, + extensionSrc: { + files: ["src/*.js", "src/extension/**", "src/editor/**"], + tasks: "webpack:extensionDev", + }, + websiteImg: { + files: ["img/website/**"], + tasks: "copy:website", + }, + extensionImg: { + files: ["img/extension/**"], + tasks: "copy:extension", + }, + opensearch: { + files: "opensearch.xml", + tasks: "copy:website", + }, + assets: { + files: [ + "fonts/**", + "node_modules/bootstrap/dist/css/bootstrap.min.css", + "node_modules/codemirror/lib/codemirror.css", + "node_modules/codemirror/addon/lint/lint.css", + "css/budicon.css", + ], + tasks: "copy", + }, + websiteViews: { + files: [ + "stylus/*.styl", + "stylus/website/**", + "views/*.pug", + "views/website/**", + ], + tasks: ["build-website-views"], + }, + extensionViews: { + files: [ + "stylus/*.styl", + "stylus/extension/**", + // Yes, we still share styles with the website, it's really hard + // to refactor them out without breaking stuff + "stylus/website/**", + "views/*.pug", + "views/extension/**", + ], + tasks: ["build-extension-views"], + }, + }, - mochaTest: { - unit: { - options: {}, - src: ['dist/test/unit-tests.js'] - }, - functional: { - options: { - // Higher default timeout to account for some animations - timeout: 10000 + mochaTest: { + unit: { + options: {}, + src: ["dist/test/unit-tests.js"], + }, + functional: { + options: { + // Higher default timeout to account for some animations + timeout: 10000, + }, + src: ["test/functional/**.js"], + }, }, - src: ['test/functional/**.js'] - } - }, - connect: { - website: { - options: { - hostname: '127.0.0.1', - base: 'dist/website', - } - } - }, - }); + connect: { + website: { + options: { + hostname: "127.0.0.1", + base: "dist/website", + }, + }, + }, + }); - grunt.registerTask('build-website-views', [ - 'stylus:website', - 'pug:website' - ]); + grunt.registerTask("build-website-views", ["stylus:website", "pug:website"]); - grunt.registerTask('build-extension-views', [ - 'stylus:extension', - 'pug:extension' - ]); + grunt.registerTask("build-extension-views", [ + "stylus:extension", + "pug:extension", + ]); - grunt.registerTask('build-website', [ - 'clean:website', - 'copy:website', - 'build-website-views', - 'webpack:websiteProd' - ]); + grunt.registerTask("build-website", [ + "clean:website", + "copy:website", + "build-website-views", + "webpack:websiteProd", + ]); - grunt.registerTask('build-website-dev', [ - 'clean:website', - 'copy:website', - 'build-website-views', - 'webpack:websiteDev' - ]); + grunt.registerTask("build-website-dev", [ + "clean:website", + "copy:website", + "build-website-views", + "webpack:websiteDev", + ]); - grunt.registerTask('build-extension', [ - 'clean:extension', - 'copy:extension', - 'build-extension-views', - 'webpack:extensionProd', - 'crx:pack', - 'exec:firefoxExtensionPack', - 'exec:renameFirefoxExtension' - ]); + grunt.registerTask("build-extension", [ + "clean:extension", + "copy:extension", + "build-extension-views", + "webpack:extensionProd", + "crx:pack", + "exec:firefoxExtensionPack", + "exec:renameFirefoxExtension", + ]); - grunt.registerTask('build-extension-dev', [ - 'clean:extension', - 'copy:extension', - 'build-extension-views', - 'webpack:extensionDev' - ]); + grunt.registerTask("build-extension-dev", [ + "clean:extension", + "copy:extension", + "build-extension-views", + "webpack:extensionDev", + ]); - grunt.registerTask('build', ['build-website', 'build-extension']); + grunt.registerTask("build", ["build-website", "build-extension"]); - grunt.registerTask('build-dev', [ - 'build-website-dev', - 'build-extension-dev' - ]); + grunt.registerTask("build-dev", ["build-website-dev", "build-extension-dev"]); - grunt.registerTask('unit-tests', ['webpack:unitTests', 'mochaTest:unit']); + grunt.registerTask("unit-tests", ["webpack:unitTests", "mochaTest:unit"]); - grunt.registerTask('functional-tests', [ - 'build-website-dev', - 'connect:website', - 'mochaTest:functional' - ]); + grunt.registerTask("functional-tests", [ + "build-website-dev", + "connect:website", + "mochaTest:functional", + ]); - grunt.registerTask('test', ['unit-tests', 'functional-tests']); + grunt.registerTask("test", ["unit-tests", "functional-tests"]); - grunt.registerTask('default', ['build-dev', 'connect:website', 'watch']); -}; + grunt.registerTask("default", ["build-dev", "connect:website", "watch"]); +}; \ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml new file mode 100644 index 00000000..c5993ed7 --- /dev/null +++ b/sitemap.xml @@ -0,0 +1,13 @@ + + + + https://jwt.io/ + 2020-07-02T07:37:12+00:00 + 1.00 + + + https://jwt.io/introduction/ + 2020-07-02T07:37:12+00:00 + 0.80 + + \ No newline at end of file From 67db240165202285f63204e8aae9772d7415d0bc Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 2 Jul 2020 15:25:07 +0200 Subject: [PATCH 260/456] Add SEO Schema --- views/schema.pug | 26 ++++++++++++++++++++++++++ views/website/layout.pug | 1 + 2 files changed, 27 insertions(+) create mode 100644 views/schema.pug diff --git a/views/schema.pug b/views/schema.pug new file mode 100644 index 00000000..b5fde170 --- /dev/null +++ b/views/schema.pug @@ -0,0 +1,26 @@ +script(type="application/ld+json"). + [{ + "@context": "http://www.schema.org/", + "@type": "WebSite", + "name": "JSON Web Tokens - jwt.io", + "url": "https://jwt.io/" + }, { + "@context": "https://schema.org/", + "@type": "BreadcrumbList", + "itemListElement": [{ + "@type": "ListItem", + "position": 1, + "name": "JSON Web Token Debugger", + "item": "https://jwt.io/#debugger-io" + },{ + "@type": "ListItem", + "position": 2, + "name": "JSON Web Token Libraries", + "item": "https://jwt.io/#libraries-io" + },{ + "@type": "ListItem", + "position": 3, + "name": "Introduction to JSON Web Tokens", + "item": "https://jwt.io/introduction/" + }] + }] \ No newline at end of file diff --git a/views/website/layout.pug b/views/website/layout.pug index e6727527..f6c83b2a 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -2,6 +2,7 @@ doctype html html(lang='en') head include ../title.pug + include ../schema.pug //- Google Verification Code meta(name="google-site-verification", content="cFjJt_KK4v_TKnCZ3hcuLlEUBBk4RLT0iByrpjCsvLA") From bd6c7f55b104e8db1279cbd92ee8e05950cd8e8c Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 2 Jul 2020 15:35:55 +0200 Subject: [PATCH 261/456] Add breadcrumb descriptions --- views/schema.pug | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/views/schema.pug b/views/schema.pug index b5fde170..9874ca18 100644 --- a/views/schema.pug +++ b/views/schema.pug @@ -3,24 +3,28 @@ script(type="application/ld+json"). "@context": "http://www.schema.org/", "@type": "WebSite", "name": "JSON Web Tokens - jwt.io", - "url": "https://jwt.io/" + "url": "https://jwt.io/", + "description": "Decode, verify and generate JSON Web Tokens with our online debugger." }, { "@context": "https://schema.org/", "@type": "BreadcrumbList", "itemListElement": [{ "@type": "ListItem", "position": 1, - "name": "JSON Web Token Debugger", - "item": "https://jwt.io/#debugger-io" + "name": "Debugger", + "item": "https://jwt.io/#debugger-io", + "description": "Decode, verify and generate JSON Web Tokens with our online debugger." },{ "@type": "ListItem", "position": 2, - "name": "JSON Web Token Libraries", - "item": "https://jwt.io/#libraries-io" + "name": "Libraries", + "item": "https://jwt.io/#libraries-io", + "description": "An overview of Libraries for Token Signing/Verification in a variety of different programming languages." },{ "@type": "ListItem", "position": 3, - "name": "Introduction to JSON Web Tokens", - "item": "https://jwt.io/introduction/" + "name": "Introduction", + "item": "https://jwt.io/introduction/", + "description": "An introduction to JSON Web Tokens." }] }] \ No newline at end of file From 516c5552b5309ba89baff8ff842b8ee0a6ca43d9 Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 2 Jul 2020 15:48:39 +0200 Subject: [PATCH 262/456] Add Auth0 schema ingo --- views/schema.pug | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/views/schema.pug b/views/schema.pug index 9874ca18..dee249e8 100644 --- a/views/schema.pug +++ b/views/schema.pug @@ -4,7 +4,21 @@ script(type="application/ld+json"). "@type": "WebSite", "name": "JSON Web Tokens - jwt.io", "url": "https://jwt.io/", - "description": "Decode, verify and generate JSON Web Tokens with our online debugger." + "description": "Decode, verify and generate JSON Web Tokens with our online debugger.", + "image": "https://jwt.io/img/pic_logo.svg", + "publisher": { + "@type": "Organization", + "name": "Auth0", + "legalName": "Auth0 Inc.", + "url": "https://auth0.com/", + "logo": "https://cdn.auth0.com/website/assets/pages/press/img/resources/auth0-logo-main-6001cece68.svg", + "foundingDate": "2013", + "sameAs": [ + "https://twitter.com/auth0", + "https://www.facebook.com/getauth0/", + "https://www.linkedin.com/company/auth0" + ] + } }, { "@context": "https://schema.org/", "@type": "BreadcrumbList", @@ -27,4 +41,5 @@ script(type="application/ld+json"). "item": "https://jwt.io/introduction/", "description": "An introduction to JSON Web Tokens." }] - }] \ No newline at end of file + }] + \ No newline at end of file From 2a6a0553d025180ebcbe938c688253db2a4b37e2 Mon Sep 17 00:00:00 2001 From: Daniel DeGroff Date: Sat, 4 Jul 2020 11:49:44 -0600 Subject: [PATCH 263/456] Update FusionAuth details Update to 3.5.0 with support for PS256, PS384, and PS512. --- views/website/libraries/3-Java.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/views/website/libraries/3-Java.json b/views/website/libraries/3-Java.json index 0ad487ac..f70f12b7 100644 --- a/views/website/libraries/3-Java.json +++ b/views/website/libraries/3-Java.json @@ -149,15 +149,15 @@ "es256": true, "es384": true, "es512": true, - "ps256": false, - "ps384": false, - "ps512": false + "ps256": true, + "ps384": true, + "ps512": true }, "authorUrl": "https://github.com/fusionauth", "authorName": "FusionAuth", "gitHubRepoPath": "fusionauth/fusionauth-jwt", "repoUrl": "https://github.com/fusionauth/fusionauth-jwt", - "installCommandHtml": "maven: io.fusionauth / fusionauth-jwt / 3.1.0" + "installCommandHtml": "maven: io.fusionauth / fusionauth-jwt / 3.5.0" }, { "minimumVersion": null, From d95b757bfd53a8fc606d681d7954319cf6d30921 Mon Sep 17 00:00:00 2001 From: Sam Bellen Date: Wed, 8 Jul 2020 10:19:51 +0200 Subject: [PATCH 264/456] Update schema.pug --- views/schema.pug | 30 ++++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/views/schema.pug b/views/schema.pug index dee249e8..a5d5c06d 100644 --- a/views/schema.pug +++ b/views/schema.pug @@ -25,21 +25,47 @@ script(type="application/ld+json"). "itemListElement": [{ "@type": "ListItem", "position": 1, + "name": "jwt.io", + "item": "https://jwt.io/", + "description": "JWT.IO allows you to decode, verify and generate JWT." + }, { + "@type": "ListItem", + "position": 2, "name": "Debugger", "item": "https://jwt.io/#debugger-io", "description": "Decode, verify and generate JSON Web Tokens with our online debugger." + }] + }, { + "@context": "https://schema.org/", + "@type": "BreadcrumbList", + "itemListElement": [{ + "@type": "ListItem", + "position": 1, + "name": "jwt.io", + "item": "https://jwt.io/", + "description": "JWT.IO allows you to decode, verify and generate JWT." },{ "@type": "ListItem", "position": 2, "name": "Libraries", "item": "https://jwt.io/#libraries-io", "description": "An overview of Libraries for Token Signing/Verification in a variety of different programming languages." + }] + }, { + "@context": "https://schema.org/", + "@type": "BreadcrumbList", + "itemListElement": [{ + "@type": "ListItem", + "position": 1, + "name": "jwt.io", + "item": "https://jwt.io/", + "description": "JWT.IO allows you to decode, verify and generate JWT." },{ "@type": "ListItem", - "position": 3, + "position": 2, "name": "Introduction", "item": "https://jwt.io/introduction/", "description": "An introduction to JSON Web Tokens." }] }] - \ No newline at end of file + From 6d575919b878b96e81f0ac63d9a4a2174b4d1e71 Mon Sep 17 00:00:00 2001 From: Tanner Date: Wed, 29 Jul 2020 17:31:58 -0400 Subject: [PATCH 265/456] Update Swift vapor/jwt-kit Update to the just released Vapor JWTKit 4.0.0: https://github.com/vapor/jwt-kit --- views/website/libraries/19-Swift.json | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/views/website/libraries/19-Swift.json b/views/website/libraries/19-Swift.json index ee588373..1b10c86c 100644 --- a/views/website/libraries/19-Swift.json +++ b/views/website/libraries/19-Swift.json @@ -53,19 +53,19 @@ "rs256": true, "rs384": true, "rs512": true, - "es256": false, - "es384": false, - "es512": false, + "es256": true, + "es384": true, + "es512": true, "ps256": false, "ps384": false, "ps512": false }, - "authorUrl": "https://github.com/siemensikkema", - "authorName": "Siemen Sikkema", - "gitHubRepoPath": "vapor/jwt", - "repoUrl": "https://github.com/vapor/jwt", + "authorUrl": "https://github.com/vapor", + "authorName": "Vapor", + "gitHubRepoPath": "vapor/jwt-kit", + "repoUrl": "https://github.com/vapor/jwt-kit", "installCommandHtml": - ".Package(url:\"https://github.com/vapor/jwt.git/", majorVersion: 1)" + ".package(url: \"https://github.com/vapor/jwt-kit.git/", from: \"4.0.0\")" }, { "minimumVersion": null, From 3e020e969521158aeb135cb944ca9f82c4d2a995 Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 6 Aug 2020 11:07:23 +0200 Subject: [PATCH 266/456] Link do the developer page instead of the Auth0 homepage --- views/extension/index.pug | 2 +- views/website/introduction.pug | 4 ++-- views/website/layout.pug | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/views/extension/index.pug b/views/extension/index.pug index 46a32922..3e956e40 100644 --- a/views/extension/index.pug +++ b/views/extension/index.pug @@ -36,7 +36,7 @@ block content .colophon.clearfix .pull-left - a(target="_blank" href="https://auth0.com/?utm_source=jwt-ext&utm_campaign=badge") + a(target="_blank" href="https://auth0.com/developers/?utm_source=jwt-ext&utm_campaign=badge") | Supported by   img(src="http://github.com/img/ico_logo.svg" alt='Supported by Auth0 - JWT.io Token Based Authentication') a  -  diff --git a/views/website/introduction.pug b/views/website/introduction.pug index 722107ae..76e96e4d 100644 --- a/views/website/introduction.pug +++ b/views/website/introduction.pug @@ -46,12 +46,12 @@ block content a(href='http://swag.auth0.com/', target='_blank') Get a T-shirt! .social - a.a0(href='https://auth0.com/why-auth0?utm_source=jwtio&utm_medium=navbar_whats_auth0&utm_campaign=jwt_nav_cta_12_2019', target='_blank') + a.a0(href='https://auth0.com/developers?utm_source=jwtio&utm_medium=navbar_whats_auth0&utm_campaign=jwt_nav_cta_12_2019', target='_blank') span.by-text Crafted by img(src='http://github.com/img/pic_logo_ft.svg', alt='Crafted by Auth0 - Token Based Authentication') span.crafted-by__question-mark ? - a.supported(href='https://auth0.com/', target="_blank") + a.supported(href='https://auth0.com/developers/', target="_blank") | Supported by img(src='http://github.com/img/ico_logo.svg' alt='Supported by Auth0 - JWT.io Token Based Authentication') diff --git a/views/website/layout.pug b/views/website/layout.pug index f6c83b2a..5ea00d6b 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -59,7 +59,7 @@ html(lang='en') .container .columns .column - a(href='https://auth0.com/', target="_blank") + a(href='https://auth0.com/developers/', target="_blank") | Supported by img(src='http://github.com/img/ico_logo.svg' alt='Supported by Auth0 - JWT.io Token Based Authentication') .column.pull-request From 71f45e04913bf0f13abd17f0d64df80b9c483685 Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 6 Aug 2020 11:15:40 +0200 Subject: [PATCH 267/456] Update npm deps --- package-lock.json | 5607 +++++++++++++++++++++------------------------ 1 file changed, 2670 insertions(+), 2937 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4e9c4536..e3c257c3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5,31 +5,44 @@ "requires": true, "dependencies": { "@babel/code-frame": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", - "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", + "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", "dev": true, "requires": { - "@babel/highlight": "^7.0.0" + "@babel/highlight": "^7.10.4" } }, - "@babel/core": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.4.5.tgz", - "integrity": "sha512-OvjIh6aqXtlsA8ujtGKfC7LYWksYSX8yQcM8Ay3LuvVeQ63lcOKgoZWVqcpFwkd29aYU9rVx7jxhfhiEDV9MZA==", + "@babel/compat-data": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.11.0.tgz", + "integrity": "sha512-TPSvJfv73ng0pfnEOh17bYMPQbI95+nGWc71Ss4vZdRBHTDqmM9Z8ZV4rYz8Ks7sfzc95n30k6ODIq5UGnXcYQ==", "dev": true, "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.4.4", - "@babel/helpers": "^7.4.4", - "@babel/parser": "^7.4.5", - "@babel/template": "^7.4.4", - "@babel/traverse": "^7.4.5", - "@babel/types": "^7.4.4", - "convert-source-map": "^1.1.0", + "browserslist": "^4.12.0", + "invariant": "^2.2.4", + "semver": "^5.5.0" + } + }, + "@babel/core": { + "version": "7.11.1", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.11.1.tgz", + "integrity": "sha512-XqF7F6FWQdKGGWAzGELL+aCO1p+lRY5Tj5/tbT3St1G8NaH70jhhDIKknIZaDans0OQBG5wRAldROLHSt44BgQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.11.0", + "@babel/helper-module-transforms": "^7.11.0", + "@babel/helpers": "^7.10.4", + "@babel/parser": "^7.11.1", + "@babel/template": "^7.10.4", + "@babel/traverse": "^7.11.0", + "@babel/types": "^7.11.0", + "convert-source-map": "^1.7.0", "debug": "^4.1.0", - "json5": "^2.1.0", - "lodash": "^4.17.11", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", "resolve": "^1.3.2", "semver": "^5.4.1", "source-map": "^0.5.0" @@ -44,741 +57,941 @@ "ms": "^2.1.1" } }, - "json5": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.0.tgz", - "integrity": "sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true } } }, "@babel/generator": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.4.4.tgz", - "integrity": "sha512-53UOLK6TVNqKxf7RUh8NE851EHRxOOeVXKbK2bivdb+iziMyk03Sr4eaE9OELCbyZAAafAKPDwF2TPUES5QbxQ==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.11.0.tgz", + "integrity": "sha512-fEm3Uzw7Mc9Xi//qU20cBKatTfs2aOtKqmvy/Vm7RkJEGFQ4xc9myCfbXxqK//ZS8MR/ciOHw6meGASJuKmDfQ==", "dev": true, "requires": { - "@babel/types": "^7.4.4", + "@babel/types": "^7.11.0", "jsesc": "^2.5.1", - "lodash": "^4.17.11", - "source-map": "^0.5.0", - "trim-right": "^1.0.1" + "source-map": "^0.5.0" } }, "@babel/helper-annotate-as-pure": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz", - "integrity": "sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.10.4.tgz", + "integrity": "sha512-XQlqKQP4vXFB7BN8fEEerrmYvHp3fK/rBkRFz9jaJbzK0B1DSfej9Kc7ZzE8Z/OnId1jpJdNAZ3BFQjWG68rcA==", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "^7.10.4" } }, "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz", - "integrity": "sha512-qNSR4jrmJ8M1VMM9tibvyRAHXQs2PmaksQF7c1CGJNipfe3D8p+wgNwgso/P2A2r2mdgBWAXljNWR0QRZAMW8w==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.10.4.tgz", + "integrity": "sha512-L0zGlFrGWZK4PbT8AszSfLTM5sDU1+Az/En9VrdT8/LmEiJt4zXt+Jve9DCAnQcbqDhCI+29y/L93mrDzddCcg==", + "dev": true, + "requires": { + "@babel/helper-explode-assignable-expression": "^7.10.4", + "@babel/types": "^7.10.4" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.10.4.tgz", + "integrity": "sha512-a3rYhlsGV0UHNDvrtOXBg8/OpfV0OKTkxKPzIplS1zpx7CygDcWWxckxZeDd3gzPzC4kUT0A4nVFDK0wGMh4MQ==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.10.4", + "browserslist": "^4.12.0", + "invariant": "^2.2.4", + "levenary": "^1.1.1", + "semver": "^5.5.0" + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.10.5.tgz", + "integrity": "sha512-0nkdeijB7VlZoLT3r/mY3bUkw3T8WG/hNw+FATs/6+pG2039IJWjTYL0VTISqsNHMUTEnwbVnc89WIJX9Qed0A==", "dev": true, "requires": { - "@babel/helper-explode-assignable-expression": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/helper-function-name": "^7.10.4", + "@babel/helper-member-expression-to-functions": "^7.10.5", + "@babel/helper-optimise-call-expression": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-replace-supers": "^7.10.4", + "@babel/helper-split-export-declaration": "^7.10.4" } }, - "@babel/helper-call-delegate": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.4.4.tgz", - "integrity": "sha512-l79boDFJ8S1c5hvQvG+rc+wHw6IuH7YldmRKsYtpbawsxURu/paVy57FZMomGK22/JckepaikOkY0MoAmdyOlQ==", + "@babel/helper-create-regexp-features-plugin": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.10.4.tgz", + "integrity": "sha512-2/hu58IEPKeoLF45DBwx3XFqsbCXmkdAay4spVr2x0jYgRxrSNp+ePwvSsy9g6YSaNDcKIQVPXk1Ov8S2edk2g==", "dev": true, "requires": { - "@babel/helper-hoist-variables": "^7.4.4", - "@babel/traverse": "^7.4.4", - "@babel/types": "^7.4.4" + "@babel/helper-annotate-as-pure": "^7.10.4", + "@babel/helper-regex": "^7.10.4", + "regexpu-core": "^4.7.0" } }, "@babel/helper-define-map": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.4.4.tgz", - "integrity": "sha512-IX3Ln8gLhZpSuqHJSnTNBWGDE9kdkTEWl21A/K7PQ00tseBwbqCHTvNLHSBd9M0R5rER4h5Rsvj9vw0R5SieBg==", + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.10.5.tgz", + "integrity": "sha512-fMw4kgFB720aQFXSVaXr79pjjcW5puTCM16+rECJ/plGS+zByelE8l9nCpV1GibxTnFVmUuYG9U8wYfQHdzOEQ==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/types": "^7.4.4", - "lodash": "^4.17.11" + "@babel/helper-function-name": "^7.10.4", + "@babel/types": "^7.10.5", + "lodash": "^4.17.19" } }, "@babel/helper-explode-assignable-expression": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.1.0.tgz", - "integrity": "sha512-NRQpfHrJ1msCHtKjbzs9YcMmJZOg6mQMmGRB+hbamEdG5PNpaSm95275VD92DvJKuyl0s2sFiDmMZ+EnnvufqA==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.10.4.tgz", + "integrity": "sha512-4K71RyRQNPRrR85sr5QY4X3VwG4wtVoXZB9+L3r1Gp38DhELyHCtovqydRi7c1Ovb17eRGiQ/FD5s8JdU0Uy5A==", "dev": true, "requires": { - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/traverse": "^7.10.4", + "@babel/types": "^7.10.4" } }, "@babel/helper-function-name": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", - "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz", + "integrity": "sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.0.0", - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/helper-get-function-arity": "^7.10.4", + "@babel/template": "^7.10.4", + "@babel/types": "^7.10.4" } }, "@babel/helper-get-function-arity": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", - "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz", + "integrity": "sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A==", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "^7.10.4" } }, "@babel/helper-hoist-variables": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.4.4.tgz", - "integrity": "sha512-VYk2/H/BnYbZDDg39hr3t2kKyifAm1W6zHRfhx8jGjIHpQEBv9dry7oQ2f3+J703TLu69nYdxsovl0XYfcnK4w==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.10.4.tgz", + "integrity": "sha512-wljroF5PgCk2juF69kanHVs6vrLwIPNp6DLD+Lrl3hoQ3PpPPikaDRNFA+0t81NOoMt2DL6WW/mdU8k4k6ZzuA==", "dev": true, "requires": { - "@babel/types": "^7.4.4" + "@babel/types": "^7.10.4" } }, "@babel/helper-member-expression-to-functions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.0.0.tgz", - "integrity": "sha512-avo+lm/QmZlv27Zsi0xEor2fKcqWG56D5ae9dzklpIaY7cQMK5N8VSpaNVPPagiqmy7LrEjK1IWdGMOqPu5csg==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.11.0.tgz", + "integrity": "sha512-JbFlKHFntRV5qKw3YC0CvQnDZ4XMwgzzBbld7Ly4Mj4cbFy3KywcR8NtNctRToMWJOVvLINJv525Gd6wwVEx/Q==", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "^7.11.0" } }, "@babel/helper-module-imports": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz", - "integrity": "sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.10.4.tgz", + "integrity": "sha512-nEQJHqYavI217oD9+s5MUBzk6x1IlvoS9WTPfgG43CbMEeStE0v+r+TucWdx8KFGowPGvyOkDT9+7DHedIDnVw==", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "^7.10.4" } }, "@babel/helper-module-transforms": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.4.4.tgz", - "integrity": "sha512-3Z1yp8TVQf+B4ynN7WoHPKS8EkdTbgAEy0nU0rs/1Kw4pDgmvYH3rz3aI11KgxKCba2cn7N+tqzV1mY2HMN96w==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.11.0.tgz", + "integrity": "sha512-02EVu8COMuTRO1TAzdMtpBPbe6aQ1w/8fePD2YgQmxZU4gpNWaL9gK3Jp7dxlkUlUCJOTaSeA+Hrm1BRQwqIhg==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/helper-simple-access": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.4.4", - "@babel/template": "^7.4.4", - "@babel/types": "^7.4.4", - "lodash": "^4.17.11" + "@babel/helper-module-imports": "^7.10.4", + "@babel/helper-replace-supers": "^7.10.4", + "@babel/helper-simple-access": "^7.10.4", + "@babel/helper-split-export-declaration": "^7.11.0", + "@babel/template": "^7.10.4", + "@babel/types": "^7.11.0", + "lodash": "^4.17.19" } }, "@babel/helper-optimise-call-expression": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz", - "integrity": "sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.4.tgz", + "integrity": "sha512-n3UGKY4VXwXThEiKrgRAoVPBMqeoPgHVqiHZOanAJCG9nQUL2pLRQirUzl0ioKclHGpGqRgIOkgcIJaIWLpygg==", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "^7.10.4" } }, "@babel/helper-plugin-utils": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz", - "integrity": "sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", "dev": true }, "@babel/helper-regex": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.4.4.tgz", - "integrity": "sha512-Y5nuB/kESmR3tKjU8Nkn1wMGEx1tjJX076HBMeL3XLQCu6vA/YRzuTW0bbb+qRnXvQGn+d6Rx953yffl8vEy7Q==", + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.10.5.tgz", + "integrity": "sha512-68kdUAzDrljqBrio7DYAEgCoJHxppJOERHOgOrDN7WjOzP0ZQ1LsSDRXcemzVZaLvjaJsJEESb6qt+znNuENDg==", "dev": true, "requires": { - "lodash": "^4.17.11" + "lodash": "^4.17.19" } }, "@babel/helper-remap-async-to-generator": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.1.0.tgz", - "integrity": "sha512-3fOK0L+Fdlg8S5al8u/hWE6vhufGSn0bN09xm2LXMy//REAF8kDCrYoOBKYmA8m5Nom+sV9LyLCwrFynA8/slg==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.10.4.tgz", + "integrity": "sha512-86Lsr6NNw3qTNl+TBcF1oRZMaVzJtbWTyTko+CQL/tvNvcGYEFKbLXDPxtW0HKk3McNOk4KzY55itGWCAGK5tg==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-wrap-function": "^7.1.0", - "@babel/template": "^7.1.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/helper-annotate-as-pure": "^7.10.4", + "@babel/helper-wrap-function": "^7.10.4", + "@babel/template": "^7.10.4", + "@babel/traverse": "^7.10.4", + "@babel/types": "^7.10.4" } }, "@babel/helper-replace-supers": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.4.4.tgz", - "integrity": "sha512-04xGEnd+s01nY1l15EuMS1rfKktNF+1CkKmHoErDppjAAZL+IUBZpzT748x262HF7fibaQPhbvWUl5HeSt1EXg==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.10.4.tgz", + "integrity": "sha512-sPxZfFXocEymYTdVK1UNmFPBN+Hv5mJkLPsYWwGBxZAxaWfFu+xqp7b6qWD0yjNuNL2VKc6L5M18tOXUP7NU0A==", "dev": true, "requires": { - "@babel/helper-member-expression-to-functions": "^7.0.0", - "@babel/helper-optimise-call-expression": "^7.0.0", - "@babel/traverse": "^7.4.4", - "@babel/types": "^7.4.4" + "@babel/helper-member-expression-to-functions": "^7.10.4", + "@babel/helper-optimise-call-expression": "^7.10.4", + "@babel/traverse": "^7.10.4", + "@babel/types": "^7.10.4" } }, "@babel/helper-simple-access": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz", - "integrity": "sha512-Vk+78hNjRbsiu49zAPALxTb+JUQCz1aolpd8osOF16BGnLtseD21nbHgLPGUwrXEurZgiCOUmvs3ExTu4F5x6w==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.10.4.tgz", + "integrity": "sha512-0fMy72ej/VEvF8ULmX6yb5MtHG4uH4Dbd6I/aHDb/JVg0bbivwt9Wg+h3uMvX+QSFtwr5MeItvazbrc4jtRAXw==", "dev": true, "requires": { - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/template": "^7.10.4", + "@babel/types": "^7.10.4" + } + }, + "@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.11.0.tgz", + "integrity": "sha512-0XIdiQln4Elglgjbwo9wuJpL/K7AGCY26kmEt0+pRP0TAj4jjyNq1MjoRvikrTVqKcx4Gysxt4cXvVFXP/JO2Q==", + "dev": true, + "requires": { + "@babel/types": "^7.11.0" } }, "@babel/helper-split-export-declaration": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz", - "integrity": "sha512-Ro/XkzLf3JFITkW6b+hNxzZ1n5OQ80NvIUdmHspih1XAhtN3vPTuUFT4eQnela+2MaZ5ulH+iyP513KJrxbN7Q==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.11.0.tgz", + "integrity": "sha512-74Vejvp6mHkGE+m+k5vHY93FX2cAtrw1zXrZXRlG4l410Nm9PxfEiVTn1PjDPV5SnmieiueY4AFg2xqhNFuuZg==", "dev": true, "requires": { - "@babel/types": "^7.4.4" + "@babel/types": "^7.11.0" } }, + "@babel/helper-validator-identifier": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz", + "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==", + "dev": true + }, "@babel/helper-wrap-function": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.2.0.tgz", - "integrity": "sha512-o9fP1BZLLSrYlxYEYyl2aS+Flun5gtjTIG8iln+XuEzQTs0PLagAGSXUcqruJwD5fM48jzIEggCKpIfWTcR7pQ==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.10.4.tgz", + "integrity": "sha512-6py45WvEF0MhiLrdxtRjKjufwLL1/ob2qDJgg5JgNdojBAZSAKnAjkyOCNug6n+OBl4VW76XjvgSFTdaMcW0Ug==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/template": "^7.1.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.2.0" + "@babel/helper-function-name": "^7.10.4", + "@babel/template": "^7.10.4", + "@babel/traverse": "^7.10.4", + "@babel/types": "^7.10.4" } }, "@babel/helpers": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.4.4.tgz", - "integrity": "sha512-igczbR/0SeuPR8RFfC7tGrbdTbFL3QTvH6D+Z6zNxnTe//GyqmtHmDkzrqDmyZ3eSwPqB/LhyKoU5DXsp+Vp2A==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.10.4.tgz", + "integrity": "sha512-L2gX/XeUONeEbI78dXSrJzGdz4GQ+ZTA/aazfUsFaWjSe95kiCuOZ5HsXvkiw3iwF+mFHSRUfJU8t6YavocdXA==", "dev": true, "requires": { - "@babel/template": "^7.4.4", - "@babel/traverse": "^7.4.4", - "@babel/types": "^7.4.4" + "@babel/template": "^7.10.4", + "@babel/traverse": "^7.10.4", + "@babel/types": "^7.10.4" } }, "@babel/highlight": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", - "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", + "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", "dev": true, "requires": { + "@babel/helper-validator-identifier": "^7.10.4", "chalk": "^2.0.0", - "esutils": "^2.0.2", "js-tokens": "^4.0.0" - }, - "dependencies": { - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - } } }, "@babel/parser": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.5.tgz", - "integrity": "sha512-9mUqkL1FF5T7f0WDFfAoDdiMVPWsdD1gZYzSnaXsxUCUqzuch/8of9G3VUSNiZmMBoRxT3neyVsqeiL/ZPcjew==", + "version": "7.11.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", + "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", "dev": true }, "@babel/plugin-proposal-async-generator-functions": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.2.0.tgz", - "integrity": "sha512-+Dfo/SCQqrwx48ptLVGLdE39YtWRuKc/Y9I5Fy0P1DDBB9lsAHpjcEJQt+4IifuSOSTLBKJObJqMvaO1pIE8LQ==", + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.10.5.tgz", + "integrity": "sha512-cNMCVezQbrRGvXJwm9fu/1sJj9bHdGAgKodZdLqOQIpfoH3raqmRPBM17+lh7CzhiKRRBrGtZL9WcjxSoGYUSg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-remap-async-to-generator": "^7.1.0", - "@babel/plugin-syntax-async-generators": "^7.2.0" + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-remap-async-to-generator": "^7.10.4", + "@babel/plugin-syntax-async-generators": "^7.8.0" + } + }, + "@babel/plugin-proposal-class-properties": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.10.4.tgz", + "integrity": "sha512-vhwkEROxzcHGNu2mzUC0OFFNXdZ4M23ib8aRRcJSsW8BZK9pQMD7QB7csl97NBbgGZO7ZyHUyKDnxzOaP4IrCg==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-proposal-dynamic-import": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.10.4.tgz", + "integrity": "sha512-up6oID1LeidOOASNXgv/CFbgBqTuKJ0cJjz6An5tWD+NVBNlp3VNSBxv2ZdU7SYl3NxJC7agAQDApZusV6uFwQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-dynamic-import": "^7.8.0" + } + }, + "@babel/plugin-proposal-export-namespace-from": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.10.4.tgz", + "integrity": "sha512-aNdf0LY6/3WXkhh0Fdb6Zk9j1NMD8ovj3F6r0+3j837Pn1S1PdNtcwJ5EG9WkVPNHPxyJDaxMaAOVq4eki0qbg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" } }, "@babel/plugin-proposal-json-strings": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.2.0.tgz", - "integrity": "sha512-MAFV1CA/YVmYwZG0fBQyXhmj0BHCB5egZHCKWIFVv/XCxAeVGIHfos3SwDck4LvCllENIAg7xMKOG5kH0dzyUg==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.10.4.tgz", + "integrity": "sha512-fCL7QF0Jo83uy1K0P2YXrfX11tj3lkpN7l4dMv9Y9VkowkhkQDwFHFd8IiwyK5MZjE8UpbgokkgtcReH88Abaw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-json-strings": "^7.2.0" + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.0" + } + }, + "@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.11.0.tgz", + "integrity": "sha512-/f8p4z+Auz0Uaf+i8Ekf1iM7wUNLcViFUGiPxKeXvxTSl63B875YPiVdUDdem7hREcI0E0kSpEhS8tF5RphK7Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + } + }, + "@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.10.4.tgz", + "integrity": "sha512-wq5n1M3ZUlHl9sqT2ok1T2/MTt6AXE0e1Lz4WzWBr95LsAZ5qDXe4KnFuauYyEyLiohvXFMdbsOTMyLZs91Zlw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0" + } + }, + "@babel/plugin-proposal-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.10.4.tgz", + "integrity": "sha512-73/G7QoRoeNkLZFxsoCCvlg4ezE4eM+57PnOqgaPOozd5myfj7p0muD1mRVJvbUWbOzD+q3No2bWbaKy+DJ8DA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" } }, "@babel/plugin-proposal-object-rest-spread": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.4.4.tgz", - "integrity": "sha512-dMBG6cSPBbHeEBdFXeQ2QLc5gUpg4Vkaz8octD4aoW/ISO+jBOcsuxYL7bsb5WSu8RLP6boxrBIALEHgoHtO9g==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.11.0.tgz", + "integrity": "sha512-wzch41N4yztwoRw0ak+37wxwJM2oiIiy6huGCoqkvSTA9acYWcPfn9Y4aJqmFFJ70KTJUu29f3DQ43uJ9HXzEA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-object-rest-spread": "^7.2.0" + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.0", + "@babel/plugin-transform-parameters": "^7.10.4" } }, "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.2.0.tgz", - "integrity": "sha512-mgYj3jCcxug6KUcX4OBoOJz3CMrwRfQELPQ5560F70YQUBZB7uac9fqaWamKR1iWUzGiK2t0ygzjTScZnVz75g==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.10.4.tgz", + "integrity": "sha512-LflT6nPh+GK2MnFiKDyLiqSqVHkQnVf7hdoAvyTnnKj9xB3docGRsdPuxp6qqqW19ifK3xgc9U5/FwrSaCNX5g==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.2.0" + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" + } + }, + "@babel/plugin-proposal-optional-chaining": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.11.0.tgz", + "integrity": "sha512-v9fZIu3Y8562RRwhm1BbMRxtqZNFmFA2EG+pT2diuU8PT3H6T/KXoZ54KgYisfOFZHV6PfvAiBIZ9Rcz+/JCxA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-skip-transparent-expression-wrappers": "^7.11.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.0" + } + }, + "@babel/plugin-proposal-private-methods": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.10.4.tgz", + "integrity": "sha512-wh5GJleuI8k3emgTg5KkJK6kHNsGEr0uBTDBuQUBJwckk9xs1ez79ioheEVVxMLyPscB0LfkbVHslQqIzWV6Bw==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.4.4.tgz", - "integrity": "sha512-j1NwnOqMG9mFUOH58JTFsA/+ZYzQLUZ/drqWUqxCYLGeu2JFZL8YrNC9hBxKmWtAuOCHPcRpgv7fhap09Fb4kA==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.10.4.tgz", + "integrity": "sha512-H+3fOgPnEXFL9zGYtKQe4IDOPKYlZdF1kqFDQRRb8PK4B8af1vAGK04tF5iQAAsui+mHNBQSAtd2/ndEDe9wuA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.4.4", - "regexpu-core": "^4.5.4" + "@babel/helper-create-regexp-features-plugin": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-syntax-async-generators": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz", - "integrity": "sha512-1ZrIRBv2t0GSlcwVoQ6VgSLpLgiN/FVQUzt9znxo7v2Ov4jJrs8RY8tv0wvDmFN3qIdMKWrmMMW6yZ0G19MfGg==", + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-class-properties": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.10.4.tgz", + "integrity": "sha512-GCSBF7iUle6rNugfURwNmCGG3Z/2+opxAMLs1nND4bhEG5PuxTIggDBoeYYSujAlLtsupzOHYJQgPS3pivwXIA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.8.3" } }, "@babel/plugin-syntax-json-strings": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.2.0.tgz", - "integrity": "sha512-5UGYnMSLRE1dqqZwug+1LISpA403HzlSfsg6P9VXU6TBjcSHeNlw4DxDx7LgpF+iKZoOG/+uzqoRHTdcUpiZNg==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-syntax-object-rest-spread": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz", - "integrity": "sha512-t0JKGgqk2We+9may3t0xDdmneaXmyxq0xieYcKHxIsrJO64n1OiMWNUtc5gQK1PA0NpdCRrtZp4z+IUaKugrSA==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.8.0" } }, "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz", - "integrity": "sha512-bDe4xKNhb0LI7IvZHiA13kff0KEfaGX/Hv4lMA9+7TEc63hMNvfKo6ZFpXhKuEp+II/q35Gc4NoMeDZyaUbj9w==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-top-level-await": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.10.4.tgz", + "integrity": "sha512-ni1brg4lXEmWyafKr0ccFWkJG0CeMt4WV1oyeBW6EFObF4oOHclbkj5cARxAPQyAQ2UTuplJyK4nfkXIMMFvsQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-arrow-functions": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.2.0.tgz", - "integrity": "sha512-ER77Cax1+8/8jCB9fo4Ud161OZzWN5qawi4GusDuRLcDbDG+bIGYY20zb2dfAFdTRGzrfq2xZPvF0R64EHnimg==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.10.4.tgz", + "integrity": "sha512-9J/oD1jV0ZCBcgnoFWFq1vJd4msoKb/TCpGNFyyLt0zABdcvgK3aYikZ8HjzB14c26bc7E3Q1yugpwGy2aTPNA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-async-to-generator": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.4.4.tgz", - "integrity": "sha512-YiqW2Li8TXmzgbXw+STsSqPBPFnGviiaSp6CYOq55X8GQ2SGVLrXB6pNid8HkqkZAzOH6knbai3snhP7v0fNwA==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.10.4.tgz", + "integrity": "sha512-F6nREOan7J5UXTLsDsZG3DXmZSVofr2tGNwfdrVwkDWHfQckbQXnXSPfD7iO+c/2HGqycwyLST3DnZ16n+cBJQ==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-remap-async-to-generator": "^7.1.0" + "@babel/helper-module-imports": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-remap-async-to-generator": "^7.10.4" } }, "@babel/plugin-transform-block-scoped-functions": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.2.0.tgz", - "integrity": "sha512-ntQPR6q1/NKuphly49+QiQiTN0O63uOwjdD6dhIjSWBI5xlrbUFh720TIpzBhpnrLfv2tNH/BXvLIab1+BAI0w==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.10.4.tgz", + "integrity": "sha512-WzXDarQXYYfjaV1szJvN3AD7rZgZzC1JtjJZ8dMHUyiK8mxPRahynp14zzNjU3VkPqPsO38CzxiWO1c9ARZ8JA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-block-scoping": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.4.4.tgz", - "integrity": "sha512-jkTUyWZcTrwxu5DD4rWz6rDB5Cjdmgz6z7M7RLXOJyCUkFBawssDGcGh8M/0FTSB87avyJI1HsTwUXp9nKA1PA==", + "version": "7.11.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.11.1.tgz", + "integrity": "sha512-00dYeDE0EVEHuuM+26+0w/SCL0BH2Qy7LwHuI4Hi4MH5gkC8/AqMN5uWFJIsoXZrAphiMm1iXzBw6L2T+eA0ew==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "lodash": "^4.17.11" + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-classes": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.4.4.tgz", - "integrity": "sha512-/e44eFLImEGIpL9qPxSRat13I5QNRgBLu2hOQJCF7VLy/otSM/sypV1+XaIw5+502RX/+6YaSAPmldk+nhHDPw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-define-map": "^7.4.4", - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-optimise-call-expression": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-replace-supers": "^7.4.4", - "@babel/helper-split-export-declaration": "^7.4.4", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.10.4.tgz", + "integrity": "sha512-2oZ9qLjt161dn1ZE0Ms66xBncQH4In8Sqw1YWgBUZuGVJJS5c0OFZXL6dP2MRHrkU/eKhWg8CzFJhRQl50rQxA==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.10.4", + "@babel/helper-define-map": "^7.10.4", + "@babel/helper-function-name": "^7.10.4", + "@babel/helper-optimise-call-expression": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-replace-supers": "^7.10.4", + "@babel/helper-split-export-declaration": "^7.10.4", "globals": "^11.1.0" } }, "@babel/plugin-transform-computed-properties": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.2.0.tgz", - "integrity": "sha512-kP/drqTxY6Xt3NNpKiMomfgkNn4o7+vKxK2DDKcBG9sHj51vHqMBGy8wbDS/J4lMxnqs153/T3+DmCEAkC5cpA==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.10.4.tgz", + "integrity": "sha512-JFwVDXcP/hM/TbyzGq3l/XWGut7p46Z3QvqFMXTfk6/09m7xZHJUN9xHfsv7vqqD4YnfI5ueYdSJtXqqBLyjBw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-destructuring": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.4.4.tgz", - "integrity": "sha512-/aOx+nW0w8eHiEHm+BTERB2oJn5D127iye/SUQl7NjHy0lf+j7h4MKMMSOwdazGq9OxgiNADncE+SRJkCxjZpQ==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.10.4.tgz", + "integrity": "sha512-+WmfvyfsyF603iPa6825mq6Qrb7uLjTOsa3XOFzlYcYDHSS4QmpOWOL0NNBY5qMbvrcf3tq0Cw+v4lxswOBpgA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-dotall-regex": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.4.4.tgz", - "integrity": "sha512-P05YEhRc2h53lZDjRPk/OektxCVevFzZs2Gfjd545Wde3k+yFDbXORgl2e0xpbq8mLcKJ7Idss4fAg0zORN/zg==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.10.4.tgz", + "integrity": "sha512-ZEAVvUTCMlMFAbASYSVQoxIbHm2OkG2MseW6bV2JjIygOjdVv8tuxrCTzj1+Rynh7ODb8GivUy7dzEXzEhuPaA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.4.4", - "regexpu-core": "^4.5.4" + "@babel/helper-create-regexp-features-plugin": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-duplicate-keys": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.2.0.tgz", - "integrity": "sha512-q+yuxW4DsTjNceUiTzK0L+AfQ0zD9rWaTLiUqHA8p0gxx7lu1EylenfzjeIWNkPy6e/0VG/Wjw9uf9LueQwLOw==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.10.4.tgz", + "integrity": "sha512-GL0/fJnmgMclHiBTTWXNlYjYsA7rDrtsazHG6mglaGSTh0KsrW04qml+Bbz9FL0LcJIRwBWL5ZqlNHKTkU3xAA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-exponentiation-operator": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.2.0.tgz", - "integrity": "sha512-umh4hR6N7mu4Elq9GG8TOu9M0bakvlsREEC+ialrQN6ABS4oDQ69qJv1VtR3uxlKMCQMCvzk7vr17RHKcjx68A==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.10.4.tgz", + "integrity": "sha512-S5HgLVgkBcRdyQAHbKj+7KyuWx8C6t5oETmUuwz1pt3WTWJhsUV0WIIXuVvfXMxl/QQyHKlSCNNtaIamG8fysw==", "dev": true, "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-for-of": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.4.4.tgz", - "integrity": "sha512-9T/5Dlr14Z9TIEXLXkt8T1DU7F24cbhwhMNUziN3hB1AXoZcdzPcTiKGRn/6iOymDqtTKWnr/BtRKN9JwbKtdQ==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.10.4.tgz", + "integrity": "sha512-ItdQfAzu9AlEqmusA/65TqJ79eRcgGmpPPFvBnGILXZH975G0LNjP1yjHvGgfuCxqrPPueXOPe+FsvxmxKiHHQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-function-name": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.4.4.tgz", - "integrity": "sha512-iU9pv7U+2jC9ANQkKeNF6DrPy4GBa4NWQtl6dHB4Pb3izX2JOEvDTFarlNsBj/63ZEzNNIAMs3Qw4fNCcSOXJA==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.10.4.tgz", + "integrity": "sha512-OcDCq2y5+E0dVD5MagT5X+yTRbcvFjDI2ZVAottGH6tzqjx/LKpgkUepu3hp/u4tZBzxxpNGwLsAvGBvQ2mJzg==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-function-name": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-literals": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.2.0.tgz", - "integrity": "sha512-2ThDhm4lI4oV7fVQ6pNNK+sx+c/GM5/SaML0w/r4ZB7sAneD/piDJtwdKlNckXeyGK7wlwg2E2w33C/Hh+VFCg==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.10.4.tgz", + "integrity": "sha512-Xd/dFSTEVuUWnyZiMu76/InZxLTYilOSr1UlHV+p115Z/Le2Fi1KXkJUYz0b42DfndostYlPub3m8ZTQlMaiqQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-member-expression-literals": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.2.0.tgz", - "integrity": "sha512-HiU3zKkSU6scTidmnFJ0bMX8hz5ixC93b4MHMiYebmk2lUVNGOboPsqQvx5LzooihijUoLR/v7Nc1rbBtnc7FA==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.10.4.tgz", + "integrity": "sha512-0bFOvPyAoTBhtcJLr9VcwZqKmSjFml1iVxvPL0ReomGU53CX53HsM4h2SzckNdkQcHox1bpAqzxBI1Y09LlBSw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-modules-amd": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.2.0.tgz", - "integrity": "sha512-mK2A8ucqz1qhrdqjS9VMIDfIvvT2thrEsIQzbaTdc5QFzhDjQv2CkJJ5f6BXIkgbmaoax3zBr2RyvV/8zeoUZw==", + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.10.5.tgz", + "integrity": "sha512-elm5uruNio7CTLFItVC/rIzKLfQ17+fX7EVz5W0TMgIHFo1zY0Ozzx+lgwhL4plzl8OzVn6Qasx5DeEFyoNiRw==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-module-transforms": "^7.10.5", + "@babel/helper-plugin-utils": "^7.10.4", + "babel-plugin-dynamic-import-node": "^2.3.3" } }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.4.4.tgz", - "integrity": "sha512-4sfBOJt58sEo9a2BQXnZq+Q3ZTSAUXyK3E30o36BOGnJ+tvJ6YSxF0PG6kERvbeISgProodWuI9UVG3/FMY6iw==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.10.4.tgz", + "integrity": "sha512-Xj7Uq5o80HDLlW64rVfDBhao6OX89HKUmb+9vWYaLXBZOma4gA6tw4Ni1O5qVDoZWUV0fxMYA0aYzOawz0l+1w==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.4.4", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-simple-access": "^7.1.0" + "@babel/helper-module-transforms": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-simple-access": "^7.10.4", + "babel-plugin-dynamic-import-node": "^2.3.3" } }, "@babel/plugin-transform-modules-systemjs": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.4.4.tgz", - "integrity": "sha512-MSiModfILQc3/oqnG7NrP1jHaSPryO6tA2kOMmAQApz5dayPxWiHqmq4sWH2xF5LcQK56LlbKByCd8Aah/OIkQ==", + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.10.5.tgz", + "integrity": "sha512-f4RLO/OL14/FP1AEbcsWMzpbUz6tssRaeQg11RH1BP/XnPpRoVwgeYViMFacnkaw4k4wjRSjn3ip1Uw9TaXuMw==", "dev": true, "requires": { - "@babel/helper-hoist-variables": "^7.4.4", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-hoist-variables": "^7.10.4", + "@babel/helper-module-transforms": "^7.10.5", + "@babel/helper-plugin-utils": "^7.10.4", + "babel-plugin-dynamic-import-node": "^2.3.3" } }, "@babel/plugin-transform-modules-umd": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.2.0.tgz", - "integrity": "sha512-BV3bw6MyUH1iIsGhXlOK6sXhmSarZjtJ/vMiD9dNmpY8QXFFQTj+6v92pcfy1iqa8DeAfJFwoxcrS/TUZda6sw==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.10.4.tgz", + "integrity": "sha512-mohW5q3uAEt8T45YT7Qc5ws6mWgJAaL/8BfWD9Dodo1A3RKWli8wTS+WiQ/knF+tXlPirW/1/MqzzGfCExKECA==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-module-transforms": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.4.5.tgz", - "integrity": "sha512-z7+2IsWafTBbjNsOxU/Iv5CvTJlr5w4+HGu1HovKYTtgJ362f7kBcQglkfmlspKKZ3bgrbSGvLfNx++ZJgCWsg==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.10.4.tgz", + "integrity": "sha512-V6LuOnD31kTkxQPhKiVYzYC/Jgdq53irJC/xBSmqcNcqFGV+PER4l6rU5SH2Vl7bH9mLDHcc0+l9HUOe4RNGKA==", "dev": true, "requires": { - "regexp-tree": "^0.1.6" + "@babel/helper-create-regexp-features-plugin": "^7.10.4" } }, "@babel/plugin-transform-new-target": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.4.4.tgz", - "integrity": "sha512-r1z3T2DNGQwwe2vPGZMBNjioT2scgWzK9BCnDEh+46z8EEwXBq24uRzd65I7pjtugzPSj921aM15RpESgzsSuA==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.10.4.tgz", + "integrity": "sha512-YXwWUDAH/J6dlfwqlWsztI2Puz1NtUAubXhOPLQ5gjR/qmQ5U96DY4FQO8At33JN4XPBhrjB8I4eMmLROjjLjw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-object-super": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.2.0.tgz", - "integrity": "sha512-VMyhPYZISFZAqAPVkiYb7dUe2AsVi2/wCT5+wZdsNO31FojQJa9ns40hzZ6U9f50Jlq4w6qwzdBB2uwqZ00ebg==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.10.4.tgz", + "integrity": "sha512-5iTw0JkdRdJvr7sY0vHqTpnruUpTea32JHmq/atIWqsnNussbRzjEDyWep8UNztt1B5IusBYg8Irb0bLbiEBCQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-replace-supers": "^7.1.0" + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-replace-supers": "^7.10.4" } }, "@babel/plugin-transform-parameters": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.4.4.tgz", - "integrity": "sha512-oMh5DUO1V63nZcu/ZVLQFqiihBGo4OpxJxR1otF50GMeCLiRx5nUdtokd+u9SuVJrvvuIh9OosRFPP4pIPnwmw==", + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.10.5.tgz", + "integrity": "sha512-xPHwUj5RdFV8l1wuYiu5S9fqWGM2DrYc24TMvUiRrPVm+SM3XeqU9BcokQX/kEUe+p2RBwy+yoiR1w/Blq6ubw==", "dev": true, "requires": { - "@babel/helper-call-delegate": "^7.4.4", - "@babel/helper-get-function-arity": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-get-function-arity": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-property-literals": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.2.0.tgz", - "integrity": "sha512-9q7Dbk4RhgcLp8ebduOpCbtjh7C0itoLYHXd9ueASKAG/is5PQtMR5VJGka9NKqGhYEGn5ITahd4h9QeBMylWQ==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.10.4.tgz", + "integrity": "sha512-ofsAcKiUxQ8TY4sScgsGeR2vJIsfrzqvFb9GvJ5UdXDzl+MyYCaBj/FGzXuv7qE0aJcjWMILny1epqelnFlz8g==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-regenerator": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.4.5.tgz", - "integrity": "sha512-gBKRh5qAaCWntnd09S8QC7r3auLCqq5DI6O0DlfoyDjslSBVqBibrMdsqO+Uhmx3+BlOmE/Kw1HFxmGbv0N9dA==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.10.4.tgz", + "integrity": "sha512-3thAHwtor39A7C04XucbMg17RcZ3Qppfxr22wYzZNcVIkPHfpM9J0SO8zuCV6SZa265kxBJSrfKTvDCYqBFXGw==", "dev": true, "requires": { - "regenerator-transform": "^0.14.0" + "regenerator-transform": "^0.14.2" } }, "@babel/plugin-transform-reserved-words": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.2.0.tgz", - "integrity": "sha512-fz43fqW8E1tAB3DKF19/vxbpib1fuyCwSPE418ge5ZxILnBhWyhtPgz8eh1RCGGJlwvksHkyxMxh0eenFi+kFw==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.10.4.tgz", + "integrity": "sha512-hGsw1O6Rew1fkFbDImZIEqA8GoidwTAilwCyWqLBM9f+e/u/sQMQu7uX6dyokfOayRuuVfKOW4O7HvaBWM+JlQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-shorthand-properties": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.2.0.tgz", - "integrity": "sha512-QP4eUM83ha9zmYtpbnyjTLAGKQritA5XW/iG9cjtuOI8s1RuL/3V6a3DeSHfKutJQ+ayUfeZJPcnCYEQzaPQqg==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.10.4.tgz", + "integrity": "sha512-AC2K/t7o07KeTIxMoHneyX90v3zkm5cjHJEokrPEAGEy3UCp8sLKfnfOIGdZ194fyN4wfX/zZUWT9trJZ0qc+Q==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-spread": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.2.2.tgz", - "integrity": "sha512-KWfky/58vubwtS0hLqEnrWJjsMGaOeSBn90Ezn5Jeg9Z8KKHmELbP1yGylMlm5N6TPKeY9A2+UaSYLdxahg01w==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.11.0.tgz", + "integrity": "sha512-UwQYGOqIdQJe4aWNyS7noqAnN2VbaczPLiEtln+zPowRNlD+79w3oi2TWfYe0eZgd+gjZCbsydN7lzWysDt+gw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-skip-transparent-expression-wrappers": "^7.11.0" } }, "@babel/plugin-transform-sticky-regex": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.2.0.tgz", - "integrity": "sha512-KKYCoGaRAf+ckH8gEL3JHUaFVyNHKe3ASNsZ+AlktgHevvxGigoIttrEJb8iKN03Q7Eazlv1s6cx2B2cQ3Jabw==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.10.4.tgz", + "integrity": "sha512-Ddy3QZfIbEV0VYcVtFDCjeE4xwVTJWTmUtorAJkn6u/92Z/nWJNV+mILyqHKrUxXYKA2EoCilgoPePymKL4DvQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-regex": "^7.10.4" } }, "@babel/plugin-transform-template-literals": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.4.4.tgz", - "integrity": "sha512-mQrEC4TWkhLN0z8ygIvEL9ZEToPhG5K7KDW3pzGqOfIGZ28Jb0POUkeWcoz8HnHvhFy6dwAT1j8OzqN8s804+g==", + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.10.5.tgz", + "integrity": "sha512-V/lnPGIb+KT12OQikDvgSuesRX14ck5FfJXt6+tXhdkJ+Vsd0lDCVtF6jcB4rNClYFzaB2jusZ+lNISDk2mMMw==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-annotate-as-pure": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-typeof-symbol": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.2.0.tgz", - "integrity": "sha512-2LNhETWYxiYysBtrBTqL8+La0jIoQQnIScUJc74OYvUGRmkskNY4EzLCnjHBzdmb38wqtTaixpo1NctEcvMDZw==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.10.4.tgz", + "integrity": "sha512-QqNgYwuuW0y0H+kUE/GWSR45t/ccRhe14Fs/4ZRouNNQsyd4o3PG4OtHiIrepbM2WKUBDAXKCAK/Lk4VhzTaGA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-unicode-escapes": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.10.4.tgz", + "integrity": "sha512-y5XJ9waMti2J+e7ij20e+aH+fho7Wb7W8rNuu72aKRwCHFqQdhkdU2lo3uZ9tQuboEJcUFayXdARhcxLQ3+6Fg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-transform-unicode-regex": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.4.4.tgz", - "integrity": "sha512-il+/XdNw01i93+M9J9u4T7/e/Ue/vWfNZE4IRUQjplu2Mqb/AFTDimkw2tdEdSH50wuQXZAbXSql0UphQke+vA==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.10.4.tgz", + "integrity": "sha512-wNfsc4s8N2qnIwpO/WP2ZiSyjfpTamT2C9V9FDH/Ljub9zw6P3SjkXcFmc0RQUt96k2fmIvtla2MMjgTwIAC+A==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.4.4", - "regexpu-core": "^4.5.4" + "@babel/helper-create-regexp-features-plugin": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/polyfill": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.4.4.tgz", - "integrity": "sha512-WlthFLfhQQhh+A2Gn5NSFl0Huxz36x86Jn+E9OW7ibK8edKPq+KLy4apM1yDpQ8kJOVi1OVjpP4vSDLdrI04dg==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.10.4.tgz", + "integrity": "sha512-8BYcnVqQ5kMD2HXoHInBH7H1b/uP3KdnwCYXOqFnXqguOyuu443WXusbIUbWEfY3Z0Txk0M1uG/8YuAMhNl6zg==", "dev": true, "requires": { "core-js": "^2.6.5", - "regenerator-runtime": "^0.13.2" - }, - "dependencies": { - "core-js": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz", - "integrity": "sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A==", - "dev": true - }, - "regenerator-runtime": { - "version": "0.13.2", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.2.tgz", - "integrity": "sha512-S/TQAZJO+D3m9xeN1WTI8dLKBBiRgXBlTJvbWjCThHWZj9EvHK70Ff50/tYj2J/fvBY6JtFVwRuazHN2E7M9BA==", - "dev": true - } + "regenerator-runtime": "^0.13.4" } }, "@babel/preset-env": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.4.5.tgz", - "integrity": "sha512-f2yNVXM+FsR5V8UwcFeIHzHWgnhXg3NpRmy0ADvALpnhB0SLbCvrCRr4BLOUYbQNLS+Z0Yer46x9dJXpXewI7w==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.11.0.tgz", + "integrity": "sha512-2u1/k7rG/gTh02dylX2kL3S0IJNF+J6bfDSp4DI2Ma8QN6Y9x9pmAax59fsCk6QUQG0yqH47yJWA+u1I1LccAg==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.11.0", + "@babel/helper-compilation-targets": "^7.10.4", + "@babel/helper-module-imports": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-proposal-async-generator-functions": "^7.10.4", + "@babel/plugin-proposal-class-properties": "^7.10.4", + "@babel/plugin-proposal-dynamic-import": "^7.10.4", + "@babel/plugin-proposal-export-namespace-from": "^7.10.4", + "@babel/plugin-proposal-json-strings": "^7.10.4", + "@babel/plugin-proposal-logical-assignment-operators": "^7.11.0", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.10.4", + "@babel/plugin-proposal-numeric-separator": "^7.10.4", + "@babel/plugin-proposal-object-rest-spread": "^7.11.0", + "@babel/plugin-proposal-optional-catch-binding": "^7.10.4", + "@babel/plugin-proposal-optional-chaining": "^7.11.0", + "@babel/plugin-proposal-private-methods": "^7.10.4", + "@babel/plugin-proposal-unicode-property-regex": "^7.10.4", + "@babel/plugin-syntax-async-generators": "^7.8.0", + "@babel/plugin-syntax-class-properties": "^7.10.4", + "@babel/plugin-syntax-dynamic-import": "^7.8.0", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.0", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.0", + "@babel/plugin-syntax-top-level-await": "^7.10.4", + "@babel/plugin-transform-arrow-functions": "^7.10.4", + "@babel/plugin-transform-async-to-generator": "^7.10.4", + "@babel/plugin-transform-block-scoped-functions": "^7.10.4", + "@babel/plugin-transform-block-scoping": "^7.10.4", + "@babel/plugin-transform-classes": "^7.10.4", + "@babel/plugin-transform-computed-properties": "^7.10.4", + "@babel/plugin-transform-destructuring": "^7.10.4", + "@babel/plugin-transform-dotall-regex": "^7.10.4", + "@babel/plugin-transform-duplicate-keys": "^7.10.4", + "@babel/plugin-transform-exponentiation-operator": "^7.10.4", + "@babel/plugin-transform-for-of": "^7.10.4", + "@babel/plugin-transform-function-name": "^7.10.4", + "@babel/plugin-transform-literals": "^7.10.4", + "@babel/plugin-transform-member-expression-literals": "^7.10.4", + "@babel/plugin-transform-modules-amd": "^7.10.4", + "@babel/plugin-transform-modules-commonjs": "^7.10.4", + "@babel/plugin-transform-modules-systemjs": "^7.10.4", + "@babel/plugin-transform-modules-umd": "^7.10.4", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.10.4", + "@babel/plugin-transform-new-target": "^7.10.4", + "@babel/plugin-transform-object-super": "^7.10.4", + "@babel/plugin-transform-parameters": "^7.10.4", + "@babel/plugin-transform-property-literals": "^7.10.4", + "@babel/plugin-transform-regenerator": "^7.10.4", + "@babel/plugin-transform-reserved-words": "^7.10.4", + "@babel/plugin-transform-shorthand-properties": "^7.10.4", + "@babel/plugin-transform-spread": "^7.11.0", + "@babel/plugin-transform-sticky-regex": "^7.10.4", + "@babel/plugin-transform-template-literals": "^7.10.4", + "@babel/plugin-transform-typeof-symbol": "^7.10.4", + "@babel/plugin-transform-unicode-escapes": "^7.10.4", + "@babel/plugin-transform-unicode-regex": "^7.10.4", + "@babel/preset-modules": "^0.1.3", + "@babel/types": "^7.11.0", + "browserslist": "^4.12.0", + "core-js-compat": "^3.6.2", + "invariant": "^2.2.2", + "levenary": "^1.1.1", + "semver": "^5.5.0" + } + }, + "@babel/preset-modules": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.3.tgz", + "integrity": "sha512-Ra3JXOHBq2xd56xSF7lMKXdjBn3T772Y1Wet3yWnkDly9zHvJki029tAFzvAAK5cf4YV3yoxuP61crYRol6SVg==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.0.0", "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-async-generator-functions": "^7.2.0", - "@babel/plugin-proposal-json-strings": "^7.2.0", - "@babel/plugin-proposal-object-rest-spread": "^7.4.4", - "@babel/plugin-proposal-optional-catch-binding": "^7.2.0", "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-syntax-async-generators": "^7.2.0", - "@babel/plugin-syntax-json-strings": "^7.2.0", - "@babel/plugin-syntax-object-rest-spread": "^7.2.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.2.0", - "@babel/plugin-transform-arrow-functions": "^7.2.0", - "@babel/plugin-transform-async-to-generator": "^7.4.4", - "@babel/plugin-transform-block-scoped-functions": "^7.2.0", - "@babel/plugin-transform-block-scoping": "^7.4.4", - "@babel/plugin-transform-classes": "^7.4.4", - "@babel/plugin-transform-computed-properties": "^7.2.0", - "@babel/plugin-transform-destructuring": "^7.4.4", "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/plugin-transform-duplicate-keys": "^7.2.0", - "@babel/plugin-transform-exponentiation-operator": "^7.2.0", - "@babel/plugin-transform-for-of": "^7.4.4", - "@babel/plugin-transform-function-name": "^7.4.4", - "@babel/plugin-transform-literals": "^7.2.0", - "@babel/plugin-transform-member-expression-literals": "^7.2.0", - "@babel/plugin-transform-modules-amd": "^7.2.0", - "@babel/plugin-transform-modules-commonjs": "^7.4.4", - "@babel/plugin-transform-modules-systemjs": "^7.4.4", - "@babel/plugin-transform-modules-umd": "^7.2.0", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.4.5", - "@babel/plugin-transform-new-target": "^7.4.4", - "@babel/plugin-transform-object-super": "^7.2.0", - "@babel/plugin-transform-parameters": "^7.4.4", - "@babel/plugin-transform-property-literals": "^7.2.0", - "@babel/plugin-transform-regenerator": "^7.4.5", - "@babel/plugin-transform-reserved-words": "^7.2.0", - "@babel/plugin-transform-shorthand-properties": "^7.2.0", - "@babel/plugin-transform-spread": "^7.2.0", - "@babel/plugin-transform-sticky-regex": "^7.2.0", - "@babel/plugin-transform-template-literals": "^7.4.4", - "@babel/plugin-transform-typeof-symbol": "^7.2.0", - "@babel/plugin-transform-unicode-regex": "^7.4.4", "@babel/types": "^7.4.4", - "browserslist": "^4.6.0", - "core-js-compat": "^3.1.1", - "invariant": "^2.2.2", - "js-levenshtein": "^1.1.3", - "semver": "^5.5.0" + "esutils": "^2.0.2" } }, "@babel/register": { @@ -796,12 +1009,6 @@ "source-map-support": "^0.5.9" }, "dependencies": { - "core-js": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz", - "integrity": "sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A==", - "dev": true - }, "find-cache-dir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", @@ -888,32 +1095,41 @@ } } }, + "@babel/runtime": { + "version": "7.11.2", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.11.2.tgz", + "integrity": "sha512-TeWkU52so0mPtDcaCTxNBI/IHiz0pZgr8VEFqXFtZWpYD08ZB6FaSwVAS8MKRQAP3bYKiVjwysOJgMFY28o6Tw==", + "dev": true, + "requires": { + "regenerator-runtime": "^0.13.4" + } + }, "@babel/template": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.4.4.tgz", - "integrity": "sha512-CiGzLN9KgAvgZsnivND7rkA+AeJ9JB0ciPOD4U59GKbQP2iQl+olF1l76kJOupqidozfZ32ghwBEJDhnk9MEcw==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz", + "integrity": "sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==", "dev": true, "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.4.4", - "@babel/types": "^7.4.4" + "@babel/code-frame": "^7.10.4", + "@babel/parser": "^7.10.4", + "@babel/types": "^7.10.4" } }, "@babel/traverse": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.5.tgz", - "integrity": "sha512-Vc+qjynwkjRmIFGxy0KYoPj4FdVDxLej89kMHFsWScq999uX+pwcX4v9mWRjW0KcAYTPAuVQl2LKP1wEVLsp+A==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.11.0.tgz", + "integrity": "sha512-ZB2V+LskoWKNpMq6E5UUCrjtDUh5IOTAyIl0dTjIEoXum/iKWkoIEKIRDnUucO6f+2FzNkE0oD4RLKoPIufDtg==", "dev": true, "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.4.4", - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.4.4", - "@babel/parser": "^7.4.5", - "@babel/types": "^7.4.4", + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.11.0", + "@babel/helper-function-name": "^7.10.4", + "@babel/helper-split-export-declaration": "^7.11.0", + "@babel/parser": "^7.11.0", + "@babel/types": "^7.11.0", "debug": "^4.1.0", "globals": "^11.1.0", - "lodash": "^4.17.11" + "lodash": "^4.17.19" }, "dependencies": { "debug": { @@ -926,21 +1142,21 @@ } }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true } } }, "@babel/types": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.4.4.tgz", - "integrity": "sha512-dOllgYdnEFOebhkKCjzSVFqw/PmmB8pH6RGOWkY4GsboQNd47b1fBThBSwlHAq9alF9vc1M3+6oqR47R50L0tQ==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", + "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", "dev": true, "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.11", + "@babel/helper-validator-identifier": "^7.10.4", + "lodash": "^4.17.19", "to-fast-properties": "^2.0.0" } }, @@ -981,9 +1197,9 @@ } }, "@sinonjs/commons": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.4.0.tgz", - "integrity": "sha512-9jHK3YF/8HtJ9wCAbG+j8cD0i0+ATS9A7gXFqS36TblLPNy6rEEc+SB0imo91eCboGaBYGV/MT1/br/J+EE7Tw==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.1.tgz", + "integrity": "sha512-892K+kWUUi3cl+LlqEWIDrhvLgdL79tECi8JZUyq6IviKy/DNhuzCRlbHUjxK89f4ypPMMaFnFuR9Ie6DoIMsw==", "dev": true, "requires": { "type-detect": "4.0.8" @@ -999,14 +1215,14 @@ } }, "@sinonjs/samsam": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.1.tgz", - "integrity": "sha512-wRSfmyd81swH0hA1bxJZJ57xr22kC07a1N4zuIL47yTS04bDk6AoCkczcqHEjcRPmJ+FruGJ9WBQiJwMtIElFw==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.3.tgz", + "integrity": "sha512-bKCMKZvWIjYD0BLGnNrxVuw4dkWCYsLqFOUWw8VgKF/+5Y+mE7LfHWPIYoDXowH+3a9LsWDMo0uAP8YDosPvHQ==", "dev": true, "requires": { - "@sinonjs/commons": "^1.0.2", + "@sinonjs/commons": "^1.3.0", "array-from": "^2.1.1", - "lodash": "^4.17.11" + "lodash": "^4.17.15" } }, "@sinonjs/text-encoding": { @@ -1016,9 +1232,9 @@ "dev": true }, "@types/babel-types": { - "version": "7.0.7", - "resolved": "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.7.tgz", - "integrity": "sha512-dBtBbrc+qTHy1WdfHYjBwRln4+LWqASWakLHsWHR2NWHIFkv4W3O070IGoGLEBrJBvct3r0L1BUPuvURi7kYUQ==", + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.8.tgz", + "integrity": "sha512-jvu8g4LR7+p6ao30RhTREnEhHxmP4/R9D9/rOR/Kq14FztORty9SKgtOZUNZNMB9CXLxZ54EWu4dArUE8WdTsw==", "dev": true }, "@types/babylon": { @@ -1030,185 +1246,190 @@ "@types/babel-types": "*" } }, + "@types/json-schema": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.5.tgz", + "integrity": "sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ==", + "dev": true + }, "@types/node": { - "version": "12.0.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.0.4.tgz", - "integrity": "sha512-j8YL2C0fXq7IONwl/Ud5Kt0PeXw22zGERt+HSSnwbKOJVsAGkEz3sFCYwaF9IOuoG1HOtE0vKCj6sXF7Q0+Vaw==", + "version": "14.0.27", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.27.tgz", + "integrity": "sha512-kVrqXhbclHNHGu9ztnAwSncIgJv/FaxmzXJvGXNdcCpV1b8u1/Mi6z6m0vwy0LzKeXFTPLH0NzwmoJ3fNCIq0g==", "dev": true }, "@webassemblyjs/ast": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.8.5.tgz", - "integrity": "sha512-aJMfngIZ65+t71C3y2nBBg5FFG0Okt9m0XEgWZ7Ywgn1oMAT8cNwx00Uv1cQyHtidq0Xn94R4TAywO+LCQ+ZAQ==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", + "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", "dev": true, "requires": { - "@webassemblyjs/helper-module-context": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/wast-parser": "1.8.5" + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0" } }, "@webassemblyjs/floating-point-hex-parser": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.8.5.tgz", - "integrity": "sha512-9p+79WHru1oqBh9ewP9zW95E3XAo+90oth7S5Re3eQnECGq59ly1Ri5tsIipKGpiStHsUYmY3zMLqtk3gTcOtQ==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", "dev": true }, "@webassemblyjs/helper-api-error": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.8.5.tgz", - "integrity": "sha512-Za/tnzsvnqdaSPOUXHyKJ2XI7PDX64kWtURyGiJJZKVEdFOsdKUCPTNEVFZq3zJ2R0G5wc2PZ5gvdTRFgm81zA==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", "dev": true }, "@webassemblyjs/helper-buffer": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.8.5.tgz", - "integrity": "sha512-Ri2R8nOS0U6G49Q86goFIPNgjyl6+oE1abW1pS84BuhP1Qcr5JqMwRFT3Ah3ADDDYGEgGs1iyb1DGX+kAi/c/Q==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz", + "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==", "dev": true }, "@webassemblyjs/helper-code-frame": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.8.5.tgz", - "integrity": "sha512-VQAadSubZIhNpH46IR3yWO4kZZjMxN1opDrzePLdVKAZ+DFjkGD/rf4v1jap744uPVU6yjL/smZbRIIJTOUnKQ==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", + "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", "dev": true, "requires": { - "@webassemblyjs/wast-printer": "1.8.5" + "@webassemblyjs/wast-printer": "1.9.0" } }, "@webassemblyjs/helper-fsm": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.8.5.tgz", - "integrity": "sha512-kRuX/saORcg8se/ft6Q2UbRpZwP4y7YrWsLXPbbmtepKr22i8Z4O3V5QE9DbZK908dh5Xya4Un57SDIKwB9eow==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", "dev": true }, "@webassemblyjs/helper-module-context": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.8.5.tgz", - "integrity": "sha512-/O1B236mN7UNEU4t9X7Pj38i4VoU8CcMHyy3l2cV/kIF4U5KoHXDVqcDuOs1ltkac90IM4vZdHc52t1x8Yfs3g==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", + "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "mamacro": "^0.0.3" + "@webassemblyjs/ast": "1.9.0" } }, "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.8.5.tgz", - "integrity": "sha512-Cu4YMYG3Ddl72CbmpjU/wbP6SACcOPVbHN1dI4VJNJVgFwaKf1ppeFJrwydOG3NDHxVGuCfPlLZNyEdIYlQ6QQ==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", "dev": true }, "@webassemblyjs/helper-wasm-section": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.8.5.tgz", - "integrity": "sha512-VV083zwR+VTrIWWtgIUpqfvVdK4ff38loRmrdDBgBT8ADXYsEZ5mPQ4Nde90N3UYatHdYoDIFb7oHzMncI02tA==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz", + "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5" + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0" } }, "@webassemblyjs/ieee754": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz", - "integrity": "sha512-aaCvQYrvKbY/n6wKHb/ylAJr27GglahUO89CcGXMItrOBqRarUMxWLJgxm9PJNuKULwN5n1csT9bYoMeZOGF3g==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz", + "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", "dev": true, "requires": { "@xtuc/ieee754": "^1.2.0" } }, "@webassemblyjs/leb128": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.8.5.tgz", - "integrity": "sha512-plYUuUwleLIziknvlP8VpTgO4kqNaH57Y3JnNa6DLpu/sGcP6hbVdfdX5aHAV716pQBKrfuU26BJK29qY37J7A==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz", + "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", "dev": true, "requires": { "@xtuc/long": "4.2.2" } }, "@webassemblyjs/utf8": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.8.5.tgz", - "integrity": "sha512-U7zgftmQriw37tfD934UNInokz6yTmn29inT2cAetAsaU9YeVCveWEwhKL1Mg4yS7q//NGdzy79nlXh3bT8Kjw==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz", + "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==", "dev": true }, "@webassemblyjs/wasm-edit": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.8.5.tgz", - "integrity": "sha512-A41EMy8MWw5yvqj7MQzkDjU29K7UJq1VrX2vWLzfpRHt3ISftOXqrtojn7nlPsZ9Ijhp5NwuODuycSvfAO/26Q==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz", + "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/helper-wasm-section": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5", - "@webassemblyjs/wasm-opt": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5", - "@webassemblyjs/wast-printer": "1.8.5" + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/helper-wasm-section": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-opt": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "@webassemblyjs/wast-printer": "1.9.0" } }, "@webassemblyjs/wasm-gen": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.5.tgz", - "integrity": "sha512-BCZBT0LURC0CXDzj5FXSc2FPTsxwp3nWcqXQdOZE4U7h7i8FqtFK5Egia6f9raQLpEKT1VL7zr4r3+QX6zArWg==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz", + "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/ieee754": "1.8.5", - "@webassemblyjs/leb128": "1.8.5", - "@webassemblyjs/utf8": "1.8.5" + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" } }, "@webassemblyjs/wasm-opt": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.5.tgz", - "integrity": "sha512-HKo2mO/Uh9A6ojzu7cjslGaHaUU14LdLbGEKqTR7PBKwT6LdPtLLh9fPY33rmr5wcOMrsWDbbdCHq4hQUdd37Q==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz", + "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5" + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0" } }, "@webassemblyjs/wasm-parser": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.5.tgz", - "integrity": "sha512-pi0SYE9T6tfcMkthwcgCpL0cM9nRYr6/6fjgDtL6q/ZqKHdMWvxitRi5JcZ7RI4SNJJYnYNaWy5UUrHQy998lw==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz", + "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-api-error": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/ieee754": "1.8.5", - "@webassemblyjs/leb128": "1.8.5", - "@webassemblyjs/utf8": "1.8.5" + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" } }, "@webassemblyjs/wast-parser": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.8.5.tgz", - "integrity": "sha512-daXC1FyKWHF1i11obK086QRlsMsY4+tIOKgBqI1lxAnkp9xe9YMcgOxm9kLe+ttjs5aWV2KKE1TWJCN57/Btsg==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", + "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/floating-point-hex-parser": "1.8.5", - "@webassemblyjs/helper-api-error": "1.8.5", - "@webassemblyjs/helper-code-frame": "1.8.5", - "@webassemblyjs/helper-fsm": "1.8.5", + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/floating-point-hex-parser": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-code-frame": "1.9.0", + "@webassemblyjs/helper-fsm": "1.9.0", "@xtuc/long": "4.2.2" } }, "@webassemblyjs/wast-printer": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.8.5.tgz", - "integrity": "sha512-w0U0pD4EhlnvRyeJzBqaVSJAo9w/ce7/WPogeXLzGkO6hzhr4GnQIZ4W4uUt5b9ooAaXPtnXlj0gzsXEOUNYMg==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", + "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/wast-parser": "1.8.5", + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0", "@xtuc/long": "4.2.2" } }, @@ -1243,13 +1464,12 @@ "dev": true }, "accepts": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", - "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", - "dev": true, + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", "requires": { - "mime-types": "~2.1.18", - "negotiator": "0.6.1" + "mime-types": "~2.1.24", + "negotiator": "0.6.2" } }, "acorn": { @@ -1258,12 +1478,6 @@ "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", "dev": true }, - "acorn-dynamic-import": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-4.0.0.tgz", - "integrity": "sha512-d3OEjQV4ROpoflsnUA8HozoIR504TFxNivYEUi6uwz0IYhBkTDXGuWlNdMtybRt3nqVx/L6XqMt0FxkXuWKZhw==", - "dev": true - }, "acorn-globals": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz", @@ -1282,9 +1496,9 @@ } }, "acorn-jsx": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.1.tgz", - "integrity": "sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", + "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", "dev": true }, "adbkit": { @@ -1443,12 +1657,6 @@ "wrap-ansi": "^2.0.0" } }, - "core-js": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz", - "integrity": "sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A==", - "dev": true - }, "decamelize": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", @@ -1464,14 +1672,11 @@ "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", "dev": true }, - "fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", - "dev": true, - "requires": { - "pend": "~1.2.0" - } + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true }, "glob": { "version": "7.1.3", @@ -1487,6 +1692,12 @@ "path-is-absolute": "^1.0.0" } }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + }, "semver": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", @@ -1566,27 +1777,27 @@ } }, "adm-zip": { - "version": "0.4.13", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.13.tgz", - "integrity": "sha512-fERNJX8sOXfel6qCBCMPvZLzENBEhZTzKqg6vrOW5pvoEaQuJhRU4ndTAh6lHOxn1I6jnz2NHra56ZODM751uw==", + "version": "0.4.16", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.16.tgz", + "integrity": "sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg==", "dev": true }, "agent-base": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", - "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", + "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", "dev": true, "requires": { "es6-promisify": "^5.0.0" } }, "ajv": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", - "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", + "version": "6.12.3", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.3.tgz", + "integrity": "sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA==", "dev": true, "requires": { - "fast-deep-equal": "^2.0.1", + "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" @@ -1599,9 +1810,9 @@ "dev": true }, "ajv-keywords": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.0.tgz", - "integrity": "sha512-aUjdRFISbuFOl0EIZc+9e4FfZp0bDZgAdOOf30bJmw8VM9v84SHyVyxDfbWxpGYbdZD/9XoKxfHVNmxPkhwyGw==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", "dev": true }, "ajv-merge-patch": { @@ -1718,12 +1929,12 @@ }, "dependencies": { "async": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", - "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", "dev": true, "requires": { - "lodash": "^4.14.0" + "lodash": "^4.17.14" } } } @@ -1801,12 +2012,6 @@ "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=", "dev": true }, - "array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", - "dev": true - }, "array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", @@ -1884,6 +2089,14 @@ "bn.js": "^4.0.0", "inherits": "^2.0.1", "minimalistic-assert": "^1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + } } }, "assert": { @@ -1932,9 +2145,9 @@ "dev": true }, "ast-types": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.1.tgz", - "integrity": "sha512-b+EeK0WlzrSmpMw5jktWvQGxblpWnvMrV+vOp69RLjzGiHwWV0vgq75DPKtUjppKni3yWwSW8WLGV3Ch/XIWcQ==", + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.3.tgz", + "integrity": "sha512-XTZ7xGML849LkQP86sWdQzfhwbt3YwIO6MqbX9mUNYY98VKaaVZP7YNNm70IpwecbkkxmfC5IYAzOQ/2p29zRA==", "dev": true }, "async": { @@ -1950,9 +2163,9 @@ "dev": true }, "async-limiter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz", - "integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", + "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", "dev": true }, "asynckit": { @@ -1974,9 +2187,9 @@ "dev": true }, "aws4": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", - "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.0.tgz", + "integrity": "sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA==", "dev": true }, "babel-code-frame": { @@ -2009,6 +2222,12 @@ "supports-color": "^2.0.0" } }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", @@ -2018,9 +2237,9 @@ } }, "babel-core": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.0.tgz", - "integrity": "sha1-rzL3izGm/O8RnIew/Y2XU/A6C7g=", + "version": "6.26.3", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", + "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", "dev": true, "requires": { "babel-code-frame": "^6.26.0", @@ -2033,21 +2252,21 @@ "babel-traverse": "^6.26.0", "babel-types": "^6.26.0", "babylon": "^6.18.0", - "convert-source-map": "^1.5.0", - "debug": "^2.6.8", + "convert-source-map": "^1.5.1", + "debug": "^2.6.9", "json5": "^0.5.1", "lodash": "^4.17.4", "minimatch": "^3.0.4", "path-is-absolute": "^1.0.1", - "private": "^0.1.7", + "private": "^0.1.8", "slash": "^1.0.0", - "source-map": "^0.5.6" + "source-map": "^0.5.7" }, "dependencies": { - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", "dev": true } } @@ -2123,15 +2342,16 @@ } }, "babel-loader": { - "version": "8.0.6", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.0.6.tgz", - "integrity": "sha512-4BmWKtBOBm13uoUwd08UwjZlaw3O9GWf456R9j+5YykFZ6LUIjIKLc0zEZf+hauxPOJs96C8k6FvYD09vWzhYw==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.1.0.tgz", + "integrity": "sha512-7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw==", "dev": true, "requires": { - "find-cache-dir": "^2.0.0", - "loader-utils": "^1.0.2", - "mkdirp": "^0.5.1", - "pify": "^4.0.1" + "find-cache-dir": "^2.1.0", + "loader-utils": "^1.4.0", + "mkdirp": "^0.5.3", + "pify": "^4.0.1", + "schema-utils": "^2.6.5" } }, "babel-messages": { @@ -2143,6 +2363,15 @@ "babel-runtime": "^6.22.0" } }, + "babel-plugin-dynamic-import-node": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "dev": true, + "requires": { + "object.assign": "^4.1.0" + } + }, "babel-plugin-syntax-async-functions": { "version": "6.13.0", "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", @@ -2213,6 +2442,14 @@ "requires": { "core-js": "^2.4.0", "regenerator-runtime": "^0.11.0" + }, + "dependencies": { + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + } } }, "babel-template": { @@ -2226,14 +2463,6 @@ "babel-types": "^6.26.0", "babylon": "^6.18.0", "lodash": "^4.17.4" - }, - "dependencies": { - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - } } }, "babel-traverse": { @@ -2253,12 +2482,6 @@ "lodash": "^4.17.4" }, "dependencies": { - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - }, "globals": { "version": "9.18.0", "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", @@ -2355,9 +2578,9 @@ } }, "base64-js": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", - "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", + "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", "dev": true }, "base64url": { @@ -2367,12 +2590,12 @@ "dev": true }, "basic-auth": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.0.tgz", - "integrity": "sha1-AV2z81PgLlY3d1X5YnQuiYHnu7o=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz", + "integrity": "sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==", "dev": true, "requires": { - "safe-buffer": "5.1.1" + "safe-buffer": "5.1.2" } }, "batch": { @@ -2402,25 +2625,36 @@ "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", "dev": true }, - "bl": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.1.tgz", - "integrity": "sha1-ysMo977kVzDUBLaSID/LWQ4XLV4=", + "bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", "dev": true, + "optional": true, "requires": { - "readable-stream": "^2.0.5" + "file-uri-to-path": "1.0.0" + } + }, + "bl": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", + "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", + "dev": true, + "requires": { + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" } }, "bluebird": { - "version": "3.5.5", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.5.tgz", - "integrity": "sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w==", + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", "dev": true }, "bn.js": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.2.tgz", + "integrity": "sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA==", "dev": true }, "body": { @@ -2450,12 +2684,6 @@ "bytes": "1", "string_decoder": "0.10" } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", - "dev": true } } }, @@ -2474,30 +2702,6 @@ "qs": "6.7.0", "raw-body": "2.4.0", "type-is": "~1.6.17" - }, - "dependencies": { - "http-errors": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", - "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - } - }, - "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" - } } }, "boolbase": { @@ -2621,14 +2825,6 @@ "des.js": "^1.0.0", "inherits": "^2.0.1", "safe-buffer": "^5.1.2" - }, - "dependencies": { - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - } } }, "browserify-rsa": { @@ -2639,21 +2835,65 @@ "requires": { "bn.js": "^4.1.0", "randombytes": "^2.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + } } }, "browserify-sign": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", - "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", + "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", "dev": true, "requires": { - "bn.js": "^4.1.1", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.2", - "elliptic": "^6.0.0", - "inherits": "^2.0.1", - "parse-asn1": "^5.0.0" + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.3", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "dependencies": { + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "requires": { + "safe-buffer": "~5.2.0" + } + } } }, "browserify-zlib": { @@ -2666,27 +2906,43 @@ } }, "browserslist": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.6.1.tgz", - "integrity": "sha512-1MC18ooMPRG2UuVFJTHFIAkk6mpByJfxCrnUyvSlu/hyQSFHMrlhM02SzNuCV+quTP4CKmqtOMAIjrifrpBJXQ==", + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.13.0.tgz", + "integrity": "sha512-MINatJ5ZNrLnQ6blGvePd/QOz9Xtu+Ne+x29iQSCHfkU5BugKVJwZKn/iiL8UbpIpa3JhviKjz+XxMo0m2caFQ==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30000971", - "electron-to-chromium": "^1.3.137", - "node-releases": "^1.1.21" + "caniuse-lite": "^1.0.30001093", + "electron-to-chromium": "^1.3.488", + "escalade": "^3.0.1", + "node-releases": "^1.1.58" } }, "buffer": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", - "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz", + "integrity": "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==", "dev": true, "requires": { "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" + "ieee754": "^1.1.4" } }, + "buffer-alloc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "dev": true, + "requires": { + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" + } + }, + "buffer-alloc-unsafe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", + "dev": true + }, "buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", @@ -2699,6 +2955,12 @@ "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=", "dev": true }, + "buffer-fill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=", + "dev": true + }, "buffer-from": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", @@ -2755,18 +3017,13 @@ "y18n": "^4.0.0" }, "dependencies": { - "glob": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", - "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", "dev": true, "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "glob": "^7.1.3" } } } @@ -2804,25 +3061,15 @@ "dev": true }, "camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", + "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", "dev": true }, - "camelcase-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", - "dev": true, - "requires": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" - } - }, "caniuse-lite": { - "version": "1.0.30000973", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000973.tgz", - "integrity": "sha512-/F3t/Yo8LEdRSEPCmI15fLu5vepVh9UCg/9inJXF5AAfW7xRRJkbaM2ut52iRMQMnGCLQouLbFdbOA+VEFOIsg==", + "version": "1.0.30001111", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001111.tgz", + "integrity": "sha512-xnDje2wchd/8mlJu8sXvWxOGvMgv+uT3iZ3bkIAynKOzToCssWCmkz/ZIkQBs/2pUB4uwnJKVORWQ31UkbVjOg==", "dev": true }, "capture-stack-trace": { @@ -2862,9 +3109,9 @@ } }, "chai-arrays": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chai-arrays/-/chai-arrays-2.0.0.tgz", - "integrity": "sha512-jWAvZu1BV8tL3pj0iosBECzzHEg+XB1zSnMjJGX83bGi/1GlGdDO7J/A0sbBBS6KJT0FVqZIzZW9C6WLiMkHpQ==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/chai-arrays/-/chai-arrays-2.2.0.tgz", + "integrity": "sha512-4awrdGI2EH8owJ9I58PXwG4N56/FiM8bsn4CVSNEgr4GKAM6Kq5JPVApUbhUBjDakbZNuRvV7quRSC38PWq/tg==", "dev": true }, "chai-as-promised": { @@ -2933,9 +3180,9 @@ } }, "chokidar": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.6.tgz", - "integrity": "sha512-V2jUo67OKkc6ySiRpJrjlpJKl9kDuG+Xb8VgsGzb+aEouhgS1D0weyPU4lEzdAcsCAvrih2J2BqyXqHWvVLw5g==", + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", "dev": true, "requires": { "anymatch": "^2.0.0", @@ -2943,561 +3190,24 @@ "braces": "^2.3.2", "fsevents": "^1.2.7", "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - }, - "dependencies": { - "fsevents": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz", - "integrity": "sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==", - "dev": true, - "optional": true, - "requires": { - "nan": "^2.12.1", - "node-pre-gyp": "^0.12.0" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "debug": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "deep-extend": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "glob": { - "version": "7.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.24", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "ini": { - "version": "1.3.5", - "bundled": true, - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true, - "optional": true - }, - "minipass": { - "version": "2.3.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.2.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "needle": { - "version": "2.3.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "^4.1.0", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.12.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4" - } - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.4.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "rimraf": { - "version": "2.6.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "bundled": true, - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.0", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.3.4", - "minizlib": "^1.1.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.2" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "yallist": { - "version": "3.0.3", - "bundled": true, - "dev": true, - "optional": true - } + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + }, + "dependencies": { + "fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "dev": true, + "optional": true, + "requires": { + "bindings": "^1.5.0", + "nan": "^2.12.1" } }, "is-glob": { @@ -3516,17 +3226,17 @@ "dev": true }, "upath": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.2.tgz", - "integrity": "sha512-kXpym8nmDmlCBr7nKdIx8P2jNBa+pBpIUFRnKJ4dr8htyYGJFokkr2ZvERRtUN+9SY+JqXouNgUPtv6JQva/2Q==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", + "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", "dev": true } } }, "chownr": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", - "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", "dev": true }, "chrome-trace-event": { @@ -3578,9 +3288,9 @@ } }, "clean-css": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.1.tgz", - "integrity": "sha512-4ZxI6dy4lrY6FHzfiy1aEOXgu4LIsW2MhwG0VBKdcoGoH/XLFgaHSdLTGr4O8Be6A8r3MOphEiI8Gc1n0ecf3g==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz", + "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==", "dev": true, "requires": { "source-map": "~0.6.0" @@ -3610,15 +3320,15 @@ } }, "cli-width": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", + "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==", "dev": true }, "clipboard-polyfill": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/clipboard-polyfill/-/clipboard-polyfill-2.8.1.tgz", - "integrity": "sha512-2qclMYSM/L5Wv8mNeF2rvvtaKFJiG3y5mI2wwsFIUt0yE2hWjNg6qvsRo6D8TTaLTNXDfEI47TyaxSxjwD8ADQ==", + "version": "2.8.6", + "resolved": "https://registry.npmjs.org/clipboard-polyfill/-/clipboard-polyfill-2.8.6.tgz", + "integrity": "sha512-kz/1ov+PXsBpGnW9XJH3dLWdYj12FpXqO89Dngm/GRPoI36E/tnYs6N0YPTEhxM9WHAlFiN5eoyIVuv5nzKXvg==", "dev": true }, "cliui": { @@ -3674,15 +3384,9 @@ "dev": true }, "codemirror": { - "version": "5.47.0", - "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.47.0.tgz", - "integrity": "sha512-kV49Fr+NGFHFc/Imsx6g180hSlkGhuHxTSDDmDHOuyln0MQYFLixDY4+bFkBVeCEiepYfDimAF/e++9jPJk4QA==", - "dev": true - }, - "coffeescript": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/coffeescript/-/coffeescript-1.10.0.tgz", - "integrity": "sha1-56qDAZF+9iGzXYo580jc3R234z4=", + "version": "5.56.0", + "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.56.0.tgz", + "integrity": "sha512-MfKVmYgifXjQpLSgpETuih7A7WTTIsxvKfSLGseTY5+qt0E1UD1wblZGM6WLenORo8sgmf+3X+WTe2WF7mufyw==", "dev": true }, "collection-visit": { @@ -3736,13 +3440,10 @@ } }, "commander": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", - "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", - "dev": true, - "requires": { - "graceful-readlink": ">= 1.0.0" - } + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true }, "common-tags": { "version": "1.8.0", @@ -3824,14 +3525,14 @@ } }, "connect": { - "version": "3.6.6", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.6.6.tgz", - "integrity": "sha1-Ce/2xVr3I24TcTWnJXSFi2eG9SQ=", + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", + "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", "dev": true, "requires": { "debug": "2.6.9", - "finalhandler": "1.1.0", - "parseurl": "~1.3.2", + "finalhandler": "1.1.2", + "parseurl": "~1.3.3", "utils-merge": "1.0.1" } }, @@ -3842,13 +3543,10 @@ "dev": true }, "console-browserify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", - "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", - "dev": true, - "requires": { - "date-now": "^0.1.4" - } + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", + "dev": true }, "constantinople": { "version": "3.1.2", @@ -3874,13 +3572,6 @@ "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", "requires": { "safe-buffer": "5.1.2" - }, - "dependencies": { - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - } } }, "content-type": { @@ -3895,10 +3586,13 @@ "dev": true }, "convert-source-map": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", - "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=", - "dev": true + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } }, "cookie": { "version": "0.4.0", @@ -3922,6 +3616,17 @@ "mkdirp": "^0.5.1", "rimraf": "^2.5.4", "run-queue": "^1.0.0" + }, + "dependencies": { + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } } }, "copy-descriptor": { @@ -3931,36 +3636,29 @@ "dev": true }, "core-js": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz", - "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=", + "version": "2.6.11", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", + "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==", "dev": true }, "core-js-compat": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.1.3.tgz", - "integrity": "sha512-EP018pVhgwsKHz3YoN1hTq49aRe+h017Kjz0NQz3nXV0cCRMvH3fLQl+vEPGr4r4J5sk4sU3tUC7U1aqTCeJeA==", + "version": "3.6.5", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.5.tgz", + "integrity": "sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng==", "dev": true, "requires": { - "browserslist": "^4.6.0", - "core-js-pure": "3.1.3", - "semver": "^6.1.0" + "browserslist": "^4.8.5", + "semver": "7.0.0" }, "dependencies": { "semver": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.1.1.tgz", - "integrity": "sha512-rWYq2e5iYW+fFe/oPPtYJxYgjBm8sC4rmoGdUOgBB7VnwKt6HrL793l2voH1UlsyYZpJ4g0wfjnTEO1s1NP2eQ==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", "dev": true } } }, - "core-js-pure": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.1.3.tgz", - "integrity": "sha512-k3JWTrcQBKqjkjI0bkfXS0lbpWPxYuHWfMMjC1VDmzU4Q58IwSbuXSo99YO/hUHlw/EB4AlfA2PVxOGkrIq6dA==", - "dev": true - }, "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", @@ -3968,10 +3666,13 @@ "dev": true }, "crc": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/crc/-/crc-3.5.0.tgz", - "integrity": "sha1-mLi6fUiWZbo5efWbITgTdBAaGWQ=", - "dev": true + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz", + "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==", + "dev": true, + "requires": { + "buffer": "^5.1.0" + } }, "crc32-stream": { "version": "2.0.0", @@ -3984,13 +3685,21 @@ } }, "create-ecdh": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", - "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", + "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", "dev": true, "requires": { "bn.js": "^4.1.0", - "elliptic": "^6.0.0" + "elliptic": "^6.5.3" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + } } }, "create-error-class": { @@ -4085,6 +3794,26 @@ "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", "dev": true }, + "css": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", + "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "source-map": "^0.6.1", + "source-map-resolve": "^0.5.2", + "urix": "^0.1.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, "css-parse": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-1.7.0.tgz", @@ -4109,28 +3838,20 @@ "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", "dev": true }, - "currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "dev": true, - "requires": { - "array-find-index": "^1.0.1" - } - }, "cyclist": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-0.2.2.tgz", - "integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", + "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", "dev": true }, "d": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", - "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", "dev": true, "requires": { - "es5-ext": "^0.10.9" + "es5-ext": "^0.10.50", + "type": "^1.0.1" } }, "dashdash": { @@ -4143,37 +3864,16 @@ } }, "data-uri-to-buffer": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-2.0.1.tgz", - "integrity": "sha512-OkVVLrerfAKZlW2ZZ3Ve2y65jgiWqBKsTfUIAFbn8nVbPcCZg6l6gikKlEYv0kXcmzqGm6mFq/Jf2vriuEkv8A==", - "dev": true, - "requires": { - "@types/node": "^8.0.7" - }, - "dependencies": { - "@types/node": { - "version": "8.10.49", - "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.49.tgz", - "integrity": "sha512-YX30JVx0PvSmJ3Eqr74fYLGeBxD+C7vIL20ek+GGGLJeUbVYRUW3EzyAXpIRA0K8c8o0UWqR/GwEFYiFoz1T8w==", - "dev": true - } - } - }, - "date-now": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", - "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-1.2.0.tgz", + "integrity": "sha512-vKQ9DTQPN1FLYiiEEOQ6IBGFqvjCa5rSK3cWMy/Nespm5d/x3dGFT9UBZnkLxCwua/IXBi2TYnwTEpsOvhC4UQ==", "dev": true }, "dateformat": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz", - "integrity": "sha1-nxJLZ1lMk3/3BpMuSmQsyo27/uk=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1", - "meow": "^3.3.0" - } + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", + "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", + "dev": true }, "debounce": { "version": "1.1.0", @@ -4211,10 +3911,18 @@ } }, "deep-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", - "dev": true + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", + "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", + "dev": true, + "requires": { + "is-arguments": "^1.0.4", + "is-date-object": "^1.0.1", + "is-regex": "^1.0.4", + "object-is": "^1.0.1", + "object-keys": "^1.1.1", + "regexp.prototype.flags": "^1.2.0" + } }, "deep-extend": { "version": "0.6.0", @@ -4345,9 +4053,9 @@ "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" }, "des.js": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", - "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", "dev": true, "requires": { "inherits": "^2.0.1", @@ -4395,6 +4103,14 @@ "bn.js": "^4.1.0", "miller-rabin": "^4.0.0", "randombytes": "^2.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + } } }, "dispensary": { @@ -4420,12 +4136,12 @@ "dev": true }, "async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", - "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", "dev": true, "requires": { - "lodash": "^4.17.11" + "lodash": "^4.17.14" } }, "cliui": { @@ -4531,9 +4247,9 @@ } }, "dom-walk": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.1.tgz", - "integrity": "sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg=", + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", + "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==", "dev": true }, "domain-browser": { @@ -4577,13 +4293,13 @@ } }, "dtrace-provider": { - "version": "0.8.7", - "resolved": "https://registry.npmjs.org/dtrace-provider/-/dtrace-provider-0.8.7.tgz", - "integrity": "sha1-3JObTT4GIM/gwc2APQ0tftBP/QQ=", + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/dtrace-provider/-/dtrace-provider-0.8.8.tgz", + "integrity": "sha512-b7Z7cNtHPhH9EJhNNbbeqTcXB8LGFFZhq1PGgEvpeHlzd36bhbdTWoE/Ba/YguqpBSlAPKnARWhVlhunCMwfxg==", "dev": true, "optional": true, "requires": { - "nan": "^2.10.0" + "nan": "^2.14.0" } }, "duplexer3": { @@ -4629,15 +4345,15 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.146", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.146.tgz", - "integrity": "sha512-BrUq08sx7eR4PCwLbjFxXmjcbDro6DSoc1pN8VCxq76U+o9JQzJlWH/NVtcpAqcktwpE5CVvMyqHqTQfCETNoQ==", + "version": "1.3.523", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.523.tgz", + "integrity": "sha512-D4/3l5DpciddD92IDRtpLearQSGzly8FwBJv+nITvLH8YJrFabpDFe4yuiOJh2MS4/EsXqyQTXyw1toeYPtshQ==", "dev": true }, "elliptic": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.1.tgz", - "integrity": "sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ==", + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", + "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", "dev": true, "requires": { "bn.js": "^4.4.0", @@ -4647,6 +4363,14 @@ "inherits": "^2.0.1", "minimalistic-assert": "^1.0.0", "minimalistic-crypto-utils": "^1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + } } }, "email-validator": { @@ -4656,9 +4380,9 @@ "dev": true }, "emojis-list": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", - "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", "dev": true }, "encodeurl": { @@ -4667,32 +4391,55 @@ "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" }, "encoding": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", - "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", "dev": true, "requires": { - "iconv-lite": "~0.4.13" + "iconv-lite": "^0.6.2" + }, + "dependencies": { + "iconv-lite": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz", + "integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + } } }, "end-of-stream": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", - "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", "dev": true, "requires": { "once": "^1.4.0" } }, "enhanced-resolve": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz", - "integrity": "sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz", + "integrity": "sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ==", "dev": true, "requires": { "graceful-fs": "^4.1.2", - "memory-fs": "^0.4.0", + "memory-fs": "^0.5.0", "tapable": "^1.0.0" + }, + "dependencies": { + "memory-fs": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", + "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", + "dev": true, + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + } } }, "entities": { @@ -4711,13 +4458,12 @@ } }, "error": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/error/-/error-7.0.2.tgz", - "integrity": "sha1-pfdf/02ZJhJt2sDqXcOOaJFTywI=", + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/error/-/error-7.2.1.tgz", + "integrity": "sha512-fo9HBvWnx3NGUKMvMwB/CBCMMrfEJgbDTVDEkPygA3Bdd3lM1OyCd+rbQ8BwnpF6GdVeOLDNmyL4N5Bg80ZvdA==", "dev": true, "requires": { - "string-template": "~0.2.1", - "xtend": "~4.0.0" + "string-template": "~0.2.1" } }, "error-ex": { @@ -4730,23 +4476,28 @@ } }, "es-abstract": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.13.0.tgz", - "integrity": "sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==", + "version": "1.17.6", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", + "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", "dev": true, "requires": { - "es-to-primitive": "^1.2.0", + "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", "has": "^1.0.3", - "is-callable": "^1.1.4", - "is-regex": "^1.0.4", - "object-keys": "^1.0.12" + "has-symbols": "^1.0.1", + "is-callable": "^1.2.0", + "is-regex": "^1.1.0", + "object-inspect": "^1.7.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.0", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" } }, "es-to-primitive": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz", - "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, "requires": { "is-callable": "^1.1.4", @@ -4755,14 +4506,14 @@ } }, "es5-ext": { - "version": "0.10.50", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.50.tgz", - "integrity": "sha512-KMzZTPBkeQV/JcSQhI5/z6d9VWJ3EnQ194USTUwIYZ2ZbpN8+SGXQKt1h68EX44+qt+Fzr8DO17vnxrw7c3agw==", + "version": "0.10.53", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", + "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", "dev": true, "requires": { "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.1", - "next-tick": "^1.0.0" + "es6-symbol": "~3.1.3", + "next-tick": "~1.0.0" } }, "es6-error": { @@ -4812,9 +4563,9 @@ }, "dependencies": { "es6-promise": { - "version": "4.2.6", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.6.tgz", - "integrity": "sha512-aRVgGdnmW2OiySVPUC9e6m+plolMAJKjZnQlCwNSuK5yQ0JN61DZSO1X1Ufd1foqWRAlig0rhduTCHe7sVtK5Q==", + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", "dev": true } } @@ -4830,30 +4581,48 @@ "es6-iterator": "~2.0.1", "es6-symbol": "3.1.1", "event-emitter": "~0.3.5" + }, + "dependencies": { + "es6-symbol": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", + "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + } } }, "es6-symbol": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", - "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", "dev": true, "requires": { - "d": "1", - "es5-ext": "~0.10.14" + "d": "^1.0.1", + "ext": "^1.1.2" } }, "es6-weak-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", - "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", + "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", "dev": true, "requires": { "d": "1", - "es5-ext": "^0.10.14", - "es6-iterator": "^2.0.1", + "es5-ext": "^0.10.46", + "es6-iterator": "^2.0.3", "es6-symbol": "^3.1.1" } }, + "escalade": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.0.2.tgz", + "integrity": "sha512-gPYAU37hYCUhW5euPeR+Y74F7BL+IBsV93j5cvGriSaD1aG6MGsqsV1yamRdrWrb2j3aiZvb0X+UBOWpx3JWtQ==", + "dev": true + }, "escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", @@ -4866,24 +4635,18 @@ "dev": true }, "escodegen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.1.tgz", - "integrity": "sha512-JwiqFD9KdGVVpeuRa68yU3zZnBEOcPs0nKW7wZzXky8Z7tffdYUHbe11bPCV5jYlK6DVdKLWLm0f5I/QlL0Kmw==", + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", + "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", "dev": true, "requires": { - "esprima": "^3.1.3", + "esprima": "^4.0.1", "estraverse": "^4.2.0", "esutils": "^2.0.2", "optionator": "^0.8.1", "source-map": "~0.6.1" }, "dependencies": { - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", - "dev": true - }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -4966,24 +4729,10 @@ "ms": "^2.1.1" } }, - "glob": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", - "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, "strip-ansi": { @@ -5007,9 +4756,9 @@ }, "dependencies": { "acorn": { - "version": "5.7.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", - "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", + "version": "5.7.4", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz", + "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==", "dev": true }, "acorn-jsx": { @@ -5243,12 +4992,6 @@ "strip-ansi": "^3.0.0" } }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - }, "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", @@ -5338,9 +5081,9 @@ }, "dependencies": { "acorn": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.1.1.tgz", - "integrity": "sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", "dev": true } } @@ -5352,12 +5095,20 @@ "dev": true }, "esquery": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", - "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", + "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", "dev": true, "requires": { - "estraverse": "^4.0.0" + "estraverse": "^5.1.0" + }, + "dependencies": { + "estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true + } } }, "esrecurse": { @@ -5370,15 +5121,15 @@ } }, "estraverse": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", - "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true }, "esutils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true }, "etag": { @@ -5415,9 +5166,9 @@ "dev": true }, "events": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.0.0.tgz", - "integrity": "sha512-Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.2.0.tgz", + "integrity": "sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==", "dev": true }, "evp_bytestokey": { @@ -5532,131 +5283,10 @@ "send": "0.17.1", "serve-static": "1.14.1", "setprototypeof": "1.1.1", - "statuses": "~1.5.0", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "accepts": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", - "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", - "requires": { - "mime-types": "~2.1.24", - "negotiator": "0.6.2" - } - }, - "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - } - }, - "http-errors": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", - "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" - }, - "mime-db": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", - "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==" - }, - "mime-types": { - "version": "2.1.24", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", - "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", - "requires": { - "mime-db": "1.40.0" - } - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" - }, - "negotiator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" - }, - "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "send": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", - "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", - "requires": { - "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "~1.7.2", - "mime": "1.6.0", - "ms": "2.1.1", - "on-finished": "~2.3.0", - "range-parser": "~1.2.1", - "statuses": "~1.5.0" - } - }, - "serve-static": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", - "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.17.1" - } - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" - } + "statuses": "~1.5.0", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" } }, "express-sslify": { @@ -5664,6 +5294,23 @@ "resolved": "https://registry.npmjs.org/express-sslify/-/express-sslify-1.2.0.tgz", "integrity": "sha1-MOhLzu0VV+sYdnK74UMKCioQDZw=" }, + "ext": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", + "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "dev": true, + "requires": { + "type": "^2.0.0" + }, + "dependencies": { + "type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", + "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==", + "dev": true + } + } + }, "extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", @@ -5768,15 +5415,15 @@ } }, "extract-zip": { - "version": "1.6.7", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.6.7.tgz", - "integrity": "sha1-qEC0uK9kAyZMjbV/Txp0Mz74H+k=", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz", + "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", "dev": true, "requires": { - "concat-stream": "1.6.2", - "debug": "2.6.9", - "mkdirp": "0.5.1", - "yauzl": "2.4.1" + "concat-stream": "^1.6.2", + "debug": "^2.6.9", + "mkdirp": "^0.5.4", + "yauzl": "^2.10.0" } }, "extsprintf": { @@ -5786,9 +5433,9 @@ "dev": true }, "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", "dev": true }, "fast-json-parse": { @@ -5798,18 +5445,26 @@ "dev": true }, "fast-json-patch": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-2.1.0.tgz", - "integrity": "sha512-PipOsAKamRw7+CXtKiieehyjUeDVPJ5J7b2kdJYerEf6TSUQoD2ijpVyZ88KQm5YXziff4h762bz3+vzf56khg==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-2.2.1.tgz", + "integrity": "sha512-4j5uBaTnsYAV5ebkidvxiLUYOwjQ+JSFljeqfTxCrH9bDmlCQaOJFS84oDJ2rAXZq2yskmk3ORfoP9DCwqFNig==", "dev": true, "requires": { - "deep-equal": "^1.0.1" + "fast-deep-equal": "^2.0.1" + }, + "dependencies": { + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + } } }, "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true }, "fast-levenshtein": { @@ -5825,9 +5480,9 @@ "dev": true }, "fast-safe-stringify": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.6.tgz", - "integrity": "sha512-q8BZ89jjc+mz08rSxROs8VsrBBcn1SIw1kq9NjolL509tkABRk9io01RAjSaEv1Xb2uFLt8VtRiZbGp5H8iDtg==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz", + "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==", "dev": true }, "faye-websocket": { @@ -5840,18 +5495,18 @@ } }, "fd-slicer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz", - "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", "dev": true, "requires": { "pend": "~1.2.0" } }, "figgy-pudding": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.1.tgz", - "integrity": "sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", + "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", "dev": true }, "figures": { @@ -5909,17 +5564,16 @@ } }, "finalhandler": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz", - "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=", - "dev": true, + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", "requires": { "debug": "2.6.9", - "encodeurl": "~1.0.1", + "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "on-finished": "~2.3.0", - "parseurl": "~1.3.2", - "statuses": "~1.3.1", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", "unpipe": "~1.0.0" } }, @@ -6023,12 +5677,6 @@ "requires": { "lodash": "^4.14.0" } - }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true } } }, @@ -6066,6 +5714,17 @@ "graceful-fs": "^4.1.2", "rimraf": "~2.6.2", "write": "^0.2.1" + }, + "dependencies": { + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } } }, "flatstr": { @@ -6097,32 +5756,6 @@ "requires": { "inherits": "^2.0.3", "readable-stream": "^2.3.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } } }, "for-in": { @@ -6186,6 +5819,12 @@ "readable-stream": "^2.0.0" } }, + "fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", + "dev": true + }, "fs-extra": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", @@ -6249,12 +5888,6 @@ "isarray": "0.0.1", "string_decoder": "~0.10.x" } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", - "dev": true } } }, @@ -6360,6 +5993,12 @@ "is-property": "^1.0.0" } }, + "gensync": { + "version": "1.0.0-beta.1", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", + "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==", + "dev": true + }, "get-caller-file": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", @@ -6378,12 +6017,6 @@ "integrity": "sha512-lXNzT/h/dTjTxRbm9BXb+SGxxzkm97h/PCIKtlN/CBCxxmkkIVV21udumMS93MuVTDX583gqc94v3RjuHmI+2Q==", "dev": true }, - "get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", - "dev": true - }, "get-stream": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", @@ -6391,54 +6024,17 @@ "dev": true }, "get-uri": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.3.tgz", - "integrity": "sha512-x5j6Ks7FOgLD/GlvjKwgu7wdmMR55iuRHhn8hj/+gA+eSbxQvZ+AEomq+3MgVEZj1vpi738QahGbCCSIDtXtkw==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.4.tgz", + "integrity": "sha512-v7LT/s8kVjs+Tx0ykk1I+H/rbpzkHvuIq87LmeXptcf5sNWm9uQiwjNAt94SJPA1zOlCntmnOlJvVWKmzsxG8Q==", "dev": true, "requires": { - "data-uri-to-buffer": "2", - "debug": "4", + "data-uri-to-buffer": "1", + "debug": "2", "extend": "~3.0.2", "file-uri-to-path": "1", "ftp": "~0.3.10", - "readable-stream": "3" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - }, - "readable-stream": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", - "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "string_decoder": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.2.0.tgz", - "integrity": "sha512-6YqyX6ZWEYguAxgZzHGL7SsCeGx3V2TtOTqZz1xSTSWnqsbWwbptafNyvf/ACquZUXV3DANr5BDIwNYe1mN42w==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } + "readable-stream": "2" } }, "get-value": { @@ -6482,6 +6078,12 @@ "shelljs": "0.7.7" }, "dependencies": { + "graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "dev": true + }, "shelljs": { "version": "0.7.7", "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.7.tgz", @@ -6496,15 +6098,15 @@ } }, "glob": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.6.tgz", - "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=", + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", "dev": true, "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", - "minimatch": "^3.0.2", + "minimatch": "^3.0.4", "once": "^1.3.0", "path-is-absolute": "^1.0.0" } @@ -6520,21 +6122,13 @@ } }, "global": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/global/-/global-4.3.2.tgz", - "integrity": "sha1-52mJJopsdMOJCLEwWxD8DjlOnQ8=", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", + "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", "dev": true, "requires": { "min-document": "^2.19.0", - "process": "~0.5.1" - }, - "dependencies": { - "process": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/process/-/process-0.5.2.tgz", - "integrity": "sha1-FjjYqONML0QKkduVq5rrZ3/Bhc8=", - "dev": true - } + "process": "^0.11.10" } }, "global-dirs": { @@ -6577,36 +6171,14 @@ "dev": true }, "globule": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.1.tgz", - "integrity": "sha512-g7QtgWF4uYSL5/dn71WxubOrS7JVGCnFPEnoeChJmBnyR9Mw8nGoEwOgJL/RC2Te0WhbsEUCejfH8SZNJ+adYQ==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.2.tgz", + "integrity": "sha512-7IDTQTIu2xzXkT+6mlluidnWo+BypnbSoEVVQCGfzqnl5Ik8d3e1d4wycb8Rj9tWW+Z39uPWsdlquqiqPCd/pA==", "dev": true, "requires": { "glob": "~7.1.1", "lodash": "~4.17.10", "minimatch": "~3.0.2" - }, - "dependencies": { - "glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "lodash": { - "version": "4.17.10", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", - "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", - "dev": true - } } }, "got": { @@ -6629,9 +6201,9 @@ } }, "graceful-fs": { - "version": "4.1.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", "dev": true }, "graceful-readlink": { @@ -6641,12 +6213,12 @@ "dev": true }, "graphlib": { - "version": "2.1.7", - "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.7.tgz", - "integrity": "sha512-TyI9jIy2J4j0qgPmOOrHTCtpPqJGN/aurBwc6ZT+bRii+di1I+Wv3obRhVrmBEXet+qkMaEX67dXrwsd3QQM6w==", + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.8.tgz", + "integrity": "sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==", "dev": true, "requires": { - "lodash": "^4.17.5" + "lodash": "^4.17.15" } }, "growl": { @@ -6662,46 +6234,32 @@ "dev": true }, "grunt": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.0.4.tgz", - "integrity": "sha512-PYsMOrOC+MsdGEkFVwMaMyc6Ob7pKmq+deg1Sjr+vvMWp35sztfwKE7qoN51V+UEtHsyNuMcGdgMLFkBHvMxHQ==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.2.1.tgz", + "integrity": "sha512-zgJjn9N56tScvRt/y0+1QA+zDBnKTrkpyeSBqQPLcZvbqTD/oyGMrdZQXmm6I3828s+FmPvxc3Xv+lgKFtudOw==", "dev": true, "requires": { - "coffeescript": "~1.10.0", - "dateformat": "~1.0.12", + "dateformat": "~3.0.3", "eventemitter2": "~0.4.13", - "exit": "~0.1.1", + "exit": "~0.1.2", "findup-sync": "~0.3.0", - "glob": "~7.0.0", - "grunt-cli": "~1.2.0", + "glob": "~7.1.6", + "grunt-cli": "~1.3.2", "grunt-known-options": "~1.1.0", "grunt-legacy-log": "~2.0.0", "grunt-legacy-util": "~1.1.1", "iconv-lite": "~0.4.13", - "js-yaml": "~3.13.0", - "minimatch": "~3.0.2", - "mkdirp": "~0.5.1", + "js-yaml": "~3.14.0", + "minimatch": "~3.0.4", + "mkdirp": "~1.0.4", "nopt": "~3.0.6", - "path-is-absolute": "~1.0.0", - "rimraf": "~2.6.2" + "rimraf": "~3.0.2" }, "dependencies": { - "grunt-cli": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.2.0.tgz", - "integrity": "sha1-VisRnrsGndtGSs4oRVAb6Xs1tqg=", - "dev": true, - "requires": { - "findup-sync": "~0.3.0", - "grunt-known-options": "~1.1.0", - "nopt": "~3.0.6", - "resolve": "~1.1.0" - } - }, - "resolve": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", - "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "dev": true } } @@ -6720,9 +6278,9 @@ }, "dependencies": { "nopt": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", - "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz", + "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==", "dev": true, "requires": { "abbrev": "1", @@ -6742,12 +6300,12 @@ }, "dependencies": { "rimraf": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", - "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", "dev": true, "requires": { - "glob": "^7.0.5" + "glob": "^7.1.3" } } } @@ -6896,19 +6454,13 @@ }, "dependencies": { "async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", - "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", "dev": true, "requires": { - "lodash": "^4.17.10" + "lodash": "^4.17.14" } - }, - "lodash": { - "version": "4.17.10", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", - "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", - "dev": true } } }, @@ -7001,12 +6553,12 @@ "dev": true }, "har-validator": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", - "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", "dev": true, "requires": { - "ajv": "^6.5.5", + "ajv": "^6.12.3", "har-schema": "^2.0.0" } }, @@ -7041,9 +6593,9 @@ "dev": true }, "has-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", - "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", "dev": true }, "has-value": { @@ -7088,13 +6640,48 @@ } }, "hash-base": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", - "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", "dev": true, "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "dependencies": { + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "requires": { + "safe-buffer": "~5.2.0" + } + } } }, "hash.js": { @@ -7114,9 +6701,9 @@ "dev": true }, "highlight.js": { - "version": "9.15.8", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-9.15.8.tgz", - "integrity": "sha512-RrapkKQWwE+wKdF73VsOa2RQdIoO3mxwJ4P8mhbI6KYJUraUHRKM5w5zQQKXNk0xNL4UVRdulV9SBJcmzJNzVA==", + "version": "9.18.3", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-9.18.3.tgz", + "integrity": "sha512-zBZAmhSupHIl5sITeMqIJnYCDfAEc3Gdkqj65wC1lpI468MMQeeQkhcIAvk+RylAkxrCcI9xy9piHiXeQ1BdzQ==", "dev": true }, "hmac-drbg": { @@ -7156,9 +6743,9 @@ "dev": true }, "hosted-git-info": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", - "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==", + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", "dev": true }, "htmlparser2": { @@ -7176,9 +6763,9 @@ }, "dependencies": { "readable-stream": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", - "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "dev": true, "requires": { "inherits": "^2.0.3", @@ -7186,47 +6773,39 @@ "util-deprecate": "^1.0.1" } }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, "string_decoder": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.2.0.tgz", - "integrity": "sha512-6YqyX6ZWEYguAxgZzHGL7SsCeGx3V2TtOTqZz1xSTSWnqsbWwbptafNyvf/ACquZUXV3DANr5BDIwNYe1mN42w==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "dev": true, "requires": { - "safe-buffer": "~5.1.0" + "safe-buffer": "~5.2.0" } } } }, "http-errors": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", - "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", - "dev": true, + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", + "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", "requires": { - "depd": "1.1.1", + "depd": "~1.1.2", "inherits": "2.0.3", - "setprototypeof": "1.0.3", - "statuses": ">= 1.3.1 < 2" - }, - "dependencies": { - "depd": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", - "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=", - "dev": true - }, - "setprototypeof": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", - "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=", - "dev": true - } + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" } }, "http-parser-js": { - "version": "0.4.13", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.13.tgz", - "integrity": "sha1-O9bW/ebjFyyTNMOzO2wZPYD+ETc=", + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.2.tgz", + "integrity": "sha512-opCO9ASqg5Wy2FNo7A0sxy71yGbbkJJXLdgMK04Tcypw9jr2MgWbyubb0+WdmDmGnFflO7fRbqbaihh/ENDlRQ==", "dev": true }, "http-proxy-agent": { @@ -7274,12 +6853,12 @@ "dev": true }, "https-proxy-agent": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.1.tgz", - "integrity": "sha512-HPCTS1LW51bcyMYbxUIOO4HEOlQ1/1qRaFWcyxvwaqUS9TY88aoEuHUY33kuAh1YhVVaDQhLZsnPd+XNARWZlQ==", + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", + "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==", "dev": true, "requires": { - "agent-base": "^4.1.0", + "agent-base": "^4.3.0", "debug": "^3.1.0" }, "dependencies": { @@ -7293,9 +6872,9 @@ } }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true } } @@ -7344,19 +6923,10 @@ "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", "dev": true }, - "indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - }, - "indexof": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", - "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", + "infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", "dev": true }, "inflight": { @@ -7434,9 +7004,9 @@ "dev": true }, "invariant": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.3.tgz", - "integrity": "sha512-7Z5PPegwDTyjbaeCnV0efcyS6vdKAU51kpEmS7QFib3P4822l8ICYyMn7qvJnc+WzLoDsuI9gPMKbJ8pCu8XtA==", + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", "dev": true, "requires": { "loose-envify": "^1.0.0" @@ -7455,9 +7025,9 @@ "dev": true }, "ipaddr.js": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.0.tgz", - "integrity": "sha512-M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA==" + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" }, "is-absolute": { "version": "1.0.0", @@ -7489,6 +7059,12 @@ } } }, + "is-arguments": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", + "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==", + "dev": true + }, "is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", @@ -7511,9 +7087,9 @@ "dev": true }, "is-callable": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", - "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", + "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==", "dev": true }, "is-data-descriptor": { @@ -7537,9 +7113,9 @@ } }, "is-date-object": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", - "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", + "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", "dev": true }, "is-descriptor": { @@ -7592,13 +7168,10 @@ "dev": true }, "is-finite": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", - "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", + "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", + "dev": true }, "is-fullwidth-code-point": { "version": "2.0.0", @@ -7638,9 +7211,9 @@ "dev": true }, "is-my-json-valid": { - "version": "2.20.0", - "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.20.0.tgz", - "integrity": "sha512-XTHBZSIIxNsIsZXg7XB5l8z/OBFosl1Wao4tXLpeC7eKU4Vm/kdop2azkPqULwnfGQjmeDIyey9g7afMMtdWAA==", + "version": "2.20.5", + "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.20.5.tgz", + "integrity": "sha512-VTPuvvGQtxvCeghwspQu1rBgjYUT6FGxPlvFKbYuFtgc4ADsX3U5ihZOYN0qyU6u+d4X9xXb0IT5O6QpXKt87A==", "dev": true, "requires": { "generate-function": "^2.0.0", @@ -7701,9 +7274,9 @@ } }, "is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", - "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", "dev": true }, "is-property": { @@ -7719,12 +7292,12 @@ "dev": true }, "is-regex": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", - "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz", + "integrity": "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==", "dev": true, "requires": { - "has": "^1.0.1" + "has-symbols": "^1.0.1" } }, "is-relative": { @@ -7743,9 +7316,9 @@ "dev": true }, "is-retry-allowed": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", - "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", + "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==", "dev": true }, "is-stream": { @@ -7755,12 +7328,12 @@ "dev": true }, "is-symbol": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz", - "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", + "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", "dev": true, "requires": { - "has-symbols": "^1.0.0" + "has-symbols": "^1.0.1" } }, "is-typedarray": { @@ -7846,15 +7419,9 @@ "dev": true }, "jquery": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.4.1.tgz", - "integrity": "sha512-36+AdBzCL+y6qjw5Tx7HgzeGCzC81MDDgaUP8ld2zhx58HdqXGoBd+tHdrBMiyjGQs0Hxs/MLZTu/eHNJJuWPw==", - "dev": true - }, - "js-levenshtein": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", - "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==", + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.5.1.tgz", + "integrity": "sha512-XwIBPqcMn57FxfT+Go5pzySnm4KWkT1Tv7gjrpT1srtf8Weynl6R273VJ5GjkRb51IzMp5nbaPjJXMWeju2MKg==", "dev": true }, "js-select": { @@ -7874,15 +7441,15 @@ "dev": true }, "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", "dev": true }, "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", + "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", "dev": true, "requires": { "argparse": "^1.0.7", @@ -7950,10 +7517,13 @@ "dev": true }, "json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", + "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } }, "jsonfile": { "version": "4.0.0", @@ -7971,9 +7541,9 @@ "dev": true }, "jsonpointer": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz", - "integrity": "sha1-T9kss04OnbPInIYi7PUfm5eMbLk=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.1.0.tgz", + "integrity": "sha512-CXcRvMyTlnR53xMcKnuMzfCA5i/nfblTnnr74CZb6C4vG39eu6w51t7nKmU5MfLfbTgGItliNyjO/ciNPDqClg==", "dev": true }, "jsonpointer.js": { @@ -8001,9 +7571,9 @@ }, "dependencies": { "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true } } @@ -8040,47 +7610,21 @@ } }, "jszip": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.2.1.tgz", - "integrity": "sha512-iCMBbo4eE5rb1VCpm5qXOAaUiRKRUKiItn8ah2YQQx9qymmSAY98eyQfioChEYcVQLh0zxJ3wS4A0mh90AVPvw==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.5.0.tgz", + "integrity": "sha512-WRtu7TPCmYePR1nazfrtuF216cIVon/3GWOvHS9QR5bIwSbnxtdpma6un3jyGGNhHsKCSzn5Ypk+EkDRvTGiFA==", "dev": true, "requires": { "lie": "~3.3.0", "pako": "~1.0.2", "readable-stream": "~2.3.6", "set-immediate-shim": "~1.0.1" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } } }, "just-extend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.0.2.tgz", - "integrity": "sha512-FrLwOgm+iXrPV+5zDU6Jqu4gCRXbWEQg2O3SKONsWE4w7AXFRkryS53bpWdaL9cNol+AmR3AEYz6kn+o0fCPnw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.1.0.tgz", + "integrity": "sha512-ApcjaOdVTJ7y4r08xI5wIqpvwS48Q0PBG4DJROcEkH1f8MdAiNFyFxz3xoL0LWAVwjrwPYZdVHHxhRHcx/uGLA==", "dev": true }, "jwa": { @@ -8105,9 +7649,9 @@ } }, "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true }, "latest-version": { @@ -8143,6 +7687,21 @@ "invert-kv": "^2.0.0" } }, + "leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true + }, + "levenary": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/levenary/-/levenary-1.1.1.tgz", + "integrity": "sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ==", + "dev": true, + "requires": { + "leven": "^3.1.0" + } + }, "levn": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", @@ -8193,18 +7752,18 @@ } }, "linkify-it": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.1.0.tgz", - "integrity": "sha512-4REs8/062kV2DSHxNfq5183zrqXMl7WP0WzABH9IeJI+NLm429FgE1PDecltYfnOoFDFlZGh2T8PfZn0r+GTRg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", + "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==", "dev": true, "requires": { "uc.micro": "^1.0.1" } }, "livereload-js": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/livereload-js/-/livereload-js-2.3.0.tgz", - "integrity": "sha512-j1R0/FeGa64Y+NmqfZhyoVRzcFlOZ8sNlKzHjh4VvLULFACZhn68XrX5DFg2FhMvSMJmROuFxRSa560ECWKBMg==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/livereload-js/-/livereload-js-2.4.0.tgz", + "integrity": "sha512-XPQH8Z2GDP/Hwz2PCDrh2mth4yFejwA1OZ/81Ti3LgKyhDcEjsSsqFWZojHG0va/duGd+WyosY7eXLDoOyqcPw==", "dev": true }, "load-json-file": { @@ -8220,11 +7779,29 @@ "strip-bom": "^2.0.0" }, "dependencies": { + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "^0.2.0" + } } } }, @@ -8235,13 +7812,13 @@ "dev": true }, "loader-utils": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", - "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", "dev": true, "requires": { "big.js": "^5.2.2", - "emojis-list": "^2.0.0", + "emojis-list": "^3.0.0", "json5": "^1.0.1" }, "dependencies": { @@ -8253,12 +7830,6 @@ "requires": { "minimist": "^1.2.0" } - }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true } } }, @@ -8273,9 +7844,9 @@ } }, "lodash": { - "version": "4.17.13", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.13.tgz", - "integrity": "sha512-vm3/XWXfWtRua0FkUyEHBZy8kCPjErNBT9fJx8Zvs+U6zjqPbTUOpkaoum3O5uiA8sm+yNMHXfYkTUHFoMxFNA==", + "version": "4.17.19", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", + "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==", "dev": true }, "lodash.assign": { @@ -8374,9 +7945,9 @@ "dev": true }, "loglevel": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.2.tgz", - "integrity": "sha512-Jt2MHrCNdtIe1W6co3tF5KXGRkzF+TYffiQstfXa04mrss9IKXzAAXYWak8LbZseAQY03sH2GzMCMU0ZOUc9bg==", + "version": "1.6.8", + "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.8.tgz", + "integrity": "sha512-bsU7+gc9AJ2SqpzxwU3+1fedl8zAntbtC5XYlt3s2j1hJcn2PsXSmgN8TaLG/J1/2mod4+cE/3vNL70/c1RNCA==", "dev": true }, "lolex": { @@ -8398,22 +7969,12 @@ "dev": true }, "loose-envify": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", - "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", - "dev": true, - "requires": { - "js-tokens": "^3.0.0" - } - }, - "loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "dev": true, "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" + "js-tokens": "^3.0.0 || ^4.0.0" } }, "lowercase-keys": { @@ -8457,12 +8018,6 @@ "kind-of": "^6.0.2" } }, - "mamacro": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/mamacro/-/mamacro-0.0.3.tgz", - "integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==", - "dev": true - }, "map-age-cleaner": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", @@ -8478,12 +8033,6 @@ "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", "dev": true }, - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true - }, "map-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", @@ -8525,14 +8074,6 @@ "hash-base": "^3.0.0", "inherits": "^2.0.1", "safe-buffer": "^5.1.2" - }, - "dependencies": { - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - } } }, "mdurl": { @@ -8567,32 +8108,6 @@ "readable-stream": "^2.0.1" } }, - "meow": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", - "dev": true, - "requires": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } - } - }, "merge-descriptors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", @@ -8632,27 +8147,32 @@ "requires": { "bn.js": "^4.0.0", "brorand": "^1.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + } } }, "mime": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", - "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==", - "dev": true + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" }, "mime-db": { - "version": "1.33.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", - "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", - "dev": true + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", + "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==" }, "mime-types": { - "version": "2.1.18", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", - "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", - "dev": true, + "version": "2.1.27", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", + "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", "requires": { - "mime-db": "~1.33.0" + "mime-db": "1.44.0" } }, "mimic-fn": { @@ -8692,9 +8212,9 @@ } }, "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true }, "mississippi": { @@ -8755,12 +8275,12 @@ } }, "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "dev": true, "requires": { - "minimist": "0.0.8" + "minimist": "^1.2.5" } }, "mocha": { @@ -8811,6 +8331,21 @@ "path-is-absolute": "^1.0.0" } }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, "supports-color": { "version": "5.4.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", @@ -8823,22 +8358,30 @@ } }, "moment": { - "version": "2.21.0", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.21.0.tgz", - "integrity": "sha512-TCZ36BjURTeFTM/CwRcViQlfkMvL1/vFISuNLO5GkcVm1+QHfbSiNqZuWeMFjj1/3+uAjXswgRk30j1kkLYJBQ==", + "version": "2.27.0", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.27.0.tgz", + "integrity": "sha512-al0MUK7cpIcglMv3YF13qSgdAIqxHTO7brRtaz3DlSULbqfazqkc5kEjNrLDOM7fsjshoFIihnU8snrP7zUvhQ==", "dev": true }, "morgan": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.9.1.tgz", - "integrity": "sha512-HQStPIV4y3afTiCYVxirakhlCfGkI161c76kKFca7Fk1JusM//Qeo1ej2XaMniiNeaZklMVrh3vTtIzpzwbpmA==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.10.0.tgz", + "integrity": "sha512-AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ==", "dev": true, "requires": { - "basic-auth": "~2.0.0", + "basic-auth": "~2.0.1", "debug": "2.6.9", - "depd": "~1.1.2", + "depd": "~2.0.0", "on-finished": "~2.3.0", - "on-headers": "~1.0.1" + "on-headers": "~1.0.2" + }, + "dependencies": { + "depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true + } } }, "move-concurrently": { @@ -8853,6 +8396,17 @@ "mkdirp": "^0.5.1", "rimraf": "^2.5.4", "run-queue": "^1.0.3" + }, + "dependencies": { + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } } }, "ms": { @@ -8928,9 +8482,9 @@ } }, "nan": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", - "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz", + "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==", "dev": true, "optional": true }, @@ -8977,6 +8531,12 @@ "yargs": "^3.19.0" }, "dependencies": { + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true + }, "cliui": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", @@ -9069,9 +8629,9 @@ "optional": true }, "needle": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-2.4.0.tgz", - "integrity": "sha512-4Hnwzr3mi5L97hMYeNl8wRW/Onhy4nUKR/lVemJ8gJedxxUyBLm9kkrDColJvoSfwi0jCNhD+xCdOtiGDQiRZg==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-2.5.0.tgz", + "integrity": "sha512-o/qITSDR0JCyCKEQ1/1bnUXMmznxabbwi/Y4WwJElf+evwJNFNwIDMCCt5IigFVxgeGBJESLohGtIS9gEzo1fA==", "dev": true, "requires": { "debug": "^3.2.6", @@ -9089,9 +8649,9 @@ } }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, "sax": { @@ -9103,15 +8663,14 @@ } }, "negotiator": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", - "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=", - "dev": true + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" }, "neo-async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", - "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", "dev": true }, "netmask": { @@ -9133,6 +8692,45 @@ "dev": true, "requires": { "stylus": "0.54.5" + }, + "dependencies": { + "glob": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.6.tgz", + "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.2", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "source-map": { + "version": "0.1.43", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "dev": true, + "requires": { + "amdefine": ">=0.0.4" + } + }, + "stylus": { + "version": "0.54.5", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.5.tgz", + "integrity": "sha1-QrlWCTHKcJDOhRWnmLqeaqPW3Hk=", + "dev": true, + "requires": { + "css-parse": "1.7.x", + "debug": "*", + "glob": "7.0.x", + "mkdirp": "0.5.x", + "sax": "0.5.x", + "source-map": "0.1.x" + } + } } }, "nice-try": { @@ -9142,22 +8740,22 @@ "dev": true }, "nise": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.0.tgz", - "integrity": "sha512-Z3sfYEkLFzFmL8KY6xnSJLRxwQwYBjOXi/24lb62ZnZiGA0JUzGGTI6TBIgfCSMIDl9Jlu8SRmHNACLTemDHww==", + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.3.tgz", + "integrity": "sha512-Ymbac/94xeIrMf59REBPOv0thr+CJVFMhrlAkW/gjCIE58BGQdCj0x7KRCb3yz+Ga2Rz3E9XXSvUyyxqqhjQAQ==", "dev": true, "requires": { - "@sinonjs/formatio": "^3.1.0", + "@sinonjs/formatio": "^3.2.1", "@sinonjs/text-encoding": "^0.7.1", "just-extend": "^4.0.2", - "lolex": "^4.1.0", + "lolex": "^5.0.1", "path-to-regexp": "^1.7.0" }, "dependencies": { "@sinonjs/formatio": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.1.tgz", - "integrity": "sha512-tsHvOB24rvyvV2+zKMmPkZ7dXX6LSLKZ7aOtXY6Edklp0uRcgGpOsQTTGTcWViFyx4uhWc6GV8QdnALbIbIdeQ==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.2.tgz", + "integrity": "sha512-B8SEsgd8gArBLMD6zpRw3juQ2FVSsmdd7qlevyDqzS9WTCtvF55/gAL+h6gue8ZvPYcdiPdvueM/qm//9XzyTQ==", "dev": true, "requires": { "@sinonjs/commons": "^1", @@ -9171,15 +8769,18 @@ "dev": true }, "lolex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.1.0.tgz", - "integrity": "sha512-BYxIEXiVq5lGIXeVHnsFzqa1TxN5acnKnPCdlZSpzm8viNEOhiigupA4vTQ9HEFQ6nLTQ9wQOgBknJgzUYQ9Aw==", - "dev": true + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-5.1.2.tgz", + "integrity": "sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.7.0" + } }, "path-to-regexp": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", - "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", + "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", "dev": true, "requires": { "isarray": "0.0.1" @@ -9188,37 +8789,41 @@ } }, "node-forge": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.8.4.tgz", - "integrity": "sha512-UOfdpxivIYY4g5tqp5FNRNgROVNxRACUxxJREntJLFaJr1E0UEqFtUIk0F/jYx/E+Y6sVXd0KDi/m5My0yGCVw==", + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.8.5.tgz", + "integrity": "sha512-vFMQIWt+J/7FLNyKouZ9TazT74PRV3wgv9UT4cRjC8BffxFbKXkgIWR42URCPSnHm/QDz6BOlb2Q0U4+VQT67Q==", "dev": true }, "node-jose": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/node-jose/-/node-jose-1.1.3.tgz", - "integrity": "sha512-kupfi4uGWhRjnOmtie2T64cLge5a1TZyalEa8uWWWBgtKBcu41A4IGKpI9twZAxRnmviamEUQRK7LSyfFb2w8A==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/node-jose/-/node-jose-1.1.4.tgz", + "integrity": "sha512-L31IFwL3pWWcMHxxidCY51ezqrDXMkvlT/5pLTfNw5sXmmOLJuN6ug7txzF/iuZN55cRpyOmoJrotwBQIoo5Lw==", "dev": true, "requires": { "base64url": "^3.0.1", - "es6-promise": "^4.2.6", - "lodash": "^4.17.11", + "browserify-zlib": "^0.2.0", + "buffer": "^5.5.0", + "es6-promise": "^4.2.8", + "lodash": "^4.17.15", "long": "^4.0.0", - "node-forge": "^0.8.1", - "uuid": "^3.3.2" + "node-forge": "^0.8.5", + "process": "^0.11.10", + "react-zlib-js": "^1.0.4", + "uuid": "^3.3.3" }, "dependencies": { "es6-promise": { - "version": "4.2.6", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.6.tgz", - "integrity": "sha512-aRVgGdnmW2OiySVPUC9e6m+plolMAJKjZnQlCwNSuK5yQ0JN61DZSO1X1Ufd1foqWRAlig0rhduTCHe7sVtK5Q==", + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", "dev": true } } }, "node-libs-browser": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.0.tgz", - "integrity": "sha512-5MQunG/oyOaBdttrL40dA7bUfPORLRWMUJLQtMg7nluxUvk5XwnLdL9twQHFAjRx/y7mIMkLKT9++qPbbk6BZA==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", + "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", "dev": true, "requires": { "assert": "^1.1.1", @@ -9231,7 +8836,7 @@ "events": "^3.0.0", "https-browserify": "^1.0.0", "os-browserify": "^0.3.0", - "path-browserify": "0.0.0", + "path-browserify": "0.0.1", "process": "^0.11.10", "punycode": "^1.2.4", "querystring-es3": "^0.2.0", @@ -9243,15 +8848,41 @@ "tty-browserify": "0.0.0", "url": "^0.11.0", "util": "^0.11.0", - "vm-browserify": "0.0.4" + "vm-browserify": "^1.0.1" }, "dependencies": { + "buffer": { + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", + "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", + "dev": true, + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, "punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", "dev": true }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "requires": { + "safe-buffer": "~5.2.0" + } + }, "util": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", @@ -9282,13 +8913,10 @@ } }, "node-releases": { - "version": "1.1.23", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.23.tgz", - "integrity": "sha512-uq1iL79YjfYC0WXoHbC/z28q/9pOl8kSHaXdWmAAc8No+bDwqkZbzIJz55g/MUsPgSGm9LZ7QSUbzTcH5tz47w==", - "dev": true, - "requires": { - "semver": "^5.3.0" - } + "version": "1.1.60", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.60.tgz", + "integrity": "sha512-gsO4vjEdQaTusZAEebUWp2a5d7dF5DYoIpDG7WySnk7BuZDW+GPpHXoXXuYawRBr/9t5q54tirPz79kFIWg4dA==", + "dev": true }, "node-rsa": { "version": "0.2.30", @@ -9440,6 +9068,22 @@ } } }, + "object-inspect": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.8.0.tgz", + "integrity": "sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==", + "dev": true + }, + "object-is": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.2.tgz", + "integrity": "sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, "object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", @@ -9455,6 +9099,18 @@ "isobject": "^3.0.0" } }, + "object.assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", + "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "object-keys": "^1.0.11" + } + }, "object.defaults": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", @@ -9495,9 +9151,9 @@ } }, "on-headers": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz", - "integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", "dev": true }, "once": { @@ -9537,25 +9193,17 @@ } }, "optionator": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", - "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", "dev": true, "requires": { "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.4", + "fast-levenshtein": "~2.0.6", "levn": "~0.3.0", "prelude-ls": "~1.1.2", "type-check": "~0.3.2", - "wordwrap": "~1.0.0" - }, - "dependencies": { - "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", - "dev": true - } + "word-wrap": "~1.2.3" } }, "os-browserify": { @@ -9643,9 +9291,9 @@ "dev": true }, "p-limit": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "requires": { "p-try": "^2.0.0" @@ -9692,9 +9340,9 @@ } }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true } } @@ -9725,26 +9373,26 @@ } }, "pako": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.10.tgz", - "integrity": "sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==", + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", "dev": true }, "parallel-transform": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.1.0.tgz", - "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", + "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", "dev": true, "requires": { - "cyclist": "~0.2.2", + "cyclist": "^1.0.1", "inherits": "^2.0.3", "readable-stream": "^2.1.5" } }, "parse-asn1": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.4.tgz", - "integrity": "sha512-Qs5duJcuvNExRfFZ99HDD3z4mAi3r9Wl/FOjEOijlxwCZs7E7mW2vjTpgQ4J8LpTF8x5v+1Vn5UQFejmWT11aw==", + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", + "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", "dev": true, "requires": { "asn1.js": "^4.0.0", @@ -9767,12 +9415,13 @@ } }, "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", "dev": true, "requires": { - "error-ex": "^1.2.0" + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" } }, "parse-passwd": { @@ -9791,10 +9440,9 @@ } }, "parseurl": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", - "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=", - "dev": true + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" }, "pascalcase": { "version": "0.1.1", @@ -9813,9 +9461,9 @@ } }, "path-browserify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", - "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=", + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", + "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", "dev": true }, "path-dirname": { @@ -9900,9 +9548,9 @@ "dev": true }, "pbkdf2": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", - "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.1.tgz", + "integrity": "sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==", "dev": true, "requires": { "create-hash": "^1.1.2", @@ -9924,6 +9572,13 @@ "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", "dev": true }, + "picomatch": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", + "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", + "dev": true, + "optional": true + }, "pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", @@ -10014,9 +9669,9 @@ } }, "popper.js": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.15.0.tgz", - "integrity": "sha512-w010cY1oCUmI+9KwwlWki+r5jxKfTFDVoadl7MSrIujHU5MJ5OR6HTDj6Xo8aoR/QsA56x8jKjA59qGH4ELtrA==", + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", + "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", "dev": true }, "portscanner": { @@ -10092,9 +9747,9 @@ "dev": true }, "process-nextick-args": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", "dev": true }, "progress": { @@ -10125,12 +9780,12 @@ "dev": true }, "proxy-addr": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.5.tgz", - "integrity": "sha512-t/7RxHXPH6cJtP0pRG6smSr9QJidhB+3kXu0KgXnbGYMgzEnUxRQ4/LDdfOwZEMyIh3/xHb8PX3t+lfL9z+YVQ==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", + "integrity": "sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==", "requires": { "forwarded": "~0.1.2", - "ipaddr.js": "1.9.0" + "ipaddr.js": "1.9.1" } }, "proxy-agent": { @@ -10159,17 +9814,17 @@ } }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true } } }, "proxy-from-env": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.0.0.tgz", - "integrity": "sha1-M8UDmPcOp+uW0h97gXYwpVeRx+4=", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", "dev": true }, "prr": { @@ -10185,9 +9840,9 @@ "dev": true }, "psl": { - "version": "1.1.32", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.32.tgz", - "integrity": "sha512-MHACAkHpihU/REGGPLj4sEfc/XKW2bheigvHO1dUqjaKigMp1C8+WLQYRGgeKFMsw5PMfegZcaN8IDXK/cD0+g==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", "dev": true }, "public-encrypt": { @@ -10204,138 +9859,138 @@ "safe-buffer": "^5.1.2" }, "dependencies": { - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", "dev": true } } }, "pug": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/pug/-/pug-2.0.3.tgz", - "integrity": "sha1-ccuoJTfJWl6rftBGluQiH1Oqh44=", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pug/-/pug-2.0.4.tgz", + "integrity": "sha512-XhoaDlvi6NIzL49nu094R2NA6P37ijtgMDuWE+ofekDChvfKnzFal60bhSdiy8y2PBO6fmz3oMEIcfpBVRUdvw==", "dev": true, "requires": { - "pug-code-gen": "^2.0.1", - "pug-filters": "^3.1.0", - "pug-lexer": "^4.0.0", - "pug-linker": "^3.0.5", - "pug-load": "^2.0.11", - "pug-parser": "^5.0.0", - "pug-runtime": "^2.0.4", - "pug-strip-comments": "^1.0.3" + "pug-code-gen": "^2.0.2", + "pug-filters": "^3.1.1", + "pug-lexer": "^4.1.0", + "pug-linker": "^3.0.6", + "pug-load": "^2.0.12", + "pug-parser": "^5.0.1", + "pug-runtime": "^2.0.5", + "pug-strip-comments": "^1.0.4" } }, "pug-attrs": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-2.0.3.tgz", - "integrity": "sha1-owlflw5kFR972tlX7vVftdeQXRU=", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-2.0.4.tgz", + "integrity": "sha512-TaZ4Z2TWUPDJcV3wjU3RtUXMrd3kM4Wzjbe3EWnSsZPsJ3LDI0F3yCnf2/W7PPFF+edUFQ0HgDL1IoxSz5K8EQ==", "dev": true, "requires": { "constantinople": "^3.0.1", "js-stringify": "^1.0.1", - "pug-runtime": "^2.0.4" + "pug-runtime": "^2.0.5" } }, "pug-code-gen": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-2.0.1.tgz", - "integrity": "sha1-CVHsgyJddNjPxHan+Zolm199BQw=", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-2.0.2.tgz", + "integrity": "sha512-kROFWv/AHx/9CRgoGJeRSm+4mLWchbgpRzTEn8XCiwwOy6Vh0gAClS8Vh5TEJ9DBjaP8wCjS3J6HKsEsYdvaCw==", "dev": true, "requires": { - "constantinople": "^3.0.1", + "constantinople": "^3.1.2", "doctypes": "^1.1.0", "js-stringify": "^1.0.1", - "pug-attrs": "^2.0.3", - "pug-error": "^1.3.2", - "pug-runtime": "^2.0.4", + "pug-attrs": "^2.0.4", + "pug-error": "^1.3.3", + "pug-runtime": "^2.0.5", "void-elements": "^2.0.1", "with": "^5.0.0" } }, "pug-error": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-1.3.2.tgz", - "integrity": "sha1-U659nSm7A89WRJOgJhCfVMR/XyY=", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-1.3.3.tgz", + "integrity": "sha512-qE3YhESP2mRAWMFJgKdtT5D7ckThRScXRwkfo+Erqga7dyJdY3ZquspprMCj/9sJ2ijm5hXFWQE/A3l4poMWiQ==", "dev": true }, "pug-filters": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-3.1.0.tgz", - "integrity": "sha1-JxZVVbwEwjbkqisDZiRt+gIbYm4=", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-3.1.1.tgz", + "integrity": "sha512-lFfjNyGEyVWC4BwX0WyvkoWLapI5xHSM3xZJFUhx4JM4XyyRdO8Aucc6pCygnqV2uSgJFaJWW3Ft1wCWSoQkQg==", "dev": true, "requires": { "clean-css": "^4.1.11", "constantinople": "^3.0.1", "jstransformer": "1.0.0", - "pug-error": "^1.3.2", - "pug-walk": "^1.1.7", + "pug-error": "^1.3.3", + "pug-walk": "^1.1.8", "resolve": "^1.1.6", "uglify-js": "^2.6.1" } }, "pug-lexer": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-4.0.0.tgz", - "integrity": "sha1-IQwYRX7y4XYCQnQMXmR715TOwng=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-4.1.0.tgz", + "integrity": "sha512-i55yzEBtjm0mlplW4LoANq7k3S8gDdfC6+LThGEvsK4FuobcKfDAwt6V4jKPH9RtiE3a2Akfg5UpafZ1OksaPA==", "dev": true, "requires": { "character-parser": "^2.1.1", "is-expression": "^3.0.0", - "pug-error": "^1.3.2" + "pug-error": "^1.3.3" } }, "pug-linker": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-3.0.5.tgz", - "integrity": "sha1-npp65ABWgtAn3uuWsAD4juuDoC8=", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-3.0.6.tgz", + "integrity": "sha512-bagfuHttfQOpANGy1Y6NJ+0mNb7dD2MswFG2ZKj22s8g0wVsojpRlqveEQHmgXXcfROB2RT6oqbPYr9EN2ZWzg==", "dev": true, "requires": { - "pug-error": "^1.3.2", - "pug-walk": "^1.1.7" + "pug-error": "^1.3.3", + "pug-walk": "^1.1.8" } }, "pug-load": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-2.0.11.tgz", - "integrity": "sha1-5kjlftET/iwfRdV4WOorrWvAFSc=", + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-2.0.12.tgz", + "integrity": "sha512-UqpgGpyyXRYgJs/X60sE6SIf8UBsmcHYKNaOccyVLEuT6OPBIMo6xMPhoJnqtB3Q3BbO4Z3Bjz5qDsUWh4rXsg==", "dev": true, "requires": { "object-assign": "^4.1.0", - "pug-walk": "^1.1.7" + "pug-walk": "^1.1.8" } }, "pug-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-5.0.0.tgz", - "integrity": "sha1-45Stmz/KkxI5QK/4hcBuRKt+aOQ=", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-5.0.1.tgz", + "integrity": "sha512-nGHqK+w07p5/PsPIyzkTQfzlYfuqoiGjaoqHv1LjOv2ZLXmGX1O+4Vcvps+P4LhxZ3drYSljjq4b+Naid126wA==", "dev": true, "requires": { - "pug-error": "^1.3.2", + "pug-error": "^1.3.3", "token-stream": "0.0.1" } }, "pug-runtime": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-2.0.4.tgz", - "integrity": "sha1-4XjhvaaKsujArPybztLFT9iM61g=", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-2.0.5.tgz", + "integrity": "sha512-P+rXKn9un4fQY77wtpcuFyvFaBww7/91f3jHa154qU26qFAnOe6SW1CbIDcxiG5lLK9HazYrMCCuDvNgDQNptw==", "dev": true }, "pug-strip-comments": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-1.0.3.tgz", - "integrity": "sha1-8VWVkiBu3G+FMQ2s9K+0igJa9Z8=", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-1.0.4.tgz", + "integrity": "sha512-i5j/9CS4yFhSxHp5iKPHwigaig/VV9g+FgReLJWWHEHbvKsbqL0oP/K5ubuLco6Wu3Kan5p7u7qk8A4oLLh6vw==", "dev": true, "requires": { - "pug-error": "^1.3.2" + "pug-error": "^1.3.3" } }, "pug-walk": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-1.1.7.tgz", - "integrity": "sha1-wA1cUSi6xYBr7BXSt+fNq+QlMfM=", + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-1.1.8.tgz", + "integrity": "sha512-GMu3M5nUL3fju4/egXwZO0XLi6fW/K3T3VTgFQ14GxNi8btlxgT5qZL//JwZFm/2Fa64J/PNS8AZeys3wiMkVA==", "dev": true }, "pump": { @@ -10366,9 +10021,9 @@ "dev": true }, "puppeteer": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-1.17.0.tgz", - "integrity": "sha512-3EXZSximCzxuVKpIHtyec8Wm2dWZn1fc5tQi34qWfiUgubEVYHjUvr0GOJojqf3mifI6oyKnCdrGxaOI+lWReA==", + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-1.20.0.tgz", + "integrity": "sha512-bt48RDBy2eIwZPrkgbcwHtb51mj2nKvHOPMaSH2IsWiv7lOG9k9zhaRzpDZafrk05ajMc3cu+lSQYYOfH2DkVQ==", "dev": true, "requires": { "debug": "^4.1.0", @@ -10391,24 +10046,32 @@ } }, "mime": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.3.tgz", - "integrity": "sha512-QgrPRJfE+riq5TPZMcHZOtm8c6K/yYrMbKIoRfapfiGLxS8OTeIfRhUGW5LU7MlRa52KOAGCfUNruqLrIBvWZw==", + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", + "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==", "dev": true }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } } } }, "qs": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==", - "dev": true + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" }, "querystring": { "version": "0.2.0", @@ -10422,9 +10085,9 @@ "dev": true }, "quick-format-unescaped": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-3.0.2.tgz", - "integrity": "sha512-FXTaCkwvpIlkdKeGDNgcq07SXWS383noQUuZjvdE1QcTt+eLuqof6/BDiEPqB59FWLie/l91+HtlJSw7iCViSA==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-3.0.3.tgz", + "integrity": "sha512-dy1yjycmn9blucmJLXOfZDx1ikZJUi6E8bBZLnhPG5gBrVhHXx2xVyqqgKBubVNEXmx51dBACMHpoMQK/N/AXQ==", "dev": true }, "randombytes": { @@ -10447,10 +10110,9 @@ } }, "range-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", - "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=", - "dev": true + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" }, "raw-body": { "version": "2.4.0", @@ -10461,25 +10123,6 @@ "http-errors": "1.7.2", "iconv-lite": "0.4.24", "unpipe": "1.0.0" - }, - "dependencies": { - "http-errors": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", - "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - } - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" - } } }, "rc": { @@ -10492,16 +10135,14 @@ "ini": "~1.3.0", "minimist": "^1.2.0", "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } } }, + "react-zlib-js": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/react-zlib-js/-/react-zlib-js-1.0.4.tgz", + "integrity": "sha512-ynXD9DFxpE7vtGoa3ZwBtPmZrkZYw2plzHGbanUjBOSN4RtuXdektSfABykHtTiWEHMh7WdYj45LHtp228ZF1A==", + "dev": true + }, "read-pkg": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", @@ -10545,9 +10186,9 @@ } }, "readable-stream": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.4.tgz", - "integrity": "sha512-vuYxeWYM+fde14+rajzqgeohAI7YoJcHE7kXDAc4Nk0EbuKnJfqtY9YtRkLo/tqkuF7MsBQRhPnPeyjYITp3ZQ==", + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "dev": true, "requires": { "core-util-is": "~1.0.0", @@ -10555,8 +10196,19 @@ "isarray": "~1.0.0", "process-nextick-args": "~2.0.0", "safe-buffer": "~5.1.1", - "string_decoder": "~1.0.3", + "string_decoder": "~1.1.1", "util-deprecate": "~1.0.1" + }, + "dependencies": { + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "readdirp": { @@ -10616,44 +10268,34 @@ "minimatch": "3.0.4" } }, - "redent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", - "dev": true, - "requires": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" - } - }, "regenerate": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", - "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.1.tgz", + "integrity": "sha512-j2+C8+NtXQgEKWk49MMP5P/u2GhnahTtVkRIHr5R5lVRlbKvmQ+oS+A5aLKWp2ma5VkT8sh6v+v4hbH0YHR66A==", "dev": true }, "regenerate-unicode-properties": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz", - "integrity": "sha512-LGZzkgtLY79GeXLm8Dp0BVLdQlWICzBnJz/ipWUgo59qBaZ+BHtq51P2q1uVZlppMuUAT37SDk39qUbjTWB7bA==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz", + "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==", "dev": true, "requires": { "regenerate": "^1.4.0" } }, "regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "version": "0.13.7", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz", + "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==", "dev": true }, "regenerator-transform": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.0.tgz", - "integrity": "sha512-rtOelq4Cawlbmq9xuMR5gdFmv7ku/sFoB7sRiywx7aq53bc52b4j6zvH7Te1Vt/X2YveDKnCGUbioieU7FEL3w==", + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz", + "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==", "dev": true, "requires": { - "private": "^0.1.6" + "@babel/runtime": "^7.8.4" } }, "regex-not": { @@ -10666,19 +10308,14 @@ "safe-regex": "^1.1.0" } }, - "regexp-tree": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.10.tgz", - "integrity": "sha512-K1qVSbcedffwuIslMwpe6vGlj+ZXRnGkvjAtFHfDZZZuEdA/h0dxljAPu9vhUo6Rrx2U2AwJ+nSQ6hK+lrP5MQ==", - "dev": true - }, "regexp.prototype.flags": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.2.0.tgz", - "integrity": "sha512-ztaw4M1VqgMwl9HlPpOuiYgItcHlunW0He2fE6eNfT6E/CF2FtYi9ofOYe4mKntstYk0Fyh/rDRBdS3AnxjlrA==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", + "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", "dev": true, "requires": { - "define-properties": "^1.1.2" + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" } }, "regexpp": { @@ -10688,17 +10325,17 @@ "dev": true }, "regexpu-core": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.5.4.tgz", - "integrity": "sha512-BtizvGtFQKGPUcTy56o3nk1bGRp4SZOTYrDtGNlqCQufptV5IkkLN6Emw+yunAJjzf+C9FQFtvq7IoA3+oMYHQ==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.0.tgz", + "integrity": "sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ==", "dev": true, "requires": { "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^8.0.2", - "regjsgen": "^0.5.0", - "regjsparser": "^0.6.0", + "regenerate-unicode-properties": "^8.2.0", + "regjsgen": "^0.5.1", + "regjsparser": "^0.6.4", "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.1.0" + "unicode-match-property-value-ecmascript": "^1.2.0" } }, "registry-auth-token": { @@ -10721,15 +10358,15 @@ } }, "regjsgen": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.0.tgz", - "integrity": "sha512-RnIrLhrXCX5ow/E5/Mh2O4e/oa1/jW0eaBKTSy3LaCj+M3Bqvm97GWDp2yUtzIs4LEn65zR2yiYGFqb2ApnzDA==", + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz", + "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==", "dev": true }, "regjsparser": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.0.tgz", - "integrity": "sha512-RQ7YyokLiQBomUJuUG8iGVvkgOLxwyZM8k6d3q5SAXpg4r5TZJZigKFvC6PpD+qQ98bCDC5YelPeA3EucDoNeQ==", + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz", + "integrity": "sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw==", "dev": true, "requires": { "jsesc": "~0.5.0" @@ -10808,9 +10445,9 @@ } }, "request": { - "version": "2.88.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", - "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", "dev": true, "requires": { "aws-sign2": "~0.7.0", @@ -10820,7 +10457,7 @@ "extend": "~3.0.2", "forever-agent": "~0.6.1", "form-data": "~2.3.2", - "har-validator": "~5.1.0", + "har-validator": "~5.1.3", "http-signature": "~1.2.0", "is-typedarray": "~1.0.0", "isstream": "~0.1.2", @@ -10830,72 +10467,35 @@ "performance-now": "^2.1.0", "qs": "~6.5.2", "safe-buffer": "^5.1.2", - "tough-cookie": "~2.4.3", + "tough-cookie": "~2.5.0", "tunnel-agent": "^0.6.0", "uuid": "^3.3.2" }, "dependencies": { - "mime-db": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", - "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==", - "dev": true - }, - "mime-types": { - "version": "2.1.24", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", - "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", - "dev": true, - "requires": { - "mime-db": "1.40.0" - } - }, - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - }, "qs": { "version": "6.5.2", "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", "dev": true - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "tough-cookie": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", - "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", - "dev": true, - "requires": { - "psl": "^1.1.24", - "punycode": "^1.4.1" - } } } }, "request-promise-core": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.2.tgz", - "integrity": "sha512-UHYyq1MO8GsefGEt7EprS8UrXsm1TxEvFUX1IMTuSLU2Rh7fTIdFtl8xD7JiEYiWU2dl+NYAjCTksTehQUxPag==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.4.tgz", + "integrity": "sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==", "dev": true, "requires": { - "lodash": "^4.17.11" + "lodash": "^4.17.19" } }, "request-promise-native": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.7.tgz", - "integrity": "sha512-rIMnbBdgNViL37nZ1b3L/VfPOpSi0TqVDQPAvO6U14lMzOLrt5nilxCQqtDKhZeDiW0/hkCXGoQjhgJd/tCh6w==", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.9.tgz", + "integrity": "sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==", "dev": true, "requires": { - "request-promise-core": "1.1.2", + "request-promise-core": "1.1.4", "stealthy-require": "^1.1.1", "tough-cookie": "^2.3.3" } @@ -10923,9 +10523,9 @@ } }, "resolve": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.11.1.tgz", - "integrity": "sha512-vIpgF6wfuJOZI7KKKSP+HmiKggadPQAdsp5HiC1mvqnfp0gF1vdwgBWZIdrVft9pgqoMFQN+R7BSWZiBxx+BBw==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", + "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", "dev": true, "requires": { "path-parse": "^1.0.6" @@ -10979,28 +10579,12 @@ } }, "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dev": true, "requires": { "glob": "^7.1.3" - }, - "dependencies": { - "glob": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", - "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } } }, "ripemd160": { @@ -11014,13 +10598,10 @@ } }, "run-async": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", - "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", - "dev": true, - "requires": { - "is-promise": "^2.1.0" - } + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true }, "run-queue": { "version": "1.0.3", @@ -11056,10 +10637,9 @@ } }, "safe-buffer": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", - "dev": true + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, "safe-json-parse": { "version": "1.0.1", @@ -11101,13 +10681,14 @@ "dev": true }, "schema-utils": { - "version": "0.4.7", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", - "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", + "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", "dev": true, "requires": { - "ajv": "^6.1.0", - "ajv-keywords": "^3.1.0" + "@types/json-schema": "^7.0.4", + "ajv": "^6.12.2", + "ajv-keywords": "^3.4.1" } }, "secure-keys": { @@ -11117,9 +10698,9 @@ "dev": true }, "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true }, "semver-diff": { @@ -11132,30 +10713,36 @@ } }, "send": { - "version": "0.16.1", - "resolved": "https://registry.npmjs.org/send/-/send-0.16.1.tgz", - "integrity": "sha512-ElCLJdJIKPk6ux/Hocwhk7NFHpI3pVm/IZOYWqUmoxcgeyM+MpxHHKhb8QmlJDX1pU6WrgaHBkVNm73Sv7uc2A==", - "dev": true, + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", + "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", "requires": { "debug": "2.6.9", - "depd": "~1.1.1", + "depd": "~1.1.2", "destroy": "~1.0.4", - "encodeurl": "~1.0.1", + "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", "fresh": "0.5.2", - "http-errors": "~1.6.2", - "mime": "1.4.1", - "ms": "2.0.0", + "http-errors": "~1.7.2", + "mime": "1.6.0", + "ms": "2.1.1", "on-finished": "~2.3.0", - "range-parser": "~1.2.0", - "statuses": "~1.3.1" + "range-parser": "~1.2.1", + "statuses": "~1.5.0" + }, + "dependencies": { + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" + } } }, "serialize-javascript": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.7.0.tgz", - "integrity": "sha512-ke8UG8ulpFOxO8f8gRYabHQe/ZntKlcig2Mp+8+URDP1D8vJZ0KUt7LYo07q25Z/+JVSgpr/cui9PIp5H6/+nA==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.9.1.tgz", + "integrity": "sha512-0Vb/54WJ6k5v8sSWN09S0ora+Hnr+cX40r9F170nT+mSkaxltoE/7R3OrIdBSUv1OoiobH1QoWQbCnAO+e8J1A==", "dev": true }, "serve-index": { @@ -11171,18 +10758,37 @@ "http-errors": "~1.6.2", "mime-types": "~2.1.17", "parseurl": "~1.3.2" + }, + "dependencies": { + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + } + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + } } }, "serve-static": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.1.tgz", - "integrity": "sha512-hSMUZrsPa/I09VYFJwa627JJkNs0NrfL1Uzuup+GqHfToR2KcsXFymXSV90hoyw3M+msjFuQly+YzIH/q0MGlQ==", - "dev": true, + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", + "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", "requires": { - "encodeurl": "~1.0.1", + "encodeurl": "~1.0.2", "escape-html": "~1.0.3", - "parseurl": "~1.3.2", - "send": "0.16.1" + "parseurl": "~1.3.3", + "send": "0.17.1" } }, "set-blocking": { @@ -11198,9 +10804,9 @@ "dev": true }, "set-value": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", - "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", "dev": true, "requires": { "extend-shallow": "^2.0.1", @@ -11406,6 +11012,12 @@ "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", "dev": true }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true + }, "regenerator-runtime": { "version": "0.9.6", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.9.6.tgz", @@ -11461,9 +11073,9 @@ } }, "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", "dev": true }, "sinon": { @@ -11697,9 +11309,9 @@ } }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, "opn": { @@ -11749,9 +11361,9 @@ } }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true } } @@ -11777,9 +11389,9 @@ } }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true } } @@ -11824,9 +11436,9 @@ } }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true } } @@ -11881,9 +11493,9 @@ } }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true } } @@ -11909,9 +11521,9 @@ } }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true } } @@ -11943,9 +11555,9 @@ } }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true } } @@ -11979,9 +11591,9 @@ } }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true } } @@ -12019,9 +11631,9 @@ } }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true } } @@ -12063,9 +11675,9 @@ } }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true } } @@ -12112,12 +11724,12 @@ "dev": true }, "source-map-resolve": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", - "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", "dev": true, "requires": { - "atob": "^2.1.1", + "atob": "^2.1.2", "decode-uri-component": "^0.2.0", "resolve-url": "^0.2.1", "source-map-url": "^0.4.0", @@ -12125,9 +11737,9 @@ } }, "source-map-support": { - "version": "0.5.12", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.12.tgz", - "integrity": "sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ==", + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", "dev": true, "requires": { "buffer-from": "^1.0.0", @@ -12159,9 +11771,9 @@ } }, "spdx-correct": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", - "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", "dev": true, "requires": { "spdx-expression-parse": "^3.0.0", @@ -12169,15 +11781,15 @@ } }, "spdx-exceptions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", "dev": true }, "spdx-expression-parse": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, "requires": { "spdx-exceptions": "^2.1.0", @@ -12185,9 +11797,9 @@ } }, "spdx-license-ids": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz", - "integrity": "sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", + "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", "dev": true }, "split": { @@ -12262,10 +11874,9 @@ } }, "statuses": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", - "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=", - "dev": true + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" }, "stealthy-require": { "version": "1.1.1", @@ -12304,32 +11915,6 @@ "readable-stream": "^2.3.6", "to-arraybuffer": "^1.0.0", "xtend": "^4.0.0" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } } }, "stream-parser": { @@ -12342,9 +11927,9 @@ } }, "stream-shift": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", - "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", "dev": true }, "stream-to-array": { @@ -12433,15 +12018,32 @@ "regexp.prototype.flags": "^1.2.0" } }, - "string_decoder": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "string.prototype.trimend": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", + "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "string.prototype.trimstart": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", + "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", "dev": true, "requires": { - "safe-buffer": "~5.1.0" + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" } }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", @@ -12452,13 +12054,10 @@ } }, "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true }, "strip-bom-buf": { "version": "1.0.0", @@ -12485,15 +12084,6 @@ "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", "dev": true }, - "strip-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1" - } - }, "strip-json-comments": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", @@ -12501,27 +12091,62 @@ "dev": true }, "stylus": { - "version": "0.54.5", - "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.5.tgz", - "integrity": "sha1-QrlWCTHKcJDOhRWnmLqeaqPW3Hk=", + "version": "0.54.8", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.8.tgz", + "integrity": "sha512-vr54Or4BZ7pJafo2mpf0ZcwA74rpuYCZbxrHBsH8kbcXOwSfvBFwsRfpGO5OD5fhG5HDCFW737PKaawI7OqEAg==", "dev": true, "requires": { - "css-parse": "1.7.x", - "debug": "*", - "glob": "7.0.x", - "mkdirp": "0.5.x", - "sax": "0.5.x", - "source-map": "0.1.x" + "css-parse": "~2.0.0", + "debug": "~3.1.0", + "glob": "^7.1.6", + "mkdirp": "~1.0.4", + "safer-buffer": "^2.1.2", + "sax": "~1.2.4", + "semver": "^6.3.0", + "source-map": "^0.7.3" }, "dependencies": { - "source-map": { - "version": "0.1.43", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "css-parse": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-2.0.0.tgz", + "integrity": "sha1-pGjuZnwW2BzPBcWMONKpfHgNv9Q=", + "dev": true, + "requires": { + "css": "^2.0.0" + } + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", "dev": true, "requires": { - "amdefine": ">=0.0.4" + "ms": "2.0.0" } + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + }, + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true } } }, @@ -12561,14 +12186,17 @@ "dev": true }, "tar-stream": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz", - "integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==", + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", + "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", "dev": true, "requires": { "bl": "^1.0.0", + "buffer-alloc": "^1.2.0", "end-of-stream": "^1.0.0", - "readable-stream": "^2.0.0", + "fs-constants": "^1.0.0", + "readable-stream": "^2.3.0", + "to-buffer": "^1.1.1", "xtend": "^4.0.0" } }, @@ -12626,22 +12254,16 @@ } }, "terser": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.0.0.tgz", - "integrity": "sha512-dOapGTU0hETFl1tCo4t56FN+2jffoKyER9qBGoUFyZ6y7WLoKT0bF+lAYi6B6YsILcGF3q1C2FBh8QcKSCgkgA==", + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", + "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", "dev": true, "requires": { - "commander": "^2.19.0", + "commander": "^2.20.0", "source-map": "~0.6.1", - "source-map-support": "~0.5.10" + "source-map-support": "~0.5.12" }, "dependencies": { - "commander": { - "version": "2.20.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", - "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", - "dev": true - }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -12651,65 +12273,45 @@ } }, "terser-webpack-plugin": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.3.0.tgz", - "integrity": "sha512-W2YWmxPjjkUcOWa4pBEv4OP4er1aeQJlSo2UhtCFQCuRXEHjOFscO8VyWHj9JLlA0RzQb8Y2/Ta78XZvT54uGg==", + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.4.tgz", + "integrity": "sha512-U4mACBHIegmfoEe5fdongHESNJWqsGU+W0S/9+BmYGVQDw1+c2Ow05TpMhxjPK1sRb7cuYq1BPl1e5YHJMTCqA==", "dev": true, "requires": { - "cacache": "^11.3.2", - "find-cache-dir": "^2.0.0", + "cacache": "^12.0.2", + "find-cache-dir": "^2.1.0", "is-wsl": "^1.1.0", - "loader-utils": "^1.2.3", "schema-utils": "^1.0.0", - "serialize-javascript": "^1.7.0", + "serialize-javascript": "^3.1.0", "source-map": "^0.6.1", - "terser": "^4.0.0", - "webpack-sources": "^1.3.0", + "terser": "^4.1.2", + "webpack-sources": "^1.4.0", "worker-farm": "^1.7.0" }, "dependencies": { "cacache": { - "version": "11.3.2", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-11.3.2.tgz", - "integrity": "sha512-E0zP4EPGDOaT2chM08Als91eYnf8Z+eH1awwwVsngUmgppfM5jjJ8l3z5vO5p5w/I3LsiXawb1sW0VY65pQABg==", + "version": "12.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", + "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", "dev": true, "requires": { - "bluebird": "^3.5.3", + "bluebird": "^3.5.5", "chownr": "^1.1.1", "figgy-pudding": "^3.5.1", - "glob": "^7.1.3", + "glob": "^7.1.4", "graceful-fs": "^4.1.15", + "infer-owner": "^1.0.3", "lru-cache": "^5.1.1", "mississippi": "^3.0.0", "mkdirp": "^0.5.1", "move-concurrently": "^1.0.1", "promise-inflight": "^1.0.1", - "rimraf": "^2.6.2", + "rimraf": "^2.6.3", "ssri": "^6.0.1", "unique-filename": "^1.1.1", "y18n": "^4.0.0" } }, - "glob": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", - "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - }, "lru-cache": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", @@ -12747,6 +12349,15 @@ "once": "^1.3.1" } }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, "schema-utils": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", @@ -12758,6 +12369,15 @@ "ajv-keywords": "^3.1.0" } }, + "serialize-javascript": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-3.1.0.tgz", + "integrity": "sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg==", + "dev": true, + "requires": { + "randombytes": "^2.1.0" + } + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -12774,9 +12394,9 @@ } }, "yallist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", - "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", "dev": true } } @@ -12797,9 +12417,9 @@ } }, "thenify": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.0.tgz", - "integrity": "sha1-5p44obq+lpsBCCB5eLn2K4hgSDk=", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", "dev": true, "requires": { "any-promise": "^1.0.0" @@ -12828,32 +12448,6 @@ "requires": { "readable-stream": "~2.3.6", "xtend": "~4.0.1" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } } }, "thunkify": { @@ -12869,9 +12463,9 @@ "dev": true }, "timers-browserify": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.10.tgz", - "integrity": "sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg==", + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", + "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", "dev": true, "requires": { "setimmediate": "^1.0.4" @@ -12892,13 +12486,19 @@ }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true } } }, @@ -12926,6 +12526,12 @@ "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", "dev": true }, + "to-buffer": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", + "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==", + "dev": true + }, "to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", @@ -13022,12 +12628,6 @@ "integrity": "sha1-0EsigOTHkqWBVCnve4tgxkyczDQ=", "dev": true }, - "trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", - "dev": true - }, "trim-right": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", @@ -13035,9 +12635,9 @@ "dev": true }, "tslib": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", - "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", + "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", "dev": true }, "tty-browserify": { @@ -13077,6 +12677,12 @@ "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", "dev": true }, + "type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==", + "dev": true + }, "type-check": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", @@ -13099,21 +12705,6 @@ "requires": { "media-typer": "0.3.0", "mime-types": "~2.1.24" - }, - "dependencies": { - "mime-db": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", - "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==" - }, - "mime-types": { - "version": "2.1.24", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", - "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", - "requires": { - "mime-db": "1.40.0" - } - } } }, "typedarray": { @@ -13246,6 +12837,16 @@ "find-up": "^2.1.0" } }, + "schema-utils": { + "version": "0.4.7", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", + "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0" + } + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -13271,9 +12872,9 @@ "dev": true }, "undefsafe": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.2.tgz", - "integrity": "sha1-Il9rngM3Zj4Njnz9aG/Cg2zKznY=", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.3.tgz", + "integrity": "sha512-nrXZwwXrD/T/JXeygJqdCO6NZZ1L66HrxM/Z7mIq2oPanoN0F1nLx3lwJMu6AwJY69hdixaFQOuoYsMjE5/C2A==", "dev": true, "requires": { "debug": "^2.2.0" @@ -13312,50 +12913,27 @@ } }, "unicode-match-property-value-ecmascript": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.1.0.tgz", - "integrity": "sha512-hDTHvaBk3RmFzvSl0UVrUmC3PuW9wKVnpoUDYH0JDkSIovzw+J5viQmeYHxVSBptubnr7PbH2e0fnpDRQnQl5g==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", + "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==", "dev": true }, "unicode-property-aliases-ecmascript": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.5.tgz", - "integrity": "sha512-L5RAqCfXqAwR3RriF8pM0lU0w4Ryf/GgzONwi6KnL1taJQa7x1TCxdJnILX59WIGOwR57IVxn7Nej0fz1Ny6fw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", + "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", "dev": true }, "union-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", - "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", "dev": true, "requires": { "arr-union": "^3.1.0", "get-value": "^2.0.6", "is-extendable": "^0.1.1", - "set-value": "^0.4.3" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "set-value": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", - "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.1", - "to-object-path": "^0.3.0" - } - } + "set-value": "^2.0.1" } }, "unique-filename": { @@ -13368,9 +12946,9 @@ } }, "unique-slug": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.1.tgz", - "integrity": "sha512-n9cU6+gITaVu7VGj1Z8feKMmfAjEAQGhwD9fE3zvpRRa0wEIx8ODYkVGfSc94M2OX00tUFV8wH3zYbm1I8mxFg==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", "dev": true, "requires": { "imurmurhash": "^0.1.4" @@ -13543,9 +13121,9 @@ "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" }, "uuid": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", - "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", "dev": true }, "v8flags": { @@ -13590,13 +13168,10 @@ } }, "vm-browserify": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", - "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", - "dev": true, - "requires": { - "indexof": "0.0.1" - } + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", + "dev": true }, "void-elements": { "version": "2.0.1", @@ -13605,9 +13180,9 @@ "dev": true }, "vscode-languageserver-types": { - "version": "3.14.0", - "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.14.0.tgz", - "integrity": "sha512-lTmS6AlAlMHOvPQemVwo3CezxBp0sNB95KNPkqp3Nxd5VFEnuG1ByM0zlRWos0zjO3ZWtkvhal0COgiV1xIA4A==", + "version": "3.15.1", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.15.1.tgz", + "integrity": "sha512-+a9MPUQrNGRrGU630OGbYVQ+11iOIovjCkqxajPa9w57Sd5ruK8WQNsslzpa0x/QJqC8kRc2DUxWjIFwoNm4ZQ==", "dev": true }, "walkdir": { @@ -13627,6 +13202,16 @@ "neo-async": "^2.5.0" } }, + "watchpack-chokidar2": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz", + "integrity": "sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA==", + "dev": true, + "optional": true, + "requires": { + "chokidar": "^2.1.8" + } + }, "wcwidth": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", @@ -13727,6 +13312,21 @@ "invert-kv": "^1.0.0" } }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, "opn": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/opn/-/opn-5.3.0.tgz", @@ -13745,15 +13345,11 @@ "lcid": "^1.0.0" } }, - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true }, "source-map": { "version": "0.6.1", @@ -13860,43 +13456,158 @@ "dev": true }, "webpack": { - "version": "4.33.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.33.0.tgz", - "integrity": "sha512-ggWMb0B2QUuYso6FPZKUohOgfm+Z0sVFs8WwWuSH1IAvkWs428VDNmOlAxvHGTB9Dm/qOB/qtE5cRx5y01clxw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-module-context": "1.8.5", - "@webassemblyjs/wasm-edit": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5", - "acorn": "^6.0.5", - "acorn-dynamic-import": "^4.0.0", - "ajv": "^6.1.0", - "ajv-keywords": "^3.1.0", - "chrome-trace-event": "^1.0.0", - "enhanced-resolve": "^4.1.0", - "eslint-scope": "^4.0.0", + "version": "4.44.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.44.1.tgz", + "integrity": "sha512-4UOGAohv/VGUNQJstzEywwNxqX417FnjZgZJpJQegddzPmTvph37eBIRbRTfdySXzVtJXLJfbMN3mMYhM6GdmQ==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/wasm-edit": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "acorn": "^6.4.1", + "ajv": "^6.10.2", + "ajv-keywords": "^3.4.1", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^4.3.0", + "eslint-scope": "^4.0.3", "json-parse-better-errors": "^1.0.2", - "loader-runner": "^2.3.0", - "loader-utils": "^1.1.0", - "memory-fs": "~0.4.1", - "micromatch": "^3.1.8", - "mkdirp": "~0.5.0", - "neo-async": "^2.5.0", - "node-libs-browser": "^2.0.0", + "loader-runner": "^2.4.0", + "loader-utils": "^1.2.3", + "memory-fs": "^0.4.1", + "micromatch": "^3.1.10", + "mkdirp": "^0.5.3", + "neo-async": "^2.6.1", + "node-libs-browser": "^2.2.1", "schema-utils": "^1.0.0", - "tapable": "^1.1.0", - "terser-webpack-plugin": "^1.1.0", - "watchpack": "^1.5.0", - "webpack-sources": "^1.3.0" + "tapable": "^1.1.3", + "terser-webpack-plugin": "^1.4.3", + "watchpack": "^1.7.4", + "webpack-sources": "^1.4.1" }, "dependencies": { "acorn": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.1.1.tgz", - "integrity": "sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", "dev": true }, + "anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "optional": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "binary-extensions": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", + "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", + "dev": true, + "optional": true + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "optional": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "chokidar": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.1.tgz", + "integrity": "sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g==", + "dev": true, + "optional": true, + "requires": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "fsevents": "~2.1.2", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.4.0" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "optional": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "fsevents": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", + "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", + "dev": true, + "optional": true + }, + "glob-parent": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", + "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "dev": true, + "optional": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "optional": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "optional": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "optional": true + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "optional": true + }, + "readdirp": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", + "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", + "dev": true, + "optional": true, + "requires": { + "picomatch": "^2.2.1" + } + }, "schema-utils": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", @@ -13907,22 +13618,44 @@ "ajv-errors": "^1.0.0", "ajv-keywords": "^3.1.0" } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "optional": true, + "requires": { + "is-number": "^7.0.0" + } + }, + "watchpack": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.4.tgz", + "integrity": "sha512-aWAgTW4MoSJzZPAicljkO1hsi1oKj/RRq/OJQh2PKI2UKL04c2Bs+MBOB+BBABHTXJpf9mCwHN7ANCvYsvY2sg==", + "dev": true, + "requires": { + "chokidar": "^3.4.1", + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0", + "watchpack-chokidar2": "^2.0.0" + } } } }, "webpack-merge": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.1.tgz", - "integrity": "sha512-4p8WQyS98bUJcCvFMbdGZyZmsKuWjWVnVHnAS3FFg0HDaRVrPbkivx2RYCre8UiemD67RsiFFLfn4JhLAin8Vw==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.2.tgz", + "integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==", "dev": true, "requires": { - "lodash": "^4.17.5" + "lodash": "^4.17.15" } }, "webpack-sources": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.3.0.tgz", - "integrity": "sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA==", + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", + "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", "dev": true, "requires": { "source-list-map": "^2.0.0", @@ -13938,19 +13671,20 @@ } }, "websocket-driver": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.0.tgz", - "integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=", + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", "dev": true, "requires": { - "http-parser-js": ">=0.4.0", + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", "websocket-extensions": ">=0.1.1" } }, "websocket-extensions": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz", - "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==", + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", "dev": true }, "whatwg-url": { @@ -14025,6 +13759,12 @@ "acorn-globals": "^3.0.0" } }, + "word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true + }, "wordwrap": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", @@ -14114,9 +13854,9 @@ "dev": true }, "xhr-mock": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/xhr-mock/-/xhr-mock-2.4.1.tgz", - "integrity": "sha1-y1AuPVC4suwxvWF2bOUWv8HdBy8=", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/xhr-mock/-/xhr-mock-2.5.1.tgz", + "integrity": "sha512-UKOjItqjFgPUwQGPmRAzNBn8eTfIhcGjBVGvKYAWxUQPQsXNGD6KEckGTiHwyaAUp9C9igQlnN1Mp79KWCg7CQ==", "dev": true, "requires": { "global": "^4.3.0", @@ -14124,13 +13864,13 @@ } }, "xml2js": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", - "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", + "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", "dev": true, "requires": { "sax": ">=0.6.0", - "xmlbuilder": "~9.0.1" + "xmlbuilder": "~11.0.0" }, "dependencies": { "sax": { @@ -14142,9 +13882,9 @@ } }, "xmlbuilder": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", - "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=", + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", "dev": true }, "xmldom": { @@ -14160,9 +13900,9 @@ "dev": true }, "xtend": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", "dev": true }, "y18n": { @@ -14187,14 +13927,6 @@ "cliui": "^2.1.0", "decamelize": "^1.0.0", "window-size": "0.1.0" - }, - "dependencies": { - "camelcase": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", - "dev": true - } } }, "yargs-parser": { @@ -14216,12 +13948,13 @@ } }, "yauzl": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.4.1.tgz", - "integrity": "sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU=", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", "dev": true, "requires": { - "fd-slicer": "~1.0.1" + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" } }, "zip-dir": { From ad8b064d9ee5b48c0b47c857096a8ca464ed82ec Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 6 Aug 2020 11:21:33 +0200 Subject: [PATCH 268/456] Lock node version --- package.json | 159 ++++++++++++++++++++++++++------------------------- 1 file changed, 81 insertions(+), 78 deletions(-) diff --git a/package.json b/package.json index 5b4f23c1..7b18f9fe 100644 --- a/package.json +++ b/package.json @@ -1,79 +1,82 @@ { - "name": "jwt.io", - "version": "3.2.0", - "repository": { - "type": "git", - "url": "https://github.com/jsonwebtoken/jsonwebtoken.github.io" - }, - "dependencies": { - "express": "^4.17.1", - "express-sslify": "^1.2.0", - "lodash.debounce": "^4.0.8", - "querystring": "^0.2.0" - }, - "devEngines": { - "node": "^8.12.0", - "npm": "^6.4.1" - }, - "devDependencies": { - "@babel/core": "^7.4.5", - "@babel/polyfill": "^7.4.4", - "@babel/preset-env": "^7.4.5", - "babel-loader": "^8.0.6", - "babel-plugin-transform-async-to-generator": "^6.24.1", - "bootstrap": "^3.4.1", - "chai": "^4.2.0", - "chai-arrays": "^2.0.0", - "chai-as-promised": "^7.1.1", - "chai-json-schema": "^1.5.1", - "clipboard-polyfill": "^2.8.1", - "codemirror": "^5.47.0", - "deep-freeze": "0.0.1", - "esm": "^3.2.25", - "flipclock": "^0.7.8", - "grunt": "^1.0.4", - "grunt-cli": "^1.3.2", - "grunt-contrib-clean": "^1.1.0", - "grunt-contrib-connect": "^1.0.2", - "grunt-contrib-copy": "^1.0.0", - "grunt-contrib-pug": "^1.0.0", - "grunt-contrib-stylus": "^1.2.0", - "grunt-contrib-watch": "^1.1.0", - "grunt-crx": "^1.0.5", - "grunt-exec": "^3.0.0", - "grunt-mocha-test": "^0.13.3", - "grunt-webpack": "^3.1.3", - "highlight.js": "^9.15.8", - "inject-loader": "^3.0.1", - "isotope-layout": "^3.0.6", - "jquery": "^3.4.1", - "jstransformer-markdown-it": "^2.1.0", - "lodash": "^4.17.13", - "loglevel": "^1.6.2", - "mocha": "^5.2.0", - "node-jose": "^1.1.3", - "promise.any": "^0.1.1", - "pug": "^2.0.3", - "puppeteer": "^1.17.0", - "request-promise-native": "^1.0.7", - "sinon": "^4.5.0", - "sinon-chai": "^2.14.0", - "source-map-support": "^0.5.12", - "stylus": "^0.54.5", - "tippy.js": "^2.6.0", - "tv4-formats": "^3.0.3", - "uglifyjs-webpack-plugin": "^1.3.0", - "web-ext": "^2.9.3", - "webpack": "^4.33.0", - "webpack-merge": "^4.2.1", - "xhr-mock": "^2.4.1" - }, - "scripts": { - "start": "node server.js", - "test": "grunt test", - "test:unit": "grunt unit-tests", - "build": "grunt build-website", - "build:extension": "grunt build-extension" - }, - "heroku-run-build-script": true -} + "name": "jwt.io", + "version": "3.2.0", + "repository": { + "type": "git", + "url": "https://github.com/jsonwebtoken/jsonwebtoken.github.io" + }, + "dependencies": { + "express": "^4.17.1", + "express-sslify": "^1.2.0", + "lodash.debounce": "^4.0.8", + "querystring": "^0.2.0" + }, + "devEngines": { + "node": "^8.12.0", + "npm": "^6.4.1" + }, + "engines": { + "node": "12.18.2" + }, + "devDependencies": { + "@babel/core": "^7.4.5", + "@babel/polyfill": "^7.4.4", + "@babel/preset-env": "^7.4.5", + "babel-loader": "^8.0.6", + "babel-plugin-transform-async-to-generator": "^6.24.1", + "bootstrap": "^3.4.1", + "chai": "^4.2.0", + "chai-arrays": "^2.0.0", + "chai-as-promised": "^7.1.1", + "chai-json-schema": "^1.5.1", + "clipboard-polyfill": "^2.8.1", + "codemirror": "^5.47.0", + "deep-freeze": "0.0.1", + "esm": "^3.2.25", + "flipclock": "^0.7.8", + "grunt": "^1.0.4", + "grunt-cli": "^1.3.2", + "grunt-contrib-clean": "^1.1.0", + "grunt-contrib-connect": "^1.0.2", + "grunt-contrib-copy": "^1.0.0", + "grunt-contrib-pug": "^1.0.0", + "grunt-contrib-stylus": "^1.2.0", + "grunt-contrib-watch": "^1.1.0", + "grunt-crx": "^1.0.5", + "grunt-exec": "^3.0.0", + "grunt-mocha-test": "^0.13.3", + "grunt-webpack": "^3.1.3", + "highlight.js": "^9.15.8", + "inject-loader": "^3.0.1", + "isotope-layout": "^3.0.6", + "jquery": "^3.4.1", + "jstransformer-markdown-it": "^2.1.0", + "lodash": "^4.17.13", + "loglevel": "^1.6.2", + "mocha": "^5.2.0", + "node-jose": "^1.1.3", + "promise.any": "^0.1.1", + "pug": "^2.0.3", + "puppeteer": "^1.17.0", + "request-promise-native": "^1.0.7", + "sinon": "^4.5.0", + "sinon-chai": "^2.14.0", + "source-map-support": "^0.5.12", + "stylus": "^0.54.5", + "tippy.js": "^2.6.0", + "tv4-formats": "^3.0.3", + "uglifyjs-webpack-plugin": "^1.3.0", + "web-ext": "^2.9.3", + "webpack": "^4.33.0", + "webpack-merge": "^4.2.1", + "xhr-mock": "^2.4.1" + }, + "scripts": { + "start": "node server.js", + "test": "grunt test", + "test:unit": "grunt unit-tests", + "build": "grunt build-website", + "build:extension": "grunt build-extension" + }, + "heroku-run-build-script": true +} \ No newline at end of file From b57a409078d947ff37c563058b2ea33c5045b5a4 Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 6 Aug 2020 13:58:48 +0200 Subject: [PATCH 269/456] Link do the developer page instead of the Auth0 homepage --- package.json | 3 --- views/website/index.pug | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/package.json b/package.json index 7b18f9fe..4ab1e3bd 100644 --- a/package.json +++ b/package.json @@ -15,9 +15,6 @@ "node": "^8.12.0", "npm": "^6.4.1" }, - "engines": { - "node": "12.18.2" - }, "devDependencies": { "@babel/core": "^7.4.5", "@babel/polyfill": "^7.4.4", diff --git a/views/website/index.pug b/views/website/index.pug index 0bf40546..6b43a18e 100644 --- a/views/website/index.pug +++ b/views/website/index.pug @@ -19,7 +19,7 @@ block content a(href='http://swag.auth0.com/', target='_blank') Get a T-shirt! .social - a.a0(href='https://auth0.com/why-auth0?utm_source=jwtio&utm_medium=navbar_whats_auth0&utm_campaign=jwt_nav_cta_12_2019', target='_blank') + a.a0(href='https://auth0.com/developers?utm_source=jwtio&utm_medium=navbar_whats_auth0&utm_campaign=jwt_nav_cta_12_2019', target='_blank') span.by-text Crafted by img(src='http://github.com/img/pic_logo_ft.svg', alt='Crafted by Auth0 - JWT.io Token Based Authentication') span.crafted-by__question-mark ? From 18ff0ca13d654c4e91049024507a8d31123eef05 Mon Sep 17 00:00:00 2001 From: Ulrik Date: Mon, 17 Aug 2020 11:02:11 +0200 Subject: [PATCH 270/456] Add OCaml and reason-jose --- img/website/30.svg | 39 +++++++++++++++++++++++++++ views/website/libraries/30-OCaml.json | 39 +++++++++++++++++++++++++++ 2 files changed, 78 insertions(+) create mode 100644 img/website/30.svg create mode 100644 views/website/libraries/30-OCaml.json diff --git a/img/website/30.svg b/img/website/30.svg new file mode 100644 index 00000000..05d0ce2d --- /dev/null +++ b/img/website/30.svg @@ -0,0 +1,39 @@ + + + + + + + + + + + + diff --git a/views/website/libraries/30-OCaml.json b/views/website/libraries/30-OCaml.json new file mode 100644 index 00000000..eec6f149 --- /dev/null +++ b/views/website/libraries/30-OCaml.json @@ -0,0 +1,39 @@ +{ + "name": "OCaml", + "uniqueClass": "ocaml", + "image": "/img/30.svg", + "bgColor": "rgb(242, 145, 0)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": false, + "hs512": false, + "rs256": true, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false + }, + "authorUrl": "https://github.com/ulrikstrid", + "authorName": "Ulrik Strid", + "gitHubRepoPath": "ulrikstrid/reason-jose", + "repoUrl": "https://github.com/ulrikstrid/reason-jose", + "installCommandHtml": "opam install jose" + } + ] +} From 05f2ab760df13a62402ae21bc931f5b745c10386 Mon Sep 17 00:00:00 2001 From: Sambego Date: Wed, 2 Sep 2020 16:46:55 +0200 Subject: [PATCH 271/456] Show an error when the payload is not a valid top level JSON object --- package-lock.json | 6 +- package.json | 4 +- src/editor/index.js | 651 +++++++++++++++++++------------------- src/editor/jwt.js | 278 ++++++++-------- src/strings.js | 109 +++---- stylus/website/index.styl | 6 +- 6 files changed, 544 insertions(+), 510 deletions(-) diff --git a/package-lock.json b/package-lock.json index e3c257c3..c02772e6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10138,9 +10138,9 @@ } }, "react-zlib-js": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/react-zlib-js/-/react-zlib-js-1.0.4.tgz", - "integrity": "sha512-ynXD9DFxpE7vtGoa3ZwBtPmZrkZYw2plzHGbanUjBOSN4RtuXdektSfABykHtTiWEHMh7WdYj45LHtp228ZF1A==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/react-zlib-js/-/react-zlib-js-1.0.5.tgz", + "integrity": "sha512-TLcPdmqhIl+ylwOwlfm1WUuI7NVvhAv3L74d1AabhjyaAbmLOROTA/Q4EQ/UMCFCOjIkVim9fT3UZOQSFk/mlA==", "dev": true }, "read-pkg": { diff --git a/package.json b/package.json index 4ab1e3bd..5eadab55 100644 --- a/package.json +++ b/package.json @@ -51,7 +51,7 @@ "lodash": "^4.17.13", "loglevel": "^1.6.2", "mocha": "^5.2.0", - "node-jose": "^1.1.3", + "node-jose": "^1.1.4", "promise.any": "^0.1.1", "pug": "^2.0.3", "puppeteer": "^1.17.0", @@ -76,4 +76,4 @@ "build:extension": "grunt build-extension" }, "heroku-run-build-script": true -} \ No newline at end of file +} diff --git a/src/editor/index.js b/src/editor/index.js index fda4c6d7..8a9f7820 100644 --- a/src/editor/index.js +++ b/src/editor/index.js @@ -3,40 +3,39 @@ import { downloadPublicKeyIfPossible } from "./public-key-download.js"; import { setupClaimsTooltip } from "./claims-tooltip.js"; import { tokenEditor, headerEditor, payloadEditor } from "./instances.js"; import { - getTrimmedValue, - stringify, - fixEditorHeight, - getSelectedAlgorithm, - disableUnsupportedAlgorithms, - getSafeTokenInfo + getTrimmedValue, + stringify, + fixEditorHeight, + getSelectedAlgorithm, + disableUnsupportedAlgorithms, } from "./utils.js"; import { sign, verify, decode } from "./jwt.js"; import EventManager from "./event-manager.js"; import strings from "../strings.js"; import defaultTokens from "./default-tokens.js"; import { - minSecretLengthCheck, - setupSecretLengthTooltip + minSecretLengthCheck, + setupSecretLengthTooltip, } from "./secret-length-tooltip.js"; import { - algorithmSelect, - signatureStatusElement, - editorElement, - headerElement, - payloadElement, - secretInput, - privateKeyTextArea, - publicKeyTextArea, - hmacShaTextSpan, - rsaShaTextSpan, - keyEditorContainer, - secretEditorContainer, - secretBase64Checkbox, - encodedTabLink, - decodedTabLink, - encodedTabElement, - decodedTabElement, - editorWarnings + algorithmSelect, + signatureStatusElement, + editorElement, + headerElement, + payloadElement, + secretInput, + privateKeyTextArea, + publicKeyTextArea, + hmacShaTextSpan, + rsaShaTextSpan, + keyEditorContainer, + secretEditorContainer, + secretBase64Checkbox, + encodedTabLink, + decodedTabLink, + encodedTabElement, + decodedTabElement, + editorWarnings, } from "../dom-elements.js"; import log from "loglevel"; @@ -47,294 +46,312 @@ import log from "loglevel"; const eventManager = new EventManager(); function isSharedSecretAlgorithm(algorithm) { - return algorithm && algorithm.indexOf("HS") === 0; + return algorithm && algorithm.indexOf("HS") === 0; } function isPublicKeyAlgorithm(algorithm) { - return algorithm && algorithm.indexOf("HS") === -1; + return algorithm && algorithm.indexOf("HS") === -1; } -function markAsInvalid() { - signatureStatusElement.classList.remove("valid-token"); - signatureStatusElement.classList.add("invalid-token"); - signatureStatusElement.innerHTML = ` ${ - strings.editor.signatureInvalid - }`; +function markAsInvalid(errorMessages = []) { + signatureStatusElement.classList.remove("valid-token"); + signatureStatusElement.classList.add("invalid-token"); + + if (errorMessages.length > 0) { + editorWarnings.classList.remove("hidden"); + + errorMessages.forEach((message) => { + const errorElement = document.createElement("p"); + const errorLabel = document.createElement("strong"); + const errorMessage = document.createTextNode(message); + errorLabel.innerText = "Error: "; + errorElement.appendChild(errorLabel); + errorElement.appendChild(errorMessage); + editorWarnings.appendChild(errorElement); + }) + } else { + signatureStatusElement.innerHTML = ` ${strings.editor.signatureInvalid}`; + } } function markJWTAsInvalid() { - signatureStatusElement.classList.remove("valid-token"); - signatureStatusElement.classList.add("invalid-token"); - signatureStatusElement.innerHTML = ` ${ - strings.editor.jwtInvalid - }`; + signatureStatusElement.classList.remove("valid-token"); + signatureStatusElement.classList.add("invalid-token"); + signatureStatusElement.innerHTML = ` ${strings.editor.jwtInvalid}`; } function markAsValid() { - const elementsWithError = document.getElementsByClassName("error"); - Array.prototype.forEach.call(elementsWithError, element => { - element.classList.remove("error"); - }); - - signatureStatusElement.classList.remove("invalid-token"); - signatureStatusElement.classList.add("valid-token"); - signatureStatusElement.innerHTML = ` ${ - strings.editor.signatureVerified - }`; + const elementsWithError = document.getElementsByClassName("error"); + Array.prototype.forEach.call(elementsWithError, (element) => { + element.classList.remove("error"); + }); + + signatureStatusElement.classList.remove("invalid-token"); + signatureStatusElement.classList.add("valid-token"); + signatureStatusElement.innerHTML = ` ${strings.editor.signatureVerified}`; } function displaySecretOrKeys(algorithm) { - const algoType = algorithm.substr(0, 2); - const algoSize = algorithm.substr(2, 3); - - if (algoType === "HS") { - hmacShaTextSpan.firstChild.textContent = `HMACSHA${algoSize}`; - secretEditorContainer.style.display = ""; - keyEditorContainer.style.display = "none"; - } else { - const texts = { - RS: "RSASHA", - PS: "RSAPSSSHA", - ES: "ECDSASHA" - }; + const algoType = algorithm.substr(0, 2); + const algoSize = algorithm.substr(2, 3); - rsaShaTextSpan.firstChild.textContent = `${texts[algoType]}${algoSize}`; - secretEditorContainer.style.display = "none"; - keyEditorContainer.style.display = ""; - } + if (algoType === "HS") { + hmacShaTextSpan.firstChild.textContent = `HMACSHA${algoSize}`; + secretEditorContainer.style.display = ""; + keyEditorContainer.style.display = "none"; + } else { + const texts = { + RS: "RSASHA", + PS: "RSAPSSSHA", + ES: "ECDSASHA", + }; + + rsaShaTextSpan.firstChild.textContent = `${texts[algoType]}${algoSize}`; + secretEditorContainer.style.display = "none"; + keyEditorContainer.style.display = ""; + } - deferToNextLoop(fixEditorHeight); + deferToNextLoop(fixEditorHeight); } function selectAlgorithm(algorithm) { - eventManager.withDisabledEvents(() => { - const selected = algorithmSelect.querySelector( - `option[value="${algorithm}"]` - ); + eventManager.withDisabledEvents(() => { + const selected = algorithmSelect.querySelector( + `option[value="${algorithm}"]` + ); - if (!selected) { - log.info(`Invalid algorithm ${algorithm}, ignoring...`); - return; - } + if (!selected) { + log.info(`Invalid algorithm ${algorithm}, ignoring...`); + return; + } - selected.selected = true; + selected.selected = true; - displaySecretOrKeys(algorithm); - }); + displaySecretOrKeys(algorithm); + }); } function isDefaultToken(token) { - for (const algorithm of Object.keys(defaultTokens)) { - if (defaultTokens[algorithm].token === token) { - return true; + for (const algorithm of Object.keys(defaultTokens)) { + if (defaultTokens[algorithm].token === token) { + return true; + } } - } - return false; + return false; } export function useDefaultToken(algorithm) { - eventManager.withDisabledEvents(() => { - const defaults = defaultTokens[algorithm.toLowerCase()]; - const decoded = decode(defaults.token); + eventManager.withDisabledEvents(() => { + const defaults = defaultTokens[algorithm.toLowerCase()]; + const decoded = decode(defaults.token); - tokenEditor.setValue(defaults.token); - headerEditor.setValue(stringify(decoded.header)); - payloadEditor.setValue(stringify(decoded.payload)); + tokenEditor.setValue(defaults.token); + headerEditor.setValue(stringify(decoded.header)); + payloadEditor.setValue(stringify(decoded.payload)); - if (isSharedSecretAlgorithm(algorithm)) { - secretInput.value = defaults.secret; - } else { - publicKeyTextArea.value = defaults.publicKey; - privateKeyTextArea.value = defaults.privateKey; - } + if (isSharedSecretAlgorithm(algorithm)) { + secretInput.value = defaults.secret; + } else { + publicKeyTextArea.value = defaults.publicKey; + privateKeyTextArea.value = defaults.privateKey; + } - markAsValid(); - }); + markAsValid(); + }); } function setAlgorithmInHeader(algorithm) { - eventManager.withDisabledEvents(() => { - try { - const header = JSON.parse(headerEditor.getValue()); - header.alg = algorithm; - headerEditor.setValue(stringify(header)); - } catch (e) { - // SyntaxError is expected while things are being edited, ignore those - // errors. - if (!(e instanceof SyntaxError)) { - // If it's not a SyntaxError, log the error. - log.warn("Failed to encode token: ", e); - } - } + eventManager.withDisabledEvents(() => { + try { + const header = JSON.parse(headerEditor.getValue()); + header.alg = algorithm; + headerEditor.setValue(stringify(header)); + } catch (e) { + // SyntaxError is expected while things are being edited, ignore those + // errors. + if (!(e instanceof SyntaxError)) { + // If it's not a SyntaxError, log the error. + log.warn("Failed to encode token: ", e); + } + } - try { - encodeToken(); - } catch (e) { - // Ignore error, this may fail in unexpected ways if the data - // is being edited. - } - }); + try { + encodeToken(); + } catch (e) { + // Ignore error, this may fail in unexpected ways if the data + // is being edited. + } + }); } function algorithmChangeHandler() { - const algorithm = getSelectedAlgorithm(); + const algorithm = getSelectedAlgorithm(); - displaySecretOrKeys(algorithm); + displaySecretOrKeys(algorithm); - if (isDefaultToken(getTrimmedValue(tokenEditor))) { - useDefaultToken(algorithm); - } else { - setAlgorithmInHeader(algorithm); - } + if (isDefaultToken(getTrimmedValue(tokenEditor))) { + useDefaultToken(algorithm); + } else { + setAlgorithmInHeader(algorithm); + } } -function markAsInvalidWithElement(element, clearTokenEditor = true) { - element.classList.add("error"); - markAsInvalid(); +function markAsInvalidWithElement(element, clearTokenEditor = true, errors = []) { + element.classList.add("error"); + markAsInvalid(errors); - if (clearTokenEditor) { - eventManager.withDisabledEvents(() => { - tokenEditor.setValue(""); - }); - } + if (clearTokenEditor) { + eventManager.withDisabledEvents(() => { + tokenEditor.setValue(""); + }); + } } function showEditorWarnings(warnings) { - editorElement.classList.add("warning"); - editorWarnings.classList.remove("hidden"); - editorWarnings.innerHTML = ''; - - warnings.forEach(warning => { - const warningElement = document.createElement('p'); - const warningLabel = document.createElement('strong'); - const warningMessage = document.createTextNode(warning) - warningLabel.innerText = 'Warning: '; - warningElement.appendChild(warningLabel); - warningElement.appendChild(warningMessage); - editorWarnings.appendChild(warningElement) - }); + editorElement.classList.add("warning"); + editorWarnings.classList.remove("hidden"); + editorWarnings.innerHTML = ""; + + warnings.forEach((warning) => { + const warningElement = document.createElement("p"); + const warningLabel = document.createElement("strong"); + const warningMessage = document.createTextNode(warning); + warningLabel.innerText = "Warning: "; + warningElement.appendChild(warningLabel); + warningElement.appendChild(warningMessage); + editorWarnings.appendChild(warningElement); + }); } function hideEditorWarnings() { - editorElement.classList.remove("warning"); - editorWarnings.classList.add("hidden"); - editorWarnings.innerHTML = ''; + editorElement.classList.remove("warning"); + editorWarnings.classList.add("hidden"); + editorWarnings.innerHTML = ""; } function encodeToken() { - deferToNextLoop(fixEditorHeight); - - eventManager.withDisabledEvents(() => { - let header; - try { - header = JSON.parse(headerEditor.getValue()); - } catch (e) { - markAsInvalidWithElement(headerElement, true); - return; - } + deferToNextLoop(fixEditorHeight); + resetEditorWarnings(); - if (!header.alg) { - setAlgorithmInHeader(getSelectedAlgorithm()); - return; - } else { - selectAlgorithm(header.alg); - } + eventManager.withDisabledEvents(() => { + let header; + try { + header = JSON.parse(headerEditor.getValue()); + } catch (e) { + markAsInvalidWithElement(headerElement, true); + return; + } - let payload; - try { - payload = JSON.parse(payloadEditor.getValue()); - } catch (e) { - markAsInvalidWithElement(payloadElement, true); - return; - } + if (!header.alg) { + setAlgorithmInHeader(getSelectedAlgorithm()); + return; + } else { + selectAlgorithm(header.alg); + } - const key = isSharedSecretAlgorithm(header.alg) - ? secretInput.value - : privateKeyTextArea.value; + let payload; + try { + payload = JSON.parse(payloadEditor.getValue()); + } catch (e) { + markAsInvalidWithElement(payloadElement, true); + return; + } - sign(header, payload, key, secretBase64Checkbox.checked) - .then(encoded => { - eventManager.withDisabledEvents(() => { - tokenEditor.setValue(encoded); - }); - }) - .catch(e => { - eventManager.withDisabledEvents(() => { - log.warn("Failed to sign/encode token: ", e); - markAsInvalid(); - tokenEditor.setValue(""); - }); - }) - .finally(() => { - verifyToken(); - }); - }); + const key = isSharedSecretAlgorithm(header.alg) ? + secretInput.value : + privateKeyTextArea.value; + + sign(header, payload, key, secretBase64Checkbox.checked) + .then((encoded) => { + eventManager.withDisabledEvents(() => { + tokenEditor.setValue(encoded); + }); + }) + .catch((e) => { + eventManager.withDisabledEvents(() => { + log.warn("Failed to sign/encode token: ", e); + markAsInvalid(); + tokenEditor.setValue(""); + }); + }) + .finally(() => { + verifyToken(); + }); + }); } function decodeToken() { - deferToNextLoop(fixEditorHeight); - - eventManager.withDisabledEvents(() => { - try { - const jwt = getTrimmedValue(tokenEditor); - const decoded = decode(jwt); - - selectAlgorithm(decoded.header.alg); - if (isPublicKeyAlgorithm(decoded.header.alg)) { - downloadPublicKeyIfPossible(decoded).then(publicKey => { - eventManager.withDisabledEvents(() => { - publicKeyTextArea.value = publicKey; - verifyToken(); - }); - }); - } - - headerEditor.setValue(stringify(decoded.header)); - payloadEditor.setValue(stringify(decoded.payload)); + deferToNextLoop(fixEditorHeight); + resetEditorWarnings(); - if (decoded.errors) { - markAsInvalidWithElement(editorElement, false); - } else { - if (decoded.warnings && decoded.warnings.length > 0) { - showEditorWarnings(decoded.warnings); - markJWTAsInvalid(); - } else { - hideEditorWarnings(); + eventManager.withDisabledEvents(() => { + try { + const jwt = getTrimmedValue(tokenEditor); + const decoded = decode(jwt); + + selectAlgorithm(decoded.header.alg); + if (isPublicKeyAlgorithm(decoded.header.alg)) { + downloadPublicKeyIfPossible(decoded).then((publicKey) => { + eventManager.withDisabledEvents(() => { + publicKeyTextArea.value = publicKey; + verifyToken(); + }); + }); + } + + headerEditor.setValue(stringify(decoded.header)); + payloadEditor.setValue(stringify(decoded.payload)); + + if (decoded.errors) { + markAsInvalidWithElement(editorElement, false, decoded.warnings); + + console.log(decoded.warnings.includes(strings.warnings.payloadInvalidJSON)) + if (decoded.warnings.includes(strings.warnings.payloadInvalidJSON)) { + markAsInvalidWithElement(payloadElement, false) + } + + } else { + if (decoded.warnings && decoded.warnings.length > 0) { + showEditorWarnings(decoded.warnings); + markJWTAsInvalid(); + } else { + hideEditorWarnings(); + } + + verifyToken(); + } + } catch (e) { + log.warn("Failed to decode token: ", e); } - - verifyToken(); - } - } catch (e) { - log.warn("Failed to decode token: ", e); - } - }); + }); } function verifyToken() { - const jwt = getTrimmedValue(tokenEditor); - const decoded = decode(jwt); - - if (!decoded.header.alg || decoded.header.alg === "none") { - markAsInvalid(); - return; - } - - const publicKeyOrSecret = isSharedSecretAlgorithm(decoded.header.alg) - ? secretInput.value - : publicKeyTextArea.value; - - verify(jwt, publicKeyOrSecret, secretBase64Checkbox.checked).then(result => { - if (result.validSignature) { - if (!result.validBase64) { - markJWTAsInvalid(); - } else { - markAsValid(); - } - } else { - markAsInvalid(); + const jwt = getTrimmedValue(tokenEditor); + const decoded = decode(jwt); + + if (!decoded.header.alg || decoded.header.alg === "none") { + markAsInvalid(); + return; } - }); + + const publicKeyOrSecret = isSharedSecretAlgorithm(decoded.header.alg) ? + secretInput.value : + publicKeyTextArea.value; + verify(jwt, publicKeyOrSecret, secretBase64Checkbox.checked).then( + (result) => { + if (result.validSignature) { + if (!result.validBase64) { + markJWTAsInvalid(); + } else { + markAsValid(); + } + } else { + markAsInvalid(); + } + } + ); } // The last saved token functionality has been flagged as a security issue. @@ -342,94 +359,90 @@ function verifyToken() { // Once a considerable amount of time has passed since this was put in place, // it may be safe to remove it. Enabled at: 2018-06-12. function removeSavedTokens() { - localStorage.removeItem("lastToken"); - localStorage.removeItem("lastPublicKey"); + localStorage.removeItem("lastToken"); + localStorage.removeItem("lastPublicKey"); } function setupTabEvents() { - // These are relevant for portrait or mobile screens. + // These are relevant for portrait or mobile screens. - encodedTabLink.addEventListener("click", event => { - event.preventDefault(); + encodedTabLink.addEventListener("click", (event) => { + event.preventDefault(); - decodedTabLink.parentNode.classList.remove("current"); - encodedTabLink.parentNode.classList.add("current"); - decodedTabElement.classList.remove("current"); - encodedTabElement.classList.add("current"); - }); + decodedTabLink.parentNode.classList.remove("current"); + encodedTabLink.parentNode.classList.add("current"); + decodedTabElement.classList.remove("current"); + encodedTabElement.classList.add("current"); + }); - decodedTabLink.addEventListener("click", event => { - event.preventDefault(); + decodedTabLink.addEventListener("click", (event) => { + event.preventDefault(); - encodedTabLink.parentNode.classList.remove("current"); - decodedTabLink.parentNode.classList.add("current"); - encodedTabElement.classList.remove("current"); - decodedTabElement.classList.add("current"); - }); + encodedTabLink.parentNode.classList.remove("current"); + decodedTabLink.parentNode.classList.add("current"); + encodedTabElement.classList.remove("current"); + decodedTabElement.classList.add("current"); + }); } function setupEvents() { - // The event manager lets us enable/disable events as needed without - // manually tracking them. Events that need to be disabled should be - // passed to the event manager. - - eventManager.addDomEvent(algorithmSelect, "change", algorithmChangeHandler); - - // When an encoded token is inserted, it must be decoded. - eventManager.addCodeMirrorEvent( - tokenEditor, - "change", - decodeToken - ); - // When parts of the decoded token are changed, it must be reencoded. - eventManager.addCodeMirrorEvent( - headerEditor, - "change", - encodeToken - ); - eventManager.addCodeMirrorEvent( - payloadEditor, - "change", - encodeToken - ); - - // HMAC secret, show tooltip if secret is too short. - eventManager.addDomEvent(secretInput, "input", minSecretLengthCheck); - // HMAC secret, when changed the encoded token must be updated. - eventManager.addDomEvent(secretInput, "input", encodeToken); - // Base64 checkbox, when changes the encoded token must be updated. - eventManager.addDomEvent(secretBase64Checkbox, "change", encodeToken); - // Private key, when changed the encoded token must be updated. - eventManager.addDomEvent(privateKeyTextArea, "input", encodeToken); - // Public key, when changed the encoded token must NOT be updated - // (only verified). - eventManager.addDomEvent(publicKeyTextArea, "input", verifyToken); - - // The following events are never disabled, so it is not necessary to go - // through the event manager for them. - setupTabEvents(); + // The event manager lets us enable/disable events as needed without + // manually tracking them. Events that need to be disabled should be + // passed to the event manager. + + eventManager.addDomEvent(algorithmSelect, "change", algorithmChangeHandler); + + // When an encoded token is inserted, it must be decoded. + eventManager.addCodeMirrorEvent(tokenEditor, "change", decodeToken); + // When parts of the decoded token are changed, it must be reencoded. + eventManager.addCodeMirrorEvent(headerEditor, "change", encodeToken); + eventManager.addCodeMirrorEvent(payloadEditor, "change", encodeToken); + + // HMAC secret, show tooltip if secret is too short. + eventManager.addDomEvent(secretInput, "input", minSecretLengthCheck); + // HMAC secret, when changed the encoded token must be updated. + eventManager.addDomEvent(secretInput, "input", encodeToken); + // Base64 checkbox, when changes the encoded token must be updated. + eventManager.addDomEvent(secretBase64Checkbox, "change", encodeToken); + // Private key, when changed the encoded token must be updated. + eventManager.addDomEvent(privateKeyTextArea, "input", encodeToken); + // Public key, when changed the encoded token must NOT be updated + // (only verified). + eventManager.addDomEvent(publicKeyTextArea, "input", verifyToken); + + // The following events are never disabled, so it is not necessary to go + // through the event manager for them. + setupTabEvents(); } export function setTokenEditorValue(value) { - tokenEditor.setValue(value); + tokenEditor.setValue(value); } export function getTokenEditorValue() { - return { - token: getTrimmedValue(tokenEditor), - publicKey: isPublicKeyAlgorithm(getSelectedAlgorithm()) - ? publicKeyTextArea.value - : undefined - }; + return { + token: getTrimmedValue(tokenEditor), + publicKey: isPublicKeyAlgorithm(getSelectedAlgorithm()) ? + publicKeyTextArea.value : undefined, + }; } -export function setupTokenEditor() { - disableUnsupportedAlgorithms(); - setupEvents(); - selectAlgorithm("HS256"); - useDefaultToken("HS256"); - fixEditorHeight(); - setupSecretLengthTooltip(); - setupClaimsTooltip(); - removeSavedTokens(); +export function resetEditorWarnings() { + signatureStatusElement.classList.add("valid-token"); + signatureStatusElement.classList.remove("invalid-token"); + editorElement.classList.remove("error"); + editorElement.classList.remove("warning"); + editorWarnings.classList.add("hidden"); + editorWarnings.innerHTML = ""; } + +export function setupTokenEditor() { + disableUnsupportedAlgorithms(); + setupEvents(); + selectAlgorithm("HS256"); + useDefaultToken("HS256"); + fixEditorHeight(); + setupSecretLengthTooltip(); + setupClaimsTooltip(); + removeSavedTokens(); +} \ No newline at end of file diff --git a/src/editor/jwt.js b/src/editor/jwt.js index 47710f08..22a0cc98 100644 --- a/src/editor/jwt.js +++ b/src/editor/jwt.js @@ -2,24 +2,26 @@ import jose from 'node-jose'; import b64u from 'base64url'; import any from 'promise.any'; import { pki } from 'node-forge'; -import strings from '../strings';strings +import strings from '../strings'; +strings import log from 'loglevel'; +import { findLastIndex } from 'lodash'; // node-jose does not support keys shorter than block size. This is a // limitation from their implementation and could be resolved in the future. // See: https://github.com/cisco/node-jose/blob/master/lib/jwk/octkey.js#L141 function paddedKey(key, alg, base64Secret) { - const blockSizeBytes = alg.indexOf('256') !== -1 ? 512 / 8 : 1024 / 8; + const blockSizeBytes = alg.indexOf('256') !== -1 ? 512 / 8 : 1024 / 8; - let buf = base64Secret ? Buffer.from(key, 'base64') : Buffer.from(key); + let buf = base64Secret ? Buffer.from(key, 'base64') : Buffer.from(key); - if(buf.length < blockSizeBytes) { - const oldBuf = buf; - buf = Buffer.alloc(blockSizeBytes); - buf.set(oldBuf); - } + if (buf.length < blockSizeBytes) { + const oldBuf = buf; + buf = Buffer.alloc(blockSizeBytes); + buf.set(oldBuf); + } - return b64u.encode(buf); + return b64u.encode(buf); } /* @@ -32,158 +34,176 @@ function paddedKey(key, alg, base64Secret) { * X509 SubjectPublicKeyInfo format. */ function plainRsaKeyToX509Key(key) { - try { - const startTag = '-----BEGIN RSA PUBLIC KEY-----'; - const endTag = '-----END RSA PUBLIC KEY-----'; - const startTagPos = key.indexOf(startTag); - const endTagPos = key.indexOf(endTag); + try { + const startTag = '-----BEGIN RSA PUBLIC KEY-----'; + const endTag = '-----END RSA PUBLIC KEY-----'; + const startTagPos = key.indexOf(startTag); + const endTagPos = key.indexOf(endTag); - return startTagPos !== -1 && endTagPos !== -1 ? + return startTagPos !== -1 && endTagPos !== -1 ? pki.publicKeyToPem(pki.publicKeyFromPem(key)) : key; - } catch(e) { - // If anything fails, it may not be a plain RSA key, so return the same key. - return key; - } + } catch (e) { + // If anything fails, it may not be a plain RSA key, so return the same key. + return key; + } } function getJoseKey(header, key, base64Secret) { - if(header.alg.indexOf('HS') === 0) { - return jose.JWK.asKey({ - kty: 'oct', - use: 'sig', - alg: header.alg, - k: paddedKey(key, header.alg, base64Secret) - }); - } else { - if(header.alg.indexOf('RS') === 0) { - key = plainRsaKeyToX509Key(key); + if (header.alg.indexOf('HS') === 0) { + return jose.JWK.asKey({ + kty: 'oct', + use: 'sig', + alg: header.alg, + k: paddedKey(key, header.alg, base64Secret) + }); + } else { + if (header.alg.indexOf('RS') === 0) { + key = plainRsaKeyToX509Key(key); + } + + return any(['pem', 'json'].map(form => { + try { + return jose.JWK.asKey(key, form); + } catch (e) { + return Promise.reject(e); + } + })); } - - return any(['pem', 'json'].map(form => { - try { - return jose.JWK.asKey(key, form); - } catch(e) { - return Promise.reject(e); - } - })); - } } export function sign(header, - payload, - secretOrPrivateKeyString, - base64Secret = false) { - if(!header.alg) { - return Promise.reject(new Error('Missing "alg" claim in header')); - } - - return getJoseKey(header, secretOrPrivateKeyString, base64Secret).then( - key => { - if(!(typeof payload === 'string' || payload instanceof String)) { - payload = JSON.stringify(payload); - } - - return jose.JWS.createSign({ - fields: header, - format: 'compact' - }, { - key: key, - reference: false - }).update(payload, 'utf8').final(); + payload, + secretOrPrivateKeyString, + base64Secret = false) { + if (!header.alg) { + return Promise.reject(new Error('Missing "alg" claim in header')); } - ); + + return getJoseKey(header, secretOrPrivateKeyString, base64Secret).then( + key => { + if (!(typeof payload === 'string' || payload instanceof String)) { + payload = JSON.stringify(payload); + } + + return jose.JWS.createSign({ + fields: header, + format: 'compact' + }, { + key: key, + reference: false + }).update(payload, 'utf8').final(); + } + ); } export function verify(jwt, secretOrPublicKeyString, base64Secret = false) { - if(!isToken(jwt)) { - return Promise.resolve({validSignature: false}); - } - - const decoded = decode(jwt); - - if(!decoded.header.alg || decoded.errors) { - return Promise.resolve({validSignature: false}); - } - - return getJoseKey(decoded.header, secretOrPublicKeyString, base64Secret).then( - key => { - return jose.JWS.createVerify(key) - .verify(jwt) - .then(() => ({ - validSignature: true, - validBase64: jwt.split('.').reduce((valid, s) => valid = valid && isValidBase64String(s), true) - }), () => ({validSignature: false})); - }, e => { - log.warn('Could not verify token, ' + - 'probably due to bad data in it or the keys: ', e); - return {validSignature: false}; + if (!isToken(jwt)) { + return Promise.resolve({ validSignature: false }); } - ); + + const decoded = decode(jwt); + + if (!decoded.header.alg || decoded.errors) { + return Promise.resolve({ validSignature: false }); + } + + return getJoseKey(decoded.header, secretOrPublicKeyString, base64Secret).then( + key => { + return jose.JWS.createVerify(key) + .verify(jwt) + .then(() => ({ + validSignature: true, + validBase64: jwt.split('.').reduce((valid, s) => valid = valid && isValidBase64String(s), true) + }), () => ({ validSignature: false })); + }, e => { + log.warn('Could not verify token, ' + + 'probably due to bad data in it or the keys: ', e); + return { validSignature: false }; + } + ); } export function decode(jwt) { - const result = { - header: {}, - payload: {}, - errors: false, - warnings: [], - }; - - if(!jwt) { - result.errors = true; - return result; - } + const result = { + header: {}, + payload: {}, + errors: false, + warnings: [], + }; + + if (!jwt) { + result.errors = true; + return result; + } + + const split = jwt.split('.'); - const split = jwt.split('.'); + if (!isValidBase64String(split[2])) { + result.warnings.push(strings.warnings.signatureBase64Invalid); + } - if (!isValidBase64String(split[2])) { - result.warnings.push(strings.warnings.signatureBase64Invalid); - } + try { + if (!isValidBase64String(split[0])) { + result.warnings.push(strings.warnings.headerBase64Invalid); + } + result.header = JSON.parse(b64u.decode(split[0])); + } catch (e) { + result.errors = true; + } - try { - if (!isValidBase64String(split[0])) { - result.warnings.push(strings.warnings.headerBase64Invalid); + try { + if (!isValidBase64String(split[1])) { + result.warnings.push(strings.warnings.payloadBase64Invalid); + } + result.payload = JSON.parse(b64u.decode(split[1])); + } catch (e) { + result.errors = true; } - result.header = JSON.parse(b64u.decode(split[0])); - } catch(e) { - result.errors = true; - } - - try { - if (!isValidBase64String(split[1])) { - result.warnings.push(strings.warnings.payloadBase64Invalid); + + try { + if (!isValidJSON(b64u.decode(split[1]))) { + result.warnings.push(strings.warnings.payloadInvalidJSON); + result.payload = b64u.decode(split[1]) + } + } catch (e) { + result.errors = true; } - result.payload = JSON.parse(b64u.decode(split[1])); - } catch(e) { - result.errors = true; - } - return result; + return result; } export function isValidBase64String(s, allowPadding = false) { - if (allowPadding) { - return /^[a-zA-Z0-9_=-]*$/.test(s); - } + if (allowPadding) { + return /^[a-zA-Z0-9_=-]*$/.test(s); + } - return /^[a-zA-Z0-9_-]*$/.test(s); + return /^[a-zA-Z0-9_-]*$/.test(s); +} + +export function isValidJSON(payload) { + try { + JSON.parse(payload); + } catch (e) { + return false; + } + return true; } export function isToken(jwt, checkTypClaim = false) { - const decoded = decode(jwt); + const decoded = decode(jwt); - if(decoded.errors) { - return false; - } + if (decoded.errors) { + return false; + } - if(checkTypClaim && decoded.header.typ !== 'JWT') { - return false; - } + if (checkTypClaim && decoded.header.typ !== 'JWT') { + return false; + } - const split = jwt.split('.'); - let valid = true; - split.forEach(s => valid = valid && isValidBase64String(s, true)); + const split = jwt.split('.'); + let valid = true; + split.forEach(s => valid = valid && isValidBase64String(s, true)); - return valid; -} + return valid; +} \ No newline at end of file diff --git a/src/strings.js b/src/strings.js index 030bd008..d282c6a3 100644 --- a/src/strings.js +++ b/src/strings.js @@ -1,56 +1,57 @@ export default { - common: { - shareThisJwt: 'Share JWT', - jwtIoUrlCopied: 'Copied', - claims: { - exp: 'Expiration time (seconds since Unix epoch)', - nbf: 'Not valid before (seconds since Unix epoch)', - iat: 'Issued at (seconds since Unix epoch)', - iss: 'Issuer (who created and signed this token)', - sub: 'Subject (whom the token refers to)', - aud: 'Audience (who or what the token is intended for)', - jti: 'JWT ID (unique identifier for this token)', - typ: 'Type of token', - azp: 'Authorized party (the party to which this token was issued)', - alg: 'Signature or encryption algorithm', - jku: 'JSON Web Key Set URL', - jwk: 'JSON Web Key Set (embedded)', - kid: 'Key ID', - x5u: 'X.509 Certificate URL', - x5t: 'X.509 Fingerprint (SHA-1)', - 'x5t#S256': 'X.509 Fingerprint (SHA-256)', - cty: 'Content type', - crit: 'Extensions or claims that MUST be processed or verified', - enc: 'Encryption algorithm', - zip: 'Compression algorithm', - kty: 'Key type', - use: 'Intended use of key: "sig" or "enc" (other values accepted)', - key_ops: 'Intended operations for this key', - sid: 'Session ID (String identifier for a Session)', - updated_at: 'Last modification timestamp', - at_hash: 'Access Token hash value', - c_hash: 'Authorization Code hash value', - s_hash: 'State hash value', - nonce: 'Unique value associating request to token', - auth_time: 'Time when authentication occurred', - amr: 'Authentication methods array', - acr: 'Authentication context class' + common: { + shareThisJwt: 'Share JWT', + jwtIoUrlCopied: 'Copied', + claims: { + exp: 'Expiration time (seconds since Unix epoch)', + nbf: 'Not valid before (seconds since Unix epoch)', + iat: 'Issued at (seconds since Unix epoch)', + iss: 'Issuer (who created and signed this token)', + sub: 'Subject (whom the token refers to)', + aud: 'Audience (who or what the token is intended for)', + jti: 'JWT ID (unique identifier for this token)', + typ: 'Type of token', + azp: 'Authorized party (the party to which this token was issued)', + alg: 'Signature or encryption algorithm', + jku: 'JSON Web Key Set URL', + jwk: 'JSON Web Key Set (embedded)', + kid: 'Key ID', + x5u: 'X.509 Certificate URL', + x5t: 'X.509 Fingerprint (SHA-1)', + 'x5t#S256': 'X.509 Fingerprint (SHA-256)', + cty: 'Content type', + crit: 'Extensions or claims that MUST be processed or verified', + enc: 'Encryption algorithm', + zip: 'Compression algorithm', + kty: 'Key type', + use: 'Intended use of key: "sig" or "enc" (other values accepted)', + key_ops: 'Intended operations for this key', + sid: 'Session ID (String identifier for a Session)', + updated_at: 'Last modification timestamp', + at_hash: 'Access Token hash value', + c_hash: 'Authorization Code hash value', + s_hash: 'State hash value', + nonce: 'Unique value associating request to token', + auth_time: 'Time when authentication occurred', + amr: 'Authentication methods array', + acr: 'Authentication context class' + } + }, + extension: { + alreadyInstalled: 'Already installed', + addToBrowser: 'Add to Browser', + noJwtsFound: 'No JWTs found', + saveBackTo: 'Save back to ' + }, + editor: { + signatureVerified: 'signature verified', + signatureInvalid: 'invalid signature', + jwtInvalid: 'Invalid JWT' + }, + warnings: { + headerBase64Invalid: 'Looks like your JWT header is not encoded correctly using base64url (https://tools.ietf.org/html/rfc4648#section-5). Note that padding ("=") must be omitted as per https://tools.ietf.org/html/rfc7515#section-2', + payloadBase64Invalid: 'Looks like your JWT payload is not encoded correctly using base64url (https://tools.ietf.org/html/rfc4648#section-5). Note that padding ("=") must be omitted as per https://tools.ietf.org/html/rfc7515#section-2', + signatureBase64Invalid: 'Looks like your JWT signature is not encoded correctly using base64url (https://tools.ietf.org/html/rfc4648#section-5). Note that padding ("=") must be omitted as per https://tools.ietf.org/html/rfc7515#section-2', + payloadInvalidJSON: 'Looks like your JWT payload is not a valid JSON object. JWT payloads must be top level JSON objects as per https://tools.ietf.org/html/rfc7519#section-7.2' } - }, - extension: { - alreadyInstalled: 'Already installed', - addToBrowser: 'Add to Browser', - noJwtsFound: 'No JWTs found', - saveBackTo: 'Save back to ' - }, - editor: { - signatureVerified: 'signature verified', - signatureInvalid: 'invalid signature', - jwtInvalid: 'Invalid JWT' - }, - warnings: { - headerBase64Invalid: 'Looks like your JWT header is not encoded correctly using base64url (https://tools.ietf.org/html/rfc4648#section-5). Note that padding ("=") must be omitted as per https://tools.ietf.org/html/rfc7515#section-2', - payloadBase64Invalid: 'Looks like your JWT payload is not encoded correctly using base64url (https://tools.ietf.org/html/rfc4648#section-5). Note that padding ("=") must be omitted as per https://tools.ietf.org/html/rfc7515#section-2', - signatureBase64Invalid: 'Looks like your JWT signature is not encoded correctly using base64url (https://tools.ietf.org/html/rfc4648#section-5). Note that padding ("=") must be omitted as per https://tools.ietf.org/html/rfc7515#section-2', - } -}; +}; \ No newline at end of file diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 3ca57a01..033fcc64 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -1232,12 +1232,12 @@ footer background #fff7c9 border-radius 3px font-size 14px - color #786600 + color rgba(0,0,0,.8) line-height 2 a - border-bottom 1px solid rgba(120,102,0,.4) - color #786600 + border-bottom 1px solid rgba(0,0,0,.4) + color rgba(0,0,0,.8) text-decoration none &:hover From 84e145ea513c45a63b57f9057c16e97c59491c5b Mon Sep 17 00:00:00 2001 From: Sambego Date: Wed, 2 Sep 2020 17:02:31 +0200 Subject: [PATCH 272/456] Reset payload error state before decodeing a new token --- src/editor/index.js | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/editor/index.js b/src/editor/index.js index 8a9f7820..627857f6 100644 --- a/src/editor/index.js +++ b/src/editor/index.js @@ -68,7 +68,7 @@ function markAsInvalid(errorMessages = []) { errorElement.appendChild(errorLabel); errorElement.appendChild(errorMessage); editorWarnings.appendChild(errorElement); - }) + }); } else { signatureStatusElement.innerHTML = ` ${strings.editor.signatureInvalid}`; } @@ -197,7 +197,11 @@ function algorithmChangeHandler() { } } -function markAsInvalidWithElement(element, clearTokenEditor = true, errors = []) { +function markAsInvalidWithElement( + element, + clearTokenEditor = true, + errors = [] +) { element.classList.add("error"); markAsInvalid(errors); @@ -306,11 +310,12 @@ function decodeToken() { if (decoded.errors) { markAsInvalidWithElement(editorElement, false, decoded.warnings); - console.log(decoded.warnings.includes(strings.warnings.payloadInvalidJSON)) + console.log( + decoded.warnings.includes(strings.warnings.payloadInvalidJSON) + ); if (decoded.warnings.includes(strings.warnings.payloadInvalidJSON)) { - markAsInvalidWithElement(payloadElement, false) + markAsInvalidWithElement(payloadElement, false); } - } else { if (decoded.warnings && decoded.warnings.length > 0) { showEditorWarnings(decoded.warnings); @@ -423,13 +428,15 @@ export function getTokenEditorValue() { return { token: getTrimmedValue(tokenEditor), publicKey: isPublicKeyAlgorithm(getSelectedAlgorithm()) ? - publicKeyTextArea.value : undefined, + publicKeyTextArea.value : + undefined, }; } export function resetEditorWarnings() { signatureStatusElement.classList.add("valid-token"); signatureStatusElement.classList.remove("invalid-token"); + payloadElement.classList.remove("error"); editorElement.classList.remove("error"); editorElement.classList.remove("warning"); editorWarnings.classList.add("hidden"); From 0ca79d53e59baddd8523641e961919f4c90e2ac5 Mon Sep 17 00:00:00 2001 From: Sambego Date: Wed, 2 Sep 2020 17:06:04 +0200 Subject: [PATCH 273/456] Remove console.log --- src/editor/index.js | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/editor/index.js b/src/editor/index.js index 627857f6..d919711a 100644 --- a/src/editor/index.js +++ b/src/editor/index.js @@ -310,9 +310,6 @@ function decodeToken() { if (decoded.errors) { markAsInvalidWithElement(editorElement, false, decoded.warnings); - console.log( - decoded.warnings.includes(strings.warnings.payloadInvalidJSON) - ); if (decoded.warnings.includes(strings.warnings.payloadInvalidJSON)) { markAsInvalidWithElement(payloadElement, false); } From 364d339668595a6d5a4c31b66286ab2482554cd0 Mon Sep 17 00:00:00 2001 From: Dave Hunsberger Date: Wed, 16 Sep 2020 15:42:53 -0400 Subject: [PATCH 274/456] Create 31-CFML.json --- views/website/libraries/31-CFML.json | 38 ++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 views/website/libraries/31-CFML.json diff --git a/views/website/libraries/31-CFML.json b/views/website/libraries/31-CFML.json new file mode 100644 index 00000000..1c0c5775 --- /dev/null +++ b/views/website/libraries/31-CFML.json @@ -0,0 +1,38 @@ +{ + "name": "CFML", + "uniqueClass": "cfml", + "image": "/img/31.svg", + "bgColor": "rgb(101,143,170)", + "libs": [ + { + "minimumVersion": CF11, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": false, + "aud": true, + "exp": true, + "nbf": true, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false + }, + "authorUrl": "https://github.com/jcberquist", + "authorName": "John Berquist", + "gitHubRepoPath": "jcberquist/jwt-cfml", + "repoUrl": "https://github.com/jcberquist/jwt-cfml", + "installCommandHtml": "git clone https://github.com/jcberquist/jwt-cfml" + } + ] From 417bff05f5cb17c4520bdd570ca423c275864691 Mon Sep 17 00:00:00 2001 From: Dave Hunsberger Date: Wed, 16 Sep 2020 15:45:20 -0400 Subject: [PATCH 275/456] Add files via upload --- img/website/31.svg | 318 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 318 insertions(+) create mode 100644 img/website/31.svg diff --git a/img/website/31.svg b/img/website/31.svg new file mode 100644 index 00000000..fb7fa847 --- /dev/null +++ b/img/website/31.svg @@ -0,0 +1,318 @@ + + + + From d150d57c3a0bd9a7494c65cd24fe3dd18519f6bf Mon Sep 17 00:00:00 2001 From: Gilbert Gilb's Date: Sat, 3 Oct 2020 15:00:19 +0200 Subject: [PATCH 276/456] add go jwit library --- views/website/libraries/9-Go.json | 33 +++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index fda53924..14729056 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -405,6 +405,39 @@ "gitHubRepoPath": "cristalhq/jwt", "repoUrl": "https://github.com/cristalhq/jwt", "installCommandHtml": "go get github.com/cristalhq/jwt" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": false, + "jti": false, + "hs256": false, + "hs384": false, + "hs512": false, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true, + "es256k": false, + "ps256": true, + "ps384": true, + "ps512": true, + "eddsa": true + }, + "authorUrl": "https://github.com/gilbsgilbs", + "authorName": "gilbsgilbs", + "gitHubRepoPath": "gilbsgilbs/jwit", + "repoUrl": "https://github.com/gilbsgilbs/jwit", + "installCommandHtml": "go get github.com/gilbsgilbs/jwit" } ] } From 1e4831e6f792716e2ca557acfe20997a7d5a6404 Mon Sep 17 00:00:00 2001 From: Dave Hunsberger Date: Mon, 5 Oct 2020 10:01:03 -0400 Subject: [PATCH 277/456] Update 31-CFML.json --- views/website/libraries/31-CFML.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/31-CFML.json b/views/website/libraries/31-CFML.json index 1c0c5775..ae8e8bab 100644 --- a/views/website/libraries/31-CFML.json +++ b/views/website/libraries/31-CFML.json @@ -5,7 +5,7 @@ "bgColor": "rgb(101,143,170)", "libs": [ { - "minimumVersion": CF11, + "minimumVersion": "CF11", "support": { "sign": true, "verify": true, From 81acfe8c821ac5de8761e7a7bd2a5ef48304e503 Mon Sep 17 00:00:00 2001 From: petrichor8 Date: Mon, 5 Oct 2020 10:28:54 -0400 Subject: [PATCH 278/456] removing to set up for svg file --- img/website/31.svg | 318 --------------------------------------------- 1 file changed, 318 deletions(-) delete mode 100644 img/website/31.svg diff --git a/img/website/31.svg b/img/website/31.svg deleted file mode 100644 index fb7fa847..00000000 --- a/img/website/31.svg +++ /dev/null @@ -1,318 +0,0 @@ - - - - From d9c993c9c31b4e628cd40a5e9b7b7bc10098ab17 Mon Sep 17 00:00:00 2001 From: petrichor8 Date: Mon, 5 Oct 2020 11:35:47 -0400 Subject: [PATCH 279/456] convert to true svg --- img/website/31.svg | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 img/website/31.svg diff --git a/img/website/31.svg b/img/website/31.svg new file mode 100644 index 00000000..f9f53ea9 --- /dev/null +++ b/img/website/31.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + From 5cd897454f8bc26a9d35f21eb4b8491b410b69bc Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 5 Oct 2020 17:43:26 +0200 Subject: [PATCH 280/456] Add missing bracket int het CFML file --- views/website/libraries/31-CFML.json | 73 ++++++++++++++-------------- 1 file changed, 36 insertions(+), 37 deletions(-) diff --git a/views/website/libraries/31-CFML.json b/views/website/libraries/31-CFML.json index ae8e8bab..d428d11f 100644 --- a/views/website/libraries/31-CFML.json +++ b/views/website/libraries/31-CFML.json @@ -1,38 +1,37 @@ { - "name": "CFML", - "uniqueClass": "cfml", - "image": "/img/31.svg", - "bgColor": "rgb(101,143,170)", - "libs": [ - { - "minimumVersion": "CF11", - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": false, - "aud": true, - "exp": true, - "nbf": true, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true, - "ps256": false, - "ps384": false, - "ps512": false - }, - "authorUrl": "https://github.com/jcberquist", - "authorName": "John Berquist", - "gitHubRepoPath": "jcberquist/jwt-cfml", - "repoUrl": "https://github.com/jcberquist/jwt-cfml", - "installCommandHtml": "git clone https://github.com/jcberquist/jwt-cfml" - } - ] + "name": "CFML", + "uniqueClass": "cfml", + "image": "/img/31.svg", + "bgColor": "rgb(101,143,170)", + "libs": [{ + "minimumVersion": "CF11", + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": false, + "aud": true, + "exp": true, + "nbf": true, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false + }, + "authorUrl": "https://github.com/jcberquist", + "authorName": "John Berquist", + "gitHubRepoPath": "jcberquist/jwt-cfml", + "repoUrl": "https://github.com/jcberquist/jwt-cfml", + "installCommandHtml": "git clone https://github.com/jcberquist/jwt-cfml" + }] +} \ No newline at end of file From 47cdb34b66187aca4f6a3d144c2d12c89d6954a4 Mon Sep 17 00:00:00 2001 From: SP3269 <25411814+SP3269@users.noreply.github.com> Date: Mon, 26 Oct 2020 09:53:27 +1100 Subject: [PATCH 281/456] Adding PowerShell class, library, and logo --- img/website/32.svg | 42 ++++++++++++++++++++++ views/website/libraries/32-PowerShell.json | 40 +++++++++++++++++++++ 2 files changed, 82 insertions(+) create mode 100644 img/website/32.svg create mode 100644 views/website/libraries/32-PowerShell.json diff --git a/img/website/32.svg b/img/website/32.svg new file mode 100644 index 00000000..b427df2f --- /dev/null +++ b/img/website/32.svg @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/views/website/libraries/32-PowerShell.json b/views/website/libraries/32-PowerShell.json new file mode 100644 index 00000000..bda25055 --- /dev/null +++ b/views/website/libraries/32-PowerShell.json @@ -0,0 +1,40 @@ +{ + "name": "PowerShell", + "uniqueClass": "powershell", + "image": "/img/32.svg", + "bgColor": "rgb(25,40,57)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": false, + "hs512": false, + "rs256": true, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false + }, + "authorUrl": "https://github.com/SP3269", + "authorName": "Svyatoslav Pidgorny", + "gitHubRepoPath": "SP3269/posh-jwt", + "repoUrl": "https://github.com/SP3269/posh-jwt", + "installCommandHtml": "Install-Module JWT" + } + ] + } + \ No newline at end of file From 4826f57e4aba7693b65034e248a32c5011896200 Mon Sep 17 00:00:00 2001 From: "Gerasimos (Makis) Maropoulos" Date: Mon, 2 Nov 2020 11:37:14 +0200 Subject: [PATCH 282/456] Add kataras/jwt Go library Hello, this PR adds a commit which includes the new [kataras/jwt](https://github.com/kataras/jwt) package to the official list. --- views/website/libraries/9-Go.json | 34 ++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index 14729056..9c2f9d4b 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -438,6 +438,38 @@ "gitHubRepoPath": "gilbsgilbs/jwit", "repoUrl": "https://github.com/gilbsgilbs/jwit", "installCommandHtml": "go get github.com/gilbsgilbs/jwit" - } + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true, + "eddsa": true + }, + "authorUrl": "https://github.com/kataras", + "authorName": "kataras", + "gitHubRepoPath": "kataras/jwt", + "repoUrl": "https://github.com/kataras/jwt", + "installCommandHtml": "go get github.com/kataras/jwt" + }, ] } From 2cdf569144331ba8da20aef546afa44302670a4e Mon Sep 17 00:00:00 2001 From: "Gerasimos (Makis) Maropoulos" Date: Mon, 2 Nov 2020 11:38:17 +0200 Subject: [PATCH 283/456] Remove unnecessary comma --- views/website/libraries/9-Go.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index 9c2f9d4b..419af8af 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -470,6 +470,6 @@ "gitHubRepoPath": "kataras/jwt", "repoUrl": "https://github.com/kataras/jwt", "installCommandHtml": "go get github.com/kataras/jwt" - }, + } ] } From 081ad36692649f47ee8c8cfe8f844b004a566025 Mon Sep 17 00:00:00 2001 From: Sambego Date: Wed, 4 Nov 2020 13:49:14 +0100 Subject: [PATCH 284/456] Update CFML and Powershell logos --- img/website/31.svg | 52 ++++++++++++++++---------------- img/website/32.svg | 74 ++++++++++++++++++++-------------------------- 2 files changed, 57 insertions(+), 69 deletions(-) diff --git a/img/website/31.svg b/img/website/31.svg index f9f53ea9..a61323cd 100644 --- a/img/website/31.svg +++ b/img/website/31.svg @@ -1,27 +1,25 @@ - - - - - - - - - - - - - - - - - + + + + Oval + Created with Sketch. + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/img/website/32.svg b/img/website/32.svg index b427df2f..f0d570b9 100644 --- a/img/website/32.svg +++ b/img/website/32.svg @@ -1,42 +1,32 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + 32 + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From 6f55cbcbc7a46e7465acba798a47f50055b961c1 Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 5 Nov 2020 10:04:35 +0100 Subject: [PATCH 285/456] Update extension permissions --- manifest.json | 90 +++++++++---------- .../content-scripts/check-install.js | 4 - webpack.extension-dev.js | 25 +++--- 3 files changed, 53 insertions(+), 66 deletions(-) delete mode 100644 src/extension/content-scripts/check-install.js diff --git a/manifest.json b/manifest.json index 3742879a..503a3894 100644 --- a/manifest.json +++ b/manifest.json @@ -1,50 +1,42 @@ { - "manifest_version": 2, - - "name": "JWT Debugger", - "description": "The JWT.io debugger as a Web Extension", - "version": "3.1.0", - - "browser_action": { - "default_icon": "img/favicon/favicon-96x96.png", - "default_popup": "index.html" - }, - - "background": { - "page": "bg.html" - }, - - "content_scripts": [{ - "matches": ["https://jwt.io/*"], - "js": ["js/check-install.js"] - }], - - "icons": { - "16": "img/favicon/favicon-16x16.png", - "32": "img/favicon/favicon-32x32.png", - "48": "img/favicon/android-icon-48x48.png", - "96": "img/favicon/favicon-96x96.png", - "192": "img/favicon/android-icon-192x192.png" - }, - - "commands": { - "_execute_browser_action": { - "suggested_key": { - "default": "Ctrl+Shift+K", - "mac": "Command+Shift+K", - "linux": "Ctrl+Shift+K" - } - } - }, - - "content_security_policy": "script-src 'self' https://ssl.google-analytics.com; object-src 'self'", - - "permissions": [ - "activeTab", - "", - "cookies", - "storage", - "clipboardRead", - "clipboardWrite" - ] -} + "manifest_version": 2, + + "name": "JWT Debugger", + "description": "The JWT.io debugger as a Web Extension", + "version": "3.2.0", + + "browser_action": { + "default_icon": "img/favicon/favicon-96x96.png", + "default_popup": "index.html" + }, + + "background": { + "page": "bg.html" + }, + + "icons": { + "16": "img/favicon/favicon-16x16.png", + "32": "img/favicon/favicon-32x32.png", + "48": "img/favicon/android-icon-48x48.png", + "96": "img/favicon/favicon-96x96.png", + "192": "img/favicon/android-icon-192x192.png" + }, + + "commands": { + "_execute_browser_action": { + "suggested_key": { + "default": "Ctrl+Shift+K", + "mac": "Command+Shift+K", + "linux": "Ctrl+Shift+K" + } + } + }, + + "permissions": [ + "activeTab", + "cookies", + "storage", + "clipboardRead", + "clipboardWrite" + ] +} \ No newline at end of file diff --git a/src/extension/content-scripts/check-install.js b/src/extension/content-scripts/check-install.js deleted file mode 100644 index 5310028b..00000000 --- a/src/extension/content-scripts/check-install.js +++ /dev/null @@ -1,4 +0,0 @@ -const e = document.getElementById('extension-button'); -if(e) { - e.classList.add('is-installed'); -} diff --git a/webpack.extension-dev.js b/webpack.extension-dev.js index a8caad52..24b441c6 100644 --- a/webpack.extension-dev.js +++ b/webpack.extension-dev.js @@ -1,16 +1,15 @@ -const merge = require('webpack-merge'); +const merge = require("webpack-merge"); -const common = require('./webpack.common.js'); +const common = require("./webpack.common.js"); module.exports = merge(common, { - mode: 'development', - entry: { - index: './src/extension/index.js', - webstorage: './src/extension/injected/webstorage.js', - 'check-install': './src/extension/content-scripts/check-install.js' - }, - output: { - filename: '[name].js', - path: __dirname + '/dist/extension/js' - } -}); + mode: "development", + entry: { + index: "./src/extension/index.js", + webstorage: "./src/extension/injected/webstorage.js", + }, + output: { + filename: "[name].js", + path: __dirname + "/dist/extension/js", + }, +}); \ No newline at end of file From 543261f38760ff21fcf677351ea1762f931d4c50 Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 5 Nov 2020 10:08:37 +0100 Subject: [PATCH 286/456] Update cookie consent to be GDPR proof --- views/website/layout.pug | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/views/website/layout.pug b/views/website/layout.pug index 5ea00d6b..cdb529b2 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -73,7 +73,7 @@ html(lang='en') script. !function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs'); - // GDPR cookie banner - script(src="https://cdn.cookielaw.org/consent/c1198aef-6105-4bf5-9af7-ab5b543482e0.js") - script(type="text/javascript"). - function OptanonWrapper() { } + div + div(id="consent_blackbar") + div(id="teconsent" style="position: absolute; bottom: -100px;") + script(async="async" src="http://consent.trustarc.com/notice?domain=auth0banner.com&c=teconsent&js=nj¬iceType=bb&text=true" crossOrigin) From f9f46bd907b28423b5c8a383e4903697e082f3e6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 5 Nov 2020 09:09:36 +0000 Subject: [PATCH 287/456] Bump dot-prop from 4.2.0 to 4.2.1 Bumps [dot-prop](https://github.com/sindresorhus/dot-prop) from 4.2.0 to 4.2.1. - [Release notes](https://github.com/sindresorhus/dot-prop/releases) - [Commits](https://github.com/sindresorhus/dot-prop/compare/v4.2.0...v4.2.1) Signed-off-by: dependabot[bot] --- package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index c02772e6..50964323 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4284,9 +4284,9 @@ } }, "dot-prop": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", - "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.1.tgz", + "integrity": "sha512-l0p4+mIuJIua0mhxGoh4a+iNL9bmeK5DvnSVQa6T0OhrVmaEa1XScX5Etc673FePCJOArq/4Pa2cLGODUWTPOQ==", "dev": true, "requires": { "is-obj": "^1.0.0" From 2549ee03ff300552cb1fd339942c605b819c1e59 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 5 Nov 2020 09:09:52 +0000 Subject: [PATCH 288/456] Bump bl from 1.2.2 to 1.2.3 Bumps [bl](https://github.com/rvagg/bl) from 1.2.2 to 1.2.3. - [Release notes](https://github.com/rvagg/bl/releases) - [Commits](https://github.com/rvagg/bl/compare/v1.2.2...v1.2.3) Signed-off-by: dependabot[bot] --- package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index c02772e6..4ea3922a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2636,9 +2636,9 @@ } }, "bl": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", - "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.3.tgz", + "integrity": "sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==", "dev": true, "requires": { "readable-stream": "^2.3.5", From f1120a3147ab65fa94614e0fc3a316918d1d9237 Mon Sep 17 00:00:00 2001 From: Daniel DeGroff Date: Wed, 11 Nov 2020 11:16:29 -0700 Subject: [PATCH 289/456] Update FusionAuth maven version --- views/website/libraries/3-Java.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/3-Java.json b/views/website/libraries/3-Java.json index f70f12b7..1237b7b1 100644 --- a/views/website/libraries/3-Java.json +++ b/views/website/libraries/3-Java.json @@ -157,7 +157,7 @@ "authorName": "FusionAuth", "gitHubRepoPath": "fusionauth/fusionauth-jwt", "repoUrl": "https://github.com/fusionauth/fusionauth-jwt", - "installCommandHtml": "maven: io.fusionauth / fusionauth-jwt / 3.5.0" + "installCommandHtml": "maven: io.fusionauth / fusionauth-jwt / 4.0.0" }, { "minimumVersion": null, From 8a1107f0e0c187def839ab237c52b239e7ba5966 Mon Sep 17 00:00:00 2001 From: Nutchanon Ninyawee Date: Sat, 14 Nov 2020 10:08:57 +0700 Subject: [PATCH 290/456] update support for pyjwt eddsa https://github.com/jpadilla/pyjwt/pull/455 https://github.com/jpadilla/pyjwt/pull/531 these are some proved about the support of pyjwt eddsa. --- views/website/libraries/1-Python.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/1-Python.json b/views/website/libraries/1-Python.json index 2f94d066..80771323 100644 --- a/views/website/libraries/1-Python.json +++ b/views/website/libraries/1-Python.json @@ -27,7 +27,8 @@ "es512": true, "ps256": true, "ps384": true, - "ps512": true + "ps512": true, + "eddsa": true, }, "authorUrl": "https://github.com/jpadilla", "authorName": "José Padilla", From d4ceb1356c56ae7d703796a12ba521ad14541cee Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Sat, 14 Nov 2020 18:55:01 +0100 Subject: [PATCH 291/456] add panva/jose to javascript --- views/website/libraries/4-JavaScript.json | 33 +++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/views/website/libraries/4-JavaScript.json b/views/website/libraries/4-JavaScript.json index 25b4db71..531c8366 100644 --- a/views/website/libraries/4-JavaScript.json +++ b/views/website/libraries/4-JavaScript.json @@ -4,6 +4,39 @@ "image": "/img/6.svg", "bgColor": "rgb(239, 200, 37)", "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true, + "eddsa": false, + "es256k": false + }, + "authorUrl": "https://github.com/panva", + "authorName": "Filip Skokan", + "gitHubRepoPath": "panva/jose", + "repoUrl": "https://github.com/panva/jose", + "installCommandHtml": "npm install jose" + }, { "minimumVersion": "3.2.0", "support": { From 0075558fbc09596d1f30000b1b65cba6c8d92666 Mon Sep 17 00:00:00 2001 From: Sambego Date: Tue, 17 Nov 2020 13:42:43 +0100 Subject: [PATCH 292/456] Add stale bot --- .github/stale.yml | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 .github/stale.yml diff --git a/.github/stale.yml b/.github/stale.yml new file mode 100644 index 00000000..3cc35f17 --- /dev/null +++ b/.github/stale.yml @@ -0,0 +1,20 @@ +# Configuration for probot-stale - https://github.com/probot/stale + +# Number of days of inactivity before an Issue or Pull Request becomes stale +daysUntilStale: 90 + +# Number of days of inactivity before an Issue or Pull Request with the stale label is closed. +daysUntilClose: 7 + +# Issues or Pull Requests with these labels will never be considered stale. Set to `[]` to disable +exemptLabels: [] + +# Set to true to ignore issues with an assignee (defaults to false) +exemptAssignees: true + +# Label to use when marking as stale +staleLabel: closed:stale + +# Comment to post when marking as stale. Set to `false` to disable +markComment: > + This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. If you have not received a response for our team (apologies for the delay) and this is still a blocker, please reply with additional information or just a ping. Thank you for your contribution! 🙇‍♂️ From 7594e0e3daa54c52e920efa1ccd7973f4975b8d0 Mon Sep 17 00:00:00 2001 From: Sambego Date: Tue, 17 Nov 2020 13:51:13 +0100 Subject: [PATCH 293/456] Remove extra comma --- views/website/libraries/1-Python.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/1-Python.json b/views/website/libraries/1-Python.json index 80771323..98a3f5d1 100644 --- a/views/website/libraries/1-Python.json +++ b/views/website/libraries/1-Python.json @@ -28,7 +28,7 @@ "ps256": true, "ps384": true, "ps512": true, - "eddsa": true, + "eddsa": true }, "authorUrl": "https://github.com/jpadilla", "authorName": "José Padilla", From da01b649f65d7f9a2bc20db52e4470d899c8bee6 Mon Sep 17 00:00:00 2001 From: Sam Bellen Date: Thu, 19 Nov 2020 15:18:16 +0100 Subject: [PATCH 294/456] Add sponsorship message --- README.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/README.md b/README.md index 8a07450e..1b4236ce 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,12 @@ [![Build Status](https://travis-ci.org/jsonwebtoken/jsonwebtoken.github.io.png?branch=master)](https://travis-ci.org/jsonwebtoken/jsonwebtoken.github.io) +### Sponsor + +||| +|-|-| +|![auth0 logo](https://user-images.githubusercontent.com/83319/31722733-de95bbde-b3ea-11e7-96bf-4f4e8f915588.png)|If you want to quickly add secure (JSON Web) token-based authentication to your projects, feel free to check Auth0's documentation and free plan at [auth0.com/developers](https://auth0.com/developers?utm_source=GHsponsor&utm_medium=GHsponsor&utm_campaign=jwtio&utm_content=auth)| + ### How to add a library To add a library, simply edit the right JSON file located at `views/website/libraries`. Each language gets its own file. Multiple libraries share the same language file. From b2f074bb7e2988c530a6300fba40704362658adb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 4 Dec 2020 17:06:06 +0000 Subject: [PATCH 295/456] Bump highlight.js from 9.18.3 to 10.4.1 Bumps [highlight.js](https://github.com/highlightjs/highlight.js) from 9.18.3 to 10.4.1. - [Release notes](https://github.com/highlightjs/highlight.js/releases) - [Changelog](https://github.com/highlightjs/highlight.js/blob/master/CHANGES.md) - [Commits](https://github.com/highlightjs/highlight.js/commits/10.4.1) Signed-off-by: dependabot[bot] --- package-lock.json | 6 +++--- package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package-lock.json b/package-lock.json index c02772e6..86c296c9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6701,9 +6701,9 @@ "dev": true }, "highlight.js": { - "version": "9.18.3", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-9.18.3.tgz", - "integrity": "sha512-zBZAmhSupHIl5sITeMqIJnYCDfAEc3Gdkqj65wC1lpI468MMQeeQkhcIAvk+RylAkxrCcI9xy9piHiXeQ1BdzQ==", + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.4.1.tgz", + "integrity": "sha512-yR5lWvNz7c85OhVAEAeFhVCc/GV4C30Fjzc/rCP0aCWzc1UUOPUk55dK/qdwTZHBvMZo+eZ2jpk62ndX/xMFlg==", "dev": true }, "hmac-drbg": { diff --git a/package.json b/package.json index 5eadab55..10bb47fc 100644 --- a/package.json +++ b/package.json @@ -43,7 +43,7 @@ "grunt-exec": "^3.0.0", "grunt-mocha-test": "^0.13.3", "grunt-webpack": "^3.1.3", - "highlight.js": "^9.15.8", + "highlight.js": "^10.4.1", "inject-loader": "^3.0.1", "isotope-layout": "^3.0.6", "jquery": "^3.4.1", From 68db98cd375ec011ae567f2f22c086b1b2f20d12 Mon Sep 17 00:00:00 2001 From: Filippo Tessarotto Date: Thu, 10 Dec 2020 08:17:49 +0100 Subject: [PATCH 296/456] PHP lcobucci/jwt: add EdDSA support --- views/website/libraries/24-PHP.json | 1 + 1 file changed, 1 insertion(+) diff --git a/views/website/libraries/24-PHP.json b/views/website/libraries/24-PHP.json index a0645bb2..19bc0e1a 100644 --- a/views/website/libraries/24-PHP.json +++ b/views/website/libraries/24-PHP.json @@ -84,6 +84,7 @@ "rs256": true, "rs384": true, "rs512": true, + "eddsa": true, "es256": false, "es384": false, "es512": false, From 837a1fe796e764c80923e56212b53f1ec5489882 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 10 Dec 2020 18:57:01 +0000 Subject: [PATCH 297/456] Bump ini from 1.3.5 to 1.3.7 Bumps [ini](https://github.com/isaacs/ini) from 1.3.5 to 1.3.7. - [Release notes](https://github.com/isaacs/ini/releases) - [Commits](https://github.com/isaacs/ini/compare/v1.3.5...v1.3.7) Signed-off-by: dependabot[bot] --- package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index c02772e6..1b6c7e6f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6945,9 +6945,9 @@ "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" }, "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.7.tgz", + "integrity": "sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ==", "dev": true }, "inject-loader": { From ad940bc08f20c74e638de3e0c5fc83dc8bc95ff1 Mon Sep 17 00:00:00 2001 From: Filippo Tessarotto Date: Fri, 11 Dec 2020 06:57:32 +0100 Subject: [PATCH 298/456] Fix reference --- views/website/libraries/24-PHP.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/24-PHP.json b/views/website/libraries/24-PHP.json index 19bc0e1a..64ee3ba3 100644 --- a/views/website/libraries/24-PHP.json +++ b/views/website/libraries/24-PHP.json @@ -53,6 +53,7 @@ "rs256": true, "rs384": true, "rs512": true, + "eddsa": true, "es256": true, "es384": true, "es512": true, @@ -84,7 +85,6 @@ "rs256": true, "rs384": true, "rs512": true, - "eddsa": true, "es256": false, "es384": false, "es512": false, From 98c852bdf246038f4a283e8d003d850028794825 Mon Sep 17 00:00:00 2001 From: Filippo Tessarotto Date: Fri, 11 Dec 2020 09:30:03 +0100 Subject: [PATCH 299/456] eddsa available from lcobucci/jwt:v4.1.0 --- views/website/libraries/24-PHP.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/24-PHP.json b/views/website/libraries/24-PHP.json index 64ee3ba3..67f03986 100644 --- a/views/website/libraries/24-PHP.json +++ b/views/website/libraries/24-PHP.json @@ -36,7 +36,7 @@ "installCommandHtml": "composer require firebase/php-jwt" }, { - "minimumVersion": "3.0.0", + "minimumVersion": "4.1.0", "support": { "sign": true, "verify": true, From 11317d4f3ef7084e0d68de58531b3e5f39349b1b Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 14 Dec 2020 09:55:24 +0100 Subject: [PATCH 300/456] Update hightlight.js import --- src/website/highlighting.js | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/src/website/highlighting.js b/src/website/highlighting.js index 86c93aee..cc03cca4 100644 --- a/src/website/highlighting.js +++ b/src/website/highlighting.js @@ -1,23 +1,23 @@ -import { codeElements } from './dom-elements-common.js'; +import { codeElements } from "./dom-elements-common.js"; -import hljs from 'highlight.js/lib/highlight.js'; -import jsHighlight from 'highlight.js/lib/languages/javascript'; -import jsonHighlight from 'highlight.js/lib/languages/json'; +import hljs from "highlight.js/lib/core"; +import jsHighlight from "highlight.js/lib/languages/javascript"; +import jsonHighlight from "highlight.js/lib/languages/json"; -hljs.registerLanguage('javascript', jsHighlight); -hljs.registerLanguage('json', jsonHighlight); +hljs.registerLanguage("javascript", jsHighlight); +hljs.registerLanguage("json", jsonHighlight); export function setupHighlighting() { - // TODO: consider replacing this with CodeMirror, which we already use. + // TODO: consider replacing this with CodeMirror, which we already use. - hljs.configure({ - classPrefix: '' - }); + hljs.configure({ + classPrefix: "", + }); - Array.prototype.forEach.call(codeElements, element => { - if (!element.classList.contains('hljs')) { - element.classList.add('hljs'); - hljs.highlightBlock(element); - } - }); -} + Array.prototype.forEach.call(codeElements, (element) => { + if (!element.classList.contains("hljs")) { + element.classList.add("hljs"); + hljs.highlightBlock(element); + } + }); +} \ No newline at end of file From 55fa77f0daf7956c7e60b05b392308c49198315a Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 14 Dec 2020 12:00:33 +0100 Subject: [PATCH 301/456] Fetch github stars serverside --- .env.sample | 1 + .gitignore | 2 + Gruntfile.js | 23 +- libraries.js | 51 + package-lock.json | 41567 +++++++++++----- package.json | 9 +- server.js | 37 +- src/website/libraries.js | 100 +- .../libraries/support/get-languages.js | 33 +- views/website/libraries/template.pug | 3 +- views/website/token-editor.pug | 1 - webpack.common.js | 70 +- 12 files changed, 27987 insertions(+), 13910 deletions(-) create mode 100644 .env.sample create mode 100644 libraries.js diff --git a/.env.sample b/.env.sample new file mode 100644 index 00000000..00f8ae29 --- /dev/null +++ b/.env.sample @@ -0,0 +1 @@ +GITHUB= \ No newline at end of file diff --git a/.gitignore b/.gitignore index fee5fda1..7ad7b569 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,5 @@ npm-debug.log .dockerignore Dockerfile yarn.lock +.env +libraries.json diff --git a/Gruntfile.js b/Gruntfile.js index 5fa53c56..43498478 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -4,7 +4,6 @@ const getLanguages = require("./views/website/libraries/support/get-languages.js module.exports = (grunt) => { grunt.loadNpmTasks("grunt-contrib-copy"); grunt.loadNpmTasks("grunt-contrib-stylus"); - grunt.loadNpmTasks("grunt-contrib-pug"); grunt.loadNpmTasks("grunt-webpack"); grunt.loadNpmTasks("grunt-contrib-watch"); grunt.loadNpmTasks("grunt-contrib-clean"); @@ -118,26 +117,6 @@ module.exports = (grunt) => { }, }, - pug: { - website: { - options: { - //pretty: true, - data: { - languages: getLanguages(), - }, - }, - files: { - "dist/website/index.html": "views/website/index.pug", - "dist/website/introduction/index.html": "views/website/introduction.pug", - }, - }, - extension: { - files: { - "dist/extension/index.html": "views/extension/index.pug", - }, - }, - }, - webpack: { websiteProd: require("./webpack.website-prod.js"), websiteDev: require("./webpack.website-dev.js"), @@ -224,7 +203,7 @@ module.exports = (grunt) => { }, }); - grunt.registerTask("build-website-views", ["stylus:website", "pug:website"]); + grunt.registerTask("build-website-views", ["stylus:website"]); grunt.registerTask("build-extension-views", [ "stylus:extension", diff --git a/libraries.js b/libraries.js new file mode 100644 index 00000000..6348f4e2 --- /dev/null +++ b/libraries.js @@ -0,0 +1,51 @@ +const fs = require("fs"); +const { Octokit } = require("@octokit/rest"); +const dotenv = require("dotenv").config(); +const getLanguages = require("./views/website/libraries/support/get-languages.js"); +const octokit = new Octokit({ + auth: process.env.GITHUB, +}); + +function fetchGithubStars() { + const requests = []; + const languages = getLanguages(); + + console.log("----------------------"); + console.log("Fetching GitHub Data"); + console.log("----------------------"); + + languages.forEach((language) => { + language.libs.forEach((lib) => { + if (lib.gitHubRepoPath) { + const owner = lib.gitHubRepoPath.split("/")[0]; + const repo = lib.gitHubRepoPath.split("/")[1]; + requests.push( + octokit.repos + .get({ + owner, + repo, + }) + .then((repo) => { + console.log( + "Stars", + lib.gitHubRepoPath, + repo.data.stargazers_count + ); + + lib.stars = repo.data.stargazers_count; + return repo.data.stargazers_count; + }) + ); + } + }); + }); + + Promise.all(requests).then(() => { + console.log("----------------------"); + console.log("Writing libraries.json"); + console.log("----------------------"); + fs.writeFileSync(`${__dirname}/libraries.json`, JSON.stringify(languages)); + }); +} + +fetchGithubStars(); \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 1d880df3..ae6d7133 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,13994 +1,28075 @@ { - "name": "jwt.io", - "version": "3.2.0", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "@babel/code-frame": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", - "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", - "dev": true, - "requires": { - "@babel/highlight": "^7.10.4" - } - }, - "@babel/compat-data": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.11.0.tgz", - "integrity": "sha512-TPSvJfv73ng0pfnEOh17bYMPQbI95+nGWc71Ss4vZdRBHTDqmM9Z8ZV4rYz8Ks7sfzc95n30k6ODIq5UGnXcYQ==", - "dev": true, - "requires": { - "browserslist": "^4.12.0", - "invariant": "^2.2.4", - "semver": "^5.5.0" - } - }, - "@babel/core": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.11.1.tgz", - "integrity": "sha512-XqF7F6FWQdKGGWAzGELL+aCO1p+lRY5Tj5/tbT3St1G8NaH70jhhDIKknIZaDans0OQBG5wRAldROLHSt44BgQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.11.0", - "@babel/helper-module-transforms": "^7.11.0", - "@babel/helpers": "^7.10.4", - "@babel/parser": "^7.11.1", - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.11.0", - "@babel/types": "^7.11.0", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", - "json5": "^2.1.2", - "lodash": "^4.17.19", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "name": "jwt.io", + "version": "3.2.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "jwt.io", + "version": "3.2.0", + "dependencies": { + "@octokit/rest": "^18.0.12", + "dotenv": "^8.2.0", + "express": "^4.17.1", + "express-sslify": "^1.2.0", + "lodash.debounce": "^4.0.8", + "octokit": "^1.0.0-hello-world", + "querystring": "^0.2.0" + }, + "devDependencies": { + "@babel/core": "^7.4.5", + "@babel/polyfill": "^7.4.4", + "@babel/preset-env": "^7.4.5", + "babel-loader": "^8.0.6", + "babel-plugin-transform-async-to-generator": "^6.24.1", + "bootstrap": "^3.4.1", + "chai": "^4.2.0", + "chai-arrays": "^2.0.0", + "chai-as-promised": "^7.1.1", + "chai-json-schema": "^1.5.1", + "clipboard-polyfill": "^2.8.1", + "codemirror": "^5.47.0", + "deep-freeze": "0.0.1", + "esm": "^3.2.25", + "flipclock": "^0.7.8", + "grunt": "^1.0.4", + "grunt-cli": "^1.3.2", + "grunt-contrib-clean": "^1.1.0", + "grunt-contrib-connect": "^1.0.2", + "grunt-contrib-copy": "^1.0.0", + "grunt-contrib-pug": "^1.0.0", + "grunt-contrib-stylus": "^1.2.0", + "grunt-contrib-watch": "^1.1.0", + "grunt-crx": "^1.0.5", + "grunt-exec": "^3.0.0", + "grunt-mocha-test": "^0.13.3", + "grunt-webpack": "^3.1.3", + "highlight.js": "^10.4.1", + "inject-loader": "^3.0.1", + "isotope-layout": "^3.0.6", + "jquery": "^3.4.1", + "jstransformer-markdown-it": "^2.1.0", + "lodash": "^4.17.13", + "loglevel": "^1.6.2", + "mocha": "^5.2.0", + "node-jose": "^1.1.4", + "promise.any": "^0.1.1", + "pug": "^2.0.3", + "puppeteer": "^1.17.0", + "request-promise-native": "^1.0.7", + "sinon": "^4.5.0", + "sinon-chai": "^2.14.0", + "source-map-support": "^0.5.12", + "stylus": "^0.54.5", + "tippy.js": "^2.6.0", + "tv4-formats": "^3.0.3", + "uglifyjs-webpack-plugin": "^1.3.0", + "web-ext": "^2.9.3", + "webpack": "^4.33.0", + "webpack-merge": "^4.2.1", + "xhr-mock": "^2.4.1" + } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "@babel/generator": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.11.0.tgz", - "integrity": "sha512-fEm3Uzw7Mc9Xi//qU20cBKatTfs2aOtKqmvy/Vm7RkJEGFQ4xc9myCfbXxqK//ZS8MR/ciOHw6meGASJuKmDfQ==", - "dev": true, - "requires": { - "@babel/types": "^7.11.0", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - } - }, - "@babel/helper-annotate-as-pure": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.10.4.tgz", - "integrity": "sha512-XQlqKQP4vXFB7BN8fEEerrmYvHp3fK/rBkRFz9jaJbzK0B1DSfej9Kc7ZzE8Z/OnId1jpJdNAZ3BFQjWG68rcA==", - "dev": true, - "requires": { - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.10.4.tgz", - "integrity": "sha512-L0zGlFrGWZK4PbT8AszSfLTM5sDU1+Az/En9VrdT8/LmEiJt4zXt+Jve9DCAnQcbqDhCI+29y/L93mrDzddCcg==", - "dev": true, - "requires": { - "@babel/helper-explode-assignable-expression": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-compilation-targets": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.10.4.tgz", - "integrity": "sha512-a3rYhlsGV0UHNDvrtOXBg8/OpfV0OKTkxKPzIplS1zpx7CygDcWWxckxZeDd3gzPzC4kUT0A4nVFDK0wGMh4MQ==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.10.4", - "browserslist": "^4.12.0", - "invariant": "^2.2.4", - "levenary": "^1.1.1", - "semver": "^5.5.0" - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.10.5.tgz", - "integrity": "sha512-0nkdeijB7VlZoLT3r/mY3bUkw3T8WG/hNw+FATs/6+pG2039IJWjTYL0VTISqsNHMUTEnwbVnc89WIJX9Qed0A==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-member-expression-to-functions": "^7.10.5", - "@babel/helper-optimise-call-expression": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.10.4" - } - }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.10.4.tgz", - "integrity": "sha512-2/hu58IEPKeoLF45DBwx3XFqsbCXmkdAay4spVr2x0jYgRxrSNp+ePwvSsy9g6YSaNDcKIQVPXk1Ov8S2edk2g==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.10.4", - "@babel/helper-regex": "^7.10.4", - "regexpu-core": "^4.7.0" - } - }, - "@babel/helper-define-map": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.10.5.tgz", - "integrity": "sha512-fMw4kgFB720aQFXSVaXr79pjjcW5puTCM16+rECJ/plGS+zByelE8l9nCpV1GibxTnFVmUuYG9U8wYfQHdzOEQ==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.10.4", - "@babel/types": "^7.10.5", - "lodash": "^4.17.19" - } - }, - "@babel/helper-explode-assignable-expression": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.10.4.tgz", - "integrity": "sha512-4K71RyRQNPRrR85sr5QY4X3VwG4wtVoXZB9+L3r1Gp38DhELyHCtovqydRi7c1Ovb17eRGiQ/FD5s8JdU0Uy5A==", - "dev": true, - "requires": { - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-function-name": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz", - "integrity": "sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz", - "integrity": "sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A==", - "dev": true, - "requires": { - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.10.4.tgz", - "integrity": "sha512-wljroF5PgCk2juF69kanHVs6vrLwIPNp6DLD+Lrl3hoQ3PpPPikaDRNFA+0t81NOoMt2DL6WW/mdU8k4k6ZzuA==", - "dev": true, - "requires": { - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.11.0.tgz", - "integrity": "sha512-JbFlKHFntRV5qKw3YC0CvQnDZ4XMwgzzBbld7Ly4Mj4cbFy3KywcR8NtNctRToMWJOVvLINJv525Gd6wwVEx/Q==", - "dev": true, - "requires": { - "@babel/types": "^7.11.0" - } - }, - "@babel/helper-module-imports": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.10.4.tgz", - "integrity": "sha512-nEQJHqYavI217oD9+s5MUBzk6x1IlvoS9WTPfgG43CbMEeStE0v+r+TucWdx8KFGowPGvyOkDT9+7DHedIDnVw==", - "dev": true, - "requires": { - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-module-transforms": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.11.0.tgz", - "integrity": "sha512-02EVu8COMuTRO1TAzdMtpBPbe6aQ1w/8fePD2YgQmxZU4gpNWaL9gK3Jp7dxlkUlUCJOTaSeA+Hrm1BRQwqIhg==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4", - "@babel/helper-simple-access": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/template": "^7.10.4", - "@babel/types": "^7.11.0", - "lodash": "^4.17.19" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.4.tgz", - "integrity": "sha512-n3UGKY4VXwXThEiKrgRAoVPBMqeoPgHVqiHZOanAJCG9nQUL2pLRQirUzl0ioKclHGpGqRgIOkgcIJaIWLpygg==", - "dev": true, - "requires": { - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", - "dev": true - }, - "@babel/helper-regex": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.10.5.tgz", - "integrity": "sha512-68kdUAzDrljqBrio7DYAEgCoJHxppJOERHOgOrDN7WjOzP0ZQ1LsSDRXcemzVZaLvjaJsJEESb6qt+znNuENDg==", - "dev": true, - "requires": { - "lodash": "^4.17.19" - } - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.10.4.tgz", - "integrity": "sha512-86Lsr6NNw3qTNl+TBcF1oRZMaVzJtbWTyTko+CQL/tvNvcGYEFKbLXDPxtW0HKk3McNOk4KzY55itGWCAGK5tg==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.10.4", - "@babel/helper-wrap-function": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-replace-supers": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.10.4.tgz", - "integrity": "sha512-sPxZfFXocEymYTdVK1UNmFPBN+Hv5mJkLPsYWwGBxZAxaWfFu+xqp7b6qWD0yjNuNL2VKc6L5M18tOXUP7NU0A==", - "dev": true, - "requires": { - "@babel/helper-member-expression-to-functions": "^7.10.4", - "@babel/helper-optimise-call-expression": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-simple-access": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.10.4.tgz", - "integrity": "sha512-0fMy72ej/VEvF8ULmX6yb5MtHG4uH4Dbd6I/aHDb/JVg0bbivwt9Wg+h3uMvX+QSFtwr5MeItvazbrc4jtRAXw==", - "dev": true, - "requires": { - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.11.0.tgz", - "integrity": "sha512-0XIdiQln4Elglgjbwo9wuJpL/K7AGCY26kmEt0+pRP0TAj4jjyNq1MjoRvikrTVqKcx4Gysxt4cXvVFXP/JO2Q==", - "dev": true, - "requires": { - "@babel/types": "^7.11.0" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.11.0.tgz", - "integrity": "sha512-74Vejvp6mHkGE+m+k5vHY93FX2cAtrw1zXrZXRlG4l410Nm9PxfEiVTn1PjDPV5SnmieiueY4AFg2xqhNFuuZg==", - "dev": true, - "requires": { - "@babel/types": "^7.11.0" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz", - "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==", - "dev": true - }, - "@babel/helper-wrap-function": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.10.4.tgz", - "integrity": "sha512-6py45WvEF0MhiLrdxtRjKjufwLL1/ob2qDJgg5JgNdojBAZSAKnAjkyOCNug6n+OBl4VW76XjvgSFTdaMcW0Ug==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/helpers": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.10.4.tgz", - "integrity": "sha512-L2gX/XeUONeEbI78dXSrJzGdz4GQ+ZTA/aazfUsFaWjSe95kiCuOZ5HsXvkiw3iwF+mFHSRUfJU8t6YavocdXA==", - "dev": true, - "requires": { - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/highlight": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", - "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.10.4", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.11.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true - }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.10.5.tgz", - "integrity": "sha512-cNMCVezQbrRGvXJwm9fu/1sJj9bHdGAgKodZdLqOQIpfoH3raqmRPBM17+lh7CzhiKRRBrGtZL9WcjxSoGYUSg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-remap-async-to-generator": "^7.10.4", - "@babel/plugin-syntax-async-generators": "^7.8.0" - } - }, - "@babel/plugin-proposal-class-properties": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.10.4.tgz", - "integrity": "sha512-vhwkEROxzcHGNu2mzUC0OFFNXdZ4M23ib8aRRcJSsW8BZK9pQMD7QB7csl97NBbgGZO7ZyHUyKDnxzOaP4IrCg==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-proposal-dynamic-import": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.10.4.tgz", - "integrity": "sha512-up6oID1LeidOOASNXgv/CFbgBqTuKJ0cJjz6An5tWD+NVBNlp3VNSBxv2ZdU7SYl3NxJC7agAQDApZusV6uFwQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-dynamic-import": "^7.8.0" - } - }, - "@babel/plugin-proposal-export-namespace-from": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.10.4.tgz", - "integrity": "sha512-aNdf0LY6/3WXkhh0Fdb6Zk9j1NMD8ovj3F6r0+3j837Pn1S1PdNtcwJ5EG9WkVPNHPxyJDaxMaAOVq4eki0qbg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - } - }, - "@babel/plugin-proposal-json-strings": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.10.4.tgz", - "integrity": "sha512-fCL7QF0Jo83uy1K0P2YXrfX11tj3lkpN7l4dMv9Y9VkowkhkQDwFHFd8IiwyK5MZjE8UpbgokkgtcReH88Abaw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-json-strings": "^7.8.0" - } - }, - "@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.11.0.tgz", - "integrity": "sha512-/f8p4z+Auz0Uaf+i8Ekf1iM7wUNLcViFUGiPxKeXvxTSl63B875YPiVdUDdem7hREcI0E0kSpEhS8tF5RphK7Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - } - }, - "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.10.4.tgz", - "integrity": "sha512-wq5n1M3ZUlHl9sqT2ok1T2/MTt6AXE0e1Lz4WzWBr95LsAZ5qDXe4KnFuauYyEyLiohvXFMdbsOTMyLZs91Zlw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0" - } - }, - "@babel/plugin-proposal-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.10.4.tgz", - "integrity": "sha512-73/G7QoRoeNkLZFxsoCCvlg4ezE4eM+57PnOqgaPOozd5myfj7p0muD1mRVJvbUWbOzD+q3No2bWbaKy+DJ8DA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - } - }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.11.0.tgz", - "integrity": "sha512-wzch41N4yztwoRw0ak+37wxwJM2oiIiy6huGCoqkvSTA9acYWcPfn9Y4aJqmFFJ70KTJUu29f3DQ43uJ9HXzEA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-transform-parameters": "^7.10.4" - } - }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.10.4.tgz", - "integrity": "sha512-LflT6nPh+GK2MnFiKDyLiqSqVHkQnVf7hdoAvyTnnKj9xB3docGRsdPuxp6qqqW19ifK3xgc9U5/FwrSaCNX5g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" - } - }, - "@babel/plugin-proposal-optional-chaining": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.11.0.tgz", - "integrity": "sha512-v9fZIu3Y8562RRwhm1BbMRxtqZNFmFA2EG+pT2diuU8PT3H6T/KXoZ54KgYisfOFZHV6PfvAiBIZ9Rcz+/JCxA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-skip-transparent-expression-wrappers": "^7.11.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.0" - } - }, - "@babel/plugin-proposal-private-methods": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.10.4.tgz", - "integrity": "sha512-wh5GJleuI8k3emgTg5KkJK6kHNsGEr0uBTDBuQUBJwckk9xs1ez79ioheEVVxMLyPscB0LfkbVHslQqIzWV6Bw==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.10.4.tgz", - "integrity": "sha512-H+3fOgPnEXFL9zGYtKQe4IDOPKYlZdF1kqFDQRRb8PK4B8af1vAGK04tF5iQAAsui+mHNBQSAtd2/ndEDe9wuA==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-class-properties": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.10.4.tgz", - "integrity": "sha512-GCSBF7iUle6rNugfURwNmCGG3Z/2+opxAMLs1nND4bhEG5PuxTIggDBoeYYSujAlLtsupzOHYJQgPS3pivwXIA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" - } - }, - "@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-top-level-await": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.10.4.tgz", - "integrity": "sha512-ni1brg4lXEmWyafKr0ccFWkJG0CeMt4WV1oyeBW6EFObF4oOHclbkj5cARxAPQyAQ2UTuplJyK4nfkXIMMFvsQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.10.4.tgz", - "integrity": "sha512-9J/oD1jV0ZCBcgnoFWFq1vJd4msoKb/TCpGNFyyLt0zABdcvgK3aYikZ8HjzB14c26bc7E3Q1yugpwGy2aTPNA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.10.4.tgz", - "integrity": "sha512-F6nREOan7J5UXTLsDsZG3DXmZSVofr2tGNwfdrVwkDWHfQckbQXnXSPfD7iO+c/2HGqycwyLST3DnZ16n+cBJQ==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-remap-async-to-generator": "^7.10.4" - } - }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.10.4.tgz", - "integrity": "sha512-WzXDarQXYYfjaV1szJvN3AD7rZgZzC1JtjJZ8dMHUyiK8mxPRahynp14zzNjU3VkPqPsO38CzxiWO1c9ARZ8JA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-block-scoping": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.11.1.tgz", - "integrity": "sha512-00dYeDE0EVEHuuM+26+0w/SCL0BH2Qy7LwHuI4Hi4MH5gkC8/AqMN5uWFJIsoXZrAphiMm1iXzBw6L2T+eA0ew==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-classes": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.10.4.tgz", - "integrity": "sha512-2oZ9qLjt161dn1ZE0Ms66xBncQH4In8Sqw1YWgBUZuGVJJS5c0OFZXL6dP2MRHrkU/eKhWg8CzFJhRQl50rQxA==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.10.4", - "@babel/helper-define-map": "^7.10.4", - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-optimise-call-expression": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.10.4", - "globals": "^11.1.0" - } - }, - "@babel/plugin-transform-computed-properties": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.10.4.tgz", - "integrity": "sha512-JFwVDXcP/hM/TbyzGq3l/XWGut7p46Z3QvqFMXTfk6/09m7xZHJUN9xHfsv7vqqD4YnfI5ueYdSJtXqqBLyjBw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-destructuring": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.10.4.tgz", - "integrity": "sha512-+WmfvyfsyF603iPa6825mq6Qrb7uLjTOsa3XOFzlYcYDHSS4QmpOWOL0NNBY5qMbvrcf3tq0Cw+v4lxswOBpgA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.10.4.tgz", - "integrity": "sha512-ZEAVvUTCMlMFAbASYSVQoxIbHm2OkG2MseW6bV2JjIygOjdVv8tuxrCTzj1+Rynh7ODb8GivUy7dzEXzEhuPaA==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.10.4.tgz", - "integrity": "sha512-GL0/fJnmgMclHiBTTWXNlYjYsA7rDrtsazHG6mglaGSTh0KsrW04qml+Bbz9FL0LcJIRwBWL5ZqlNHKTkU3xAA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.10.4.tgz", - "integrity": "sha512-S5HgLVgkBcRdyQAHbKj+7KyuWx8C6t5oETmUuwz1pt3WTWJhsUV0WIIXuVvfXMxl/QQyHKlSCNNtaIamG8fysw==", - "dev": true, - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-for-of": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.10.4.tgz", - "integrity": "sha512-ItdQfAzu9AlEqmusA/65TqJ79eRcgGmpPPFvBnGILXZH975G0LNjP1yjHvGgfuCxqrPPueXOPe+FsvxmxKiHHQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-function-name": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.10.4.tgz", - "integrity": "sha512-OcDCq2y5+E0dVD5MagT5X+yTRbcvFjDI2ZVAottGH6tzqjx/LKpgkUepu3hp/u4tZBzxxpNGwLsAvGBvQ2mJzg==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-literals": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.10.4.tgz", - "integrity": "sha512-Xd/dFSTEVuUWnyZiMu76/InZxLTYilOSr1UlHV+p115Z/Le2Fi1KXkJUYz0b42DfndostYlPub3m8ZTQlMaiqQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.10.4.tgz", - "integrity": "sha512-0bFOvPyAoTBhtcJLr9VcwZqKmSjFml1iVxvPL0ReomGU53CX53HsM4h2SzckNdkQcHox1bpAqzxBI1Y09LlBSw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-modules-amd": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.10.5.tgz", - "integrity": "sha512-elm5uruNio7CTLFItVC/rIzKLfQ17+fX7EVz5W0TMgIHFo1zY0Ozzx+lgwhL4plzl8OzVn6Qasx5DeEFyoNiRw==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.10.5", - "@babel/helper-plugin-utils": "^7.10.4", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.10.4.tgz", - "integrity": "sha512-Xj7Uq5o80HDLlW64rVfDBhao6OX89HKUmb+9vWYaLXBZOma4gA6tw4Ni1O5qVDoZWUV0fxMYA0aYzOawz0l+1w==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-simple-access": "^7.10.4", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.10.5.tgz", - "integrity": "sha512-f4RLO/OL14/FP1AEbcsWMzpbUz6tssRaeQg11RH1BP/XnPpRoVwgeYViMFacnkaw4k4wjRSjn3ip1Uw9TaXuMw==", - "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.10.4", - "@babel/helper-module-transforms": "^7.10.5", - "@babel/helper-plugin-utils": "^7.10.4", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-umd": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.10.4.tgz", - "integrity": "sha512-mohW5q3uAEt8T45YT7Qc5ws6mWgJAaL/8BfWD9Dodo1A3RKWli8wTS+WiQ/knF+tXlPirW/1/MqzzGfCExKECA==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.10.4.tgz", - "integrity": "sha512-V6LuOnD31kTkxQPhKiVYzYC/Jgdq53irJC/xBSmqcNcqFGV+PER4l6rU5SH2Vl7bH9mLDHcc0+l9HUOe4RNGKA==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.10.4" - } - }, - "@babel/plugin-transform-new-target": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.10.4.tgz", - "integrity": "sha512-YXwWUDAH/J6dlfwqlWsztI2Puz1NtUAubXhOPLQ5gjR/qmQ5U96DY4FQO8At33JN4XPBhrjB8I4eMmLROjjLjw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-object-super": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.10.4.tgz", - "integrity": "sha512-5iTw0JkdRdJvr7sY0vHqTpnruUpTea32JHmq/atIWqsnNussbRzjEDyWep8UNztt1B5IusBYg8Irb0bLbiEBCQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4" - } - }, - "@babel/plugin-transform-parameters": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.10.5.tgz", - "integrity": "sha512-xPHwUj5RdFV8l1wuYiu5S9fqWGM2DrYc24TMvUiRrPVm+SM3XeqU9BcokQX/kEUe+p2RBwy+yoiR1w/Blq6ubw==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-property-literals": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.10.4.tgz", - "integrity": "sha512-ofsAcKiUxQ8TY4sScgsGeR2vJIsfrzqvFb9GvJ5UdXDzl+MyYCaBj/FGzXuv7qE0aJcjWMILny1epqelnFlz8g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-regenerator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.10.4.tgz", - "integrity": "sha512-3thAHwtor39A7C04XucbMg17RcZ3Qppfxr22wYzZNcVIkPHfpM9J0SO8zuCV6SZa265kxBJSrfKTvDCYqBFXGw==", - "dev": true, - "requires": { - "regenerator-transform": "^0.14.2" - } - }, - "@babel/plugin-transform-reserved-words": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.10.4.tgz", - "integrity": "sha512-hGsw1O6Rew1fkFbDImZIEqA8GoidwTAilwCyWqLBM9f+e/u/sQMQu7uX6dyokfOayRuuVfKOW4O7HvaBWM+JlQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.10.4.tgz", - "integrity": "sha512-AC2K/t7o07KeTIxMoHneyX90v3zkm5cjHJEokrPEAGEy3UCp8sLKfnfOIGdZ194fyN4wfX/zZUWT9trJZ0qc+Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-spread": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.11.0.tgz", - "integrity": "sha512-UwQYGOqIdQJe4aWNyS7noqAnN2VbaczPLiEtln+zPowRNlD+79w3oi2TWfYe0eZgd+gjZCbsydN7lzWysDt+gw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-skip-transparent-expression-wrappers": "^7.11.0" - } - }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.10.4.tgz", - "integrity": "sha512-Ddy3QZfIbEV0VYcVtFDCjeE4xwVTJWTmUtorAJkn6u/92Z/nWJNV+mILyqHKrUxXYKA2EoCilgoPePymKL4DvQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-regex": "^7.10.4" - } - }, - "@babel/plugin-transform-template-literals": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.10.5.tgz", - "integrity": "sha512-V/lnPGIb+KT12OQikDvgSuesRX14ck5FfJXt6+tXhdkJ+Vsd0lDCVtF6jcB4rNClYFzaB2jusZ+lNISDk2mMMw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.10.4.tgz", - "integrity": "sha512-QqNgYwuuW0y0H+kUE/GWSR45t/ccRhe14Fs/4ZRouNNQsyd4o3PG4OtHiIrepbM2WKUBDAXKCAK/Lk4VhzTaGA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-unicode-escapes": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.10.4.tgz", - "integrity": "sha512-y5XJ9waMti2J+e7ij20e+aH+fho7Wb7W8rNuu72aKRwCHFqQdhkdU2lo3uZ9tQuboEJcUFayXdARhcxLQ3+6Fg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.10.4.tgz", - "integrity": "sha512-wNfsc4s8N2qnIwpO/WP2ZiSyjfpTamT2C9V9FDH/Ljub9zw6P3SjkXcFmc0RQUt96k2fmIvtla2MMjgTwIAC+A==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/polyfill": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.10.4.tgz", - "integrity": "sha512-8BYcnVqQ5kMD2HXoHInBH7H1b/uP3KdnwCYXOqFnXqguOyuu443WXusbIUbWEfY3Z0Txk0M1uG/8YuAMhNl6zg==", - "dev": true, - "requires": { - "core-js": "^2.6.5", - "regenerator-runtime": "^0.13.4" - } - }, - "@babel/preset-env": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.11.0.tgz", - "integrity": "sha512-2u1/k7rG/gTh02dylX2kL3S0IJNF+J6bfDSp4DI2Ma8QN6Y9x9pmAax59fsCk6QUQG0yqH47yJWA+u1I1LccAg==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.11.0", - "@babel/helper-compilation-targets": "^7.10.4", - "@babel/helper-module-imports": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-proposal-async-generator-functions": "^7.10.4", - "@babel/plugin-proposal-class-properties": "^7.10.4", - "@babel/plugin-proposal-dynamic-import": "^7.10.4", - "@babel/plugin-proposal-export-namespace-from": "^7.10.4", - "@babel/plugin-proposal-json-strings": "^7.10.4", - "@babel/plugin-proposal-logical-assignment-operators": "^7.11.0", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.10.4", - "@babel/plugin-proposal-numeric-separator": "^7.10.4", - "@babel/plugin-proposal-object-rest-spread": "^7.11.0", - "@babel/plugin-proposal-optional-catch-binding": "^7.10.4", - "@babel/plugin-proposal-optional-chaining": "^7.11.0", - "@babel/plugin-proposal-private-methods": "^7.10.4", - "@babel/plugin-proposal-unicode-property-regex": "^7.10.4", - "@babel/plugin-syntax-async-generators": "^7.8.0", - "@babel/plugin-syntax-class-properties": "^7.10.4", - "@babel/plugin-syntax-dynamic-import": "^7.8.0", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.0", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.0", - "@babel/plugin-syntax-top-level-await": "^7.10.4", - "@babel/plugin-transform-arrow-functions": "^7.10.4", - "@babel/plugin-transform-async-to-generator": "^7.10.4", - "@babel/plugin-transform-block-scoped-functions": "^7.10.4", - "@babel/plugin-transform-block-scoping": "^7.10.4", - "@babel/plugin-transform-classes": "^7.10.4", - "@babel/plugin-transform-computed-properties": "^7.10.4", - "@babel/plugin-transform-destructuring": "^7.10.4", - "@babel/plugin-transform-dotall-regex": "^7.10.4", - "@babel/plugin-transform-duplicate-keys": "^7.10.4", - "@babel/plugin-transform-exponentiation-operator": "^7.10.4", - "@babel/plugin-transform-for-of": "^7.10.4", - "@babel/plugin-transform-function-name": "^7.10.4", - "@babel/plugin-transform-literals": "^7.10.4", - "@babel/plugin-transform-member-expression-literals": "^7.10.4", - "@babel/plugin-transform-modules-amd": "^7.10.4", - "@babel/plugin-transform-modules-commonjs": "^7.10.4", - "@babel/plugin-transform-modules-systemjs": "^7.10.4", - "@babel/plugin-transform-modules-umd": "^7.10.4", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.10.4", - "@babel/plugin-transform-new-target": "^7.10.4", - "@babel/plugin-transform-object-super": "^7.10.4", - "@babel/plugin-transform-parameters": "^7.10.4", - "@babel/plugin-transform-property-literals": "^7.10.4", - "@babel/plugin-transform-regenerator": "^7.10.4", - "@babel/plugin-transform-reserved-words": "^7.10.4", - "@babel/plugin-transform-shorthand-properties": "^7.10.4", - "@babel/plugin-transform-spread": "^7.11.0", - "@babel/plugin-transform-sticky-regex": "^7.10.4", - "@babel/plugin-transform-template-literals": "^7.10.4", - "@babel/plugin-transform-typeof-symbol": "^7.10.4", - "@babel/plugin-transform-unicode-escapes": "^7.10.4", - "@babel/plugin-transform-unicode-regex": "^7.10.4", - "@babel/preset-modules": "^0.1.3", - "@babel/types": "^7.11.0", - "browserslist": "^4.12.0", - "core-js-compat": "^3.6.2", - "invariant": "^2.2.2", - "levenary": "^1.1.1", - "semver": "^5.5.0" - } - }, - "@babel/preset-modules": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.3.tgz", - "integrity": "sha512-Ra3JXOHBq2xd56xSF7lMKXdjBn3T772Y1Wet3yWnkDly9zHvJki029tAFzvAAK5cf4YV3yoxuP61crYRol6SVg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - } - }, - "@babel/register": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.0.0.tgz", - "integrity": "sha512-f/+CRmaCe7rVEvcvPvxeA8j5aJhHC3aJie7YuqcMDhUOuyWLA7J/aNrTaHIzoWPEhpHA54mec4Mm8fv8KBlv3g==", - "dev": true, - "requires": { - "core-js": "^2.5.7", - "find-cache-dir": "^1.0.0", - "home-or-tmp": "^3.0.0", - "lodash": "^4.17.10", - "mkdirp": "^0.5.1", - "pirates": "^4.0.0", - "source-map-support": "^0.5.9" - }, - "dependencies": { - "find-cache-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", - "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^1.0.0", - "pkg-dir": "^2.0.0" - } + "node_modules/@babel/code-frame": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", + "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.10.4" + } }, - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } + "node_modules/@babel/compat-data": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.11.0.tgz", + "integrity": "sha512-TPSvJfv73ng0pfnEOh17bYMPQbI95+nGWc71Ss4vZdRBHTDqmM9Z8ZV4rYz8Ks7sfzc95n30k6ODIq5UGnXcYQ==", + "dev": true, + "dependencies": { + "browserslist": "^4.12.0", + "invariant": "^2.2.4", + "semver": "^5.5.0" + } }, - "home-or-tmp": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-3.0.0.tgz", - "integrity": "sha1-V6j+JM8zzdUkhgoVgh3cJchmcfs=", - "dev": true + "node_modules/@babel/core": { + "version": "7.11.1", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.11.1.tgz", + "integrity": "sha512-XqF7F6FWQdKGGWAzGELL+aCO1p+lRY5Tj5/tbT3St1G8NaH70jhhDIKknIZaDans0OQBG5wRAldROLHSt44BgQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.11.0", + "@babel/helper-module-transforms": "^7.11.0", + "@babel/helpers": "^7.10.4", + "@babel/parser": "^7.11.1", + "@babel/template": "^7.10.4", + "@babel/traverse": "^7.11.0", + "@babel/types": "^7.11.0", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + } }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } + "node_modules/@babel/core/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } }, - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } + "node_modules/@babel/core/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } + "node_modules/@babel/generator": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.11.0.tgz", + "integrity": "sha512-fEm3Uzw7Mc9Xi//qU20cBKatTfs2aOtKqmvy/Vm7RkJEGFQ4xc9myCfbXxqK//ZS8MR/ciOHw6meGASJuKmDfQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.11.0", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + } }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.10.4.tgz", + "integrity": "sha512-XQlqKQP4vXFB7BN8fEEerrmYvHp3fK/rBkRFz9jaJbzK0B1DSfej9Kc7ZzE8Z/OnId1jpJdNAZ3BFQjWG68rcA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.10.4" + } }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.10.4.tgz", + "integrity": "sha512-L0zGlFrGWZK4PbT8AszSfLTM5sDU1+Az/En9VrdT8/LmEiJt4zXt+Jve9DCAnQcbqDhCI+29y/L93mrDzddCcg==", + "dev": true, + "dependencies": { + "@babel/helper-explode-assignable-expression": "^7.10.4", + "@babel/types": "^7.10.4" + } }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true + "node_modules/@babel/helper-compilation-targets": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.10.4.tgz", + "integrity": "sha512-a3rYhlsGV0UHNDvrtOXBg8/OpfV0OKTkxKPzIplS1zpx7CygDcWWxckxZeDd3gzPzC4kUT0A4nVFDK0wGMh4MQ==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.10.4", + "browserslist": "^4.12.0", + "invariant": "^2.2.4", + "levenary": "^1.1.1", + "semver": "^5.5.0" + } }, - "pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "dev": true, - "requires": { - "find-up": "^2.1.0" - } - } - } - }, - "@babel/runtime": { - "version": "7.11.2", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.11.2.tgz", - "integrity": "sha512-TeWkU52so0mPtDcaCTxNBI/IHiz0pZgr8VEFqXFtZWpYD08ZB6FaSwVAS8MKRQAP3bYKiVjwysOJgMFY28o6Tw==", - "dev": true, - "requires": { - "regenerator-runtime": "^0.13.4" - } - }, - "@babel/template": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz", - "integrity": "sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/traverse": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.11.0.tgz", - "integrity": "sha512-ZB2V+LskoWKNpMq6E5UUCrjtDUh5IOTAyIl0dTjIEoXum/iKWkoIEKIRDnUucO6f+2FzNkE0oD4RLKoPIufDtg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.11.0", - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/parser": "^7.11.0", - "@babel/types": "^7.11.0", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.19" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.10.5.tgz", + "integrity": "sha512-0nkdeijB7VlZoLT3r/mY3bUkw3T8WG/hNw+FATs/6+pG2039IJWjTYL0VTISqsNHMUTEnwbVnc89WIJX9Qed0A==", + "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.10.4", + "@babel/helper-member-expression-to-functions": "^7.10.5", + "@babel/helper-optimise-call-expression": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-replace-supers": "^7.10.4", + "@babel/helper-split-export-declaration": "^7.10.4" + } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - }, - "@cliqz-oss/firefox-client": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@cliqz-oss/firefox-client/-/firefox-client-0.3.1.tgz", - "integrity": "sha512-RO+Tops/wGnBzWoZYkCraqyh2JqOejqJq5/a4b54HhmjTNSKdUPwAOK17EGg/zPb0nWqkuB7QyZsI9bo+ev8Kw==", - "dev": true, - "requires": { - "colors": "0.5.x", - "js-select": "~0.6.0" - }, - "dependencies": { - "colors": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/colors/-/colors-0.5.1.tgz", - "integrity": "sha1-fQAj6usVTo7p/Oddy5I9DtFmd3Q=", - "dev": true - } - } - }, - "@cliqz-oss/node-firefox-connect": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@cliqz-oss/node-firefox-connect/-/node-firefox-connect-1.2.1.tgz", - "integrity": "sha512-O/IyiB5pfztCdmxQZg0/xeq5w+YiP3gtJz8d4We2EpLPKzbDVjOrtfLKYgVfm6Ya6mbvDge1uLkSRwaoVCWKnA==", - "dev": true, - "requires": { - "@cliqz-oss/firefox-client": "0.3.1", - "es6-promise": "^2.0.1" - }, - "dependencies": { - "es6-promise": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-2.3.0.tgz", - "integrity": "sha1-lu258v2wGZWCKyY92KratnSBgbw=", - "dev": true - } - } - }, - "@sinonjs/commons": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.1.tgz", - "integrity": "sha512-892K+kWUUi3cl+LlqEWIDrhvLgdL79tECi8JZUyq6IviKy/DNhuzCRlbHUjxK89f4ypPMMaFnFuR9Ie6DoIMsw==", - "dev": true, - "requires": { - "type-detect": "4.0.8" - } - }, - "@sinonjs/formatio": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-2.0.0.tgz", - "integrity": "sha512-ls6CAMA6/5gG+O/IdsBcblvnd8qcO/l1TYoNeAzp3wcISOxlPXQEus0mLcdwazEkWjaBdaJ3TaxmNgCLWwvWzg==", - "dev": true, - "requires": { - "samsam": "1.3.0" - } - }, - "@sinonjs/samsam": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.3.tgz", - "integrity": "sha512-bKCMKZvWIjYD0BLGnNrxVuw4dkWCYsLqFOUWw8VgKF/+5Y+mE7LfHWPIYoDXowH+3a9LsWDMo0uAP8YDosPvHQ==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.3.0", - "array-from": "^2.1.1", - "lodash": "^4.17.15" - } - }, - "@sinonjs/text-encoding": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", - "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", - "dev": true - }, - "@types/babel-types": { - "version": "7.0.8", - "resolved": "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.8.tgz", - "integrity": "sha512-jvu8g4LR7+p6ao30RhTREnEhHxmP4/R9D9/rOR/Kq14FztORty9SKgtOZUNZNMB9CXLxZ54EWu4dArUE8WdTsw==", - "dev": true - }, - "@types/babylon": { - "version": "6.16.5", - "resolved": "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.5.tgz", - "integrity": "sha512-xH2e58elpj1X4ynnKp9qSnWlsRTIs6n3tgLGNfwAGHwePw0mulHQllV34n0T25uYSu1k0hRKkWXF890B1yS47w==", - "dev": true, - "requires": { - "@types/babel-types": "*" - } - }, - "@types/json-schema": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.5.tgz", - "integrity": "sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ==", - "dev": true - }, - "@types/node": { - "version": "14.0.27", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.27.tgz", - "integrity": "sha512-kVrqXhbclHNHGu9ztnAwSncIgJv/FaxmzXJvGXNdcCpV1b8u1/Mi6z6m0vwy0LzKeXFTPLH0NzwmoJ3fNCIq0g==", - "dev": true - }, - "@webassemblyjs/ast": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", - "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", - "dev": true, - "requires": { - "@webassemblyjs/helper-module-context": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/wast-parser": "1.9.0" - } - }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", - "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", - "dev": true - }, - "@webassemblyjs/helper-api-error": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", - "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", - "dev": true - }, - "@webassemblyjs/helper-buffer": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz", - "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==", - "dev": true - }, - "@webassemblyjs/helper-code-frame": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", - "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", - "dev": true, - "requires": { - "@webassemblyjs/wast-printer": "1.9.0" - } - }, - "@webassemblyjs/helper-fsm": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", - "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", - "dev": true - }, - "@webassemblyjs/helper-module-context": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", - "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0" - } - }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", - "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", - "dev": true - }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz", - "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-buffer": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/wasm-gen": "1.9.0" - } - }, - "@webassemblyjs/ieee754": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz", - "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", - "dev": true, - "requires": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "@webassemblyjs/leb128": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz", - "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", - "dev": true, - "requires": { - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/utf8": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz", - "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==", - "dev": true - }, - "@webassemblyjs/wasm-edit": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz", - "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-buffer": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/helper-wasm-section": "1.9.0", - "@webassemblyjs/wasm-gen": "1.9.0", - "@webassemblyjs/wasm-opt": "1.9.0", - "@webassemblyjs/wasm-parser": "1.9.0", - "@webassemblyjs/wast-printer": "1.9.0" - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz", - "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/ieee754": "1.9.0", - "@webassemblyjs/leb128": "1.9.0", - "@webassemblyjs/utf8": "1.9.0" - } - }, - "@webassemblyjs/wasm-opt": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz", - "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-buffer": "1.9.0", - "@webassemblyjs/wasm-gen": "1.9.0", - "@webassemblyjs/wasm-parser": "1.9.0" - } - }, - "@webassemblyjs/wasm-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz", - "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-api-error": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/ieee754": "1.9.0", - "@webassemblyjs/leb128": "1.9.0", - "@webassemblyjs/utf8": "1.9.0" - } - }, - "@webassemblyjs/wast-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", - "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/floating-point-hex-parser": "1.9.0", - "@webassemblyjs/helper-api-error": "1.9.0", - "@webassemblyjs/helper-code-frame": "1.9.0", - "@webassemblyjs/helper-fsm": "1.9.0", - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/wast-printer": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", - "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/wast-parser": "1.9.0", - "@xtuc/long": "4.2.2" - } - }, - "@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true - }, - "@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true - }, - "@yarnpkg/lockfile": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", - "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", - "dev": true - }, - "JSONSelect": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.2.1.tgz", - "integrity": "sha1-QVQYpSbTP+MddLTe+jyDbUhewgM=", - "dev": true - }, - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "accepts": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", - "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", - "requires": { - "mime-types": "~2.1.24", - "negotiator": "0.6.2" - } - }, - "acorn": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", - "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", - "dev": true - }, - "acorn-globals": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz", - "integrity": "sha1-/YJw9x+7SZawBPqIDuXUZXOnMb8=", - "dev": true, - "requires": { - "acorn": "^4.0.4" - }, - "dependencies": { - "acorn": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", - "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", - "dev": true - } - } - }, - "acorn-jsx": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", - "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", - "dev": true - }, - "adbkit": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/adbkit/-/adbkit-2.11.0.tgz", - "integrity": "sha512-j2vUhEeZmCiqBP+p77CpPWQTcT20rOmSmRHFUTZUwUpxzeCd3fXop4NAGYztSY9/FNU4bT/qqvYQ4EZKuCXhfA==", - "dev": true, - "requires": { - "adbkit-logcat": "^1.1.0", - "adbkit-monkey": "~1.0.1", - "bluebird": "~2.9.24", - "commander": "^2.3.0", - "debug": "~2.6.3", - "node-forge": "^0.7.1", - "split": "~0.3.3" - }, - "dependencies": { - "bluebird": { - "version": "2.9.34", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-2.9.34.tgz", - "integrity": "sha1-L3tOyAIWMoqf3evfacjUlC/v99g=", - "dev": true + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.10.4.tgz", + "integrity": "sha512-2/hu58IEPKeoLF45DBwx3XFqsbCXmkdAay4spVr2x0jYgRxrSNp+ePwvSsy9g6YSaNDcKIQVPXk1Ov8S2edk2g==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.10.4", + "@babel/helper-regex": "^7.10.4", + "regexpu-core": "^4.7.0" + } }, - "node-forge": { - "version": "0.7.6", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.6.tgz", - "integrity": "sha512-sol30LUpz1jQFBjOKwbjxijiE3b6pjd74YwfD0fJOKPjF+fONKb2Yg8rYgS6+bK6VDl+/wfr4IYpC7jDzLUIfw==", - "dev": true - } - } - }, - "adbkit-logcat": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/adbkit-logcat/-/adbkit-logcat-1.1.0.tgz", - "integrity": "sha1-Adf5sM75CTowvLOwB+//MBUIli8=", - "dev": true - }, - "adbkit-monkey": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/adbkit-monkey/-/adbkit-monkey-1.0.1.tgz", - "integrity": "sha1-8pG+cBou/FZ6Y/x6pq/N7TFDC+E=", - "dev": true, - "requires": { - "async": "~0.2.9" - }, - "dependencies": { - "async": { - "version": "0.2.10", - "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", - "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=", - "dev": true - } - } - }, - "addons-linter": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/addons-linter/-/addons-linter-1.4.1.tgz", - "integrity": "sha512-AX8nCD/gy/6DoX4B7vTMQV6pcP8tG0BjxB3Jv44VZrUTYG+ojHx26abRDyUn+fDqWGf8qzeVn0Vss/NMNjMouA==", - "dev": true, - "requires": { - "@babel/polyfill": "7.0.0", - "@babel/register": "7.0.0", - "ajv": "6.5.5", - "ajv-merge-patch": "4.1.0", - "chalk": "2.4.0", - "cheerio": "1.0.0-rc.2", - "columnify": "1.5.4", - "common-tags": "1.8.0", - "crx-parser": "0.1.2", - "deepmerge": "2.2.1", - "dispensary": "0.27.0", - "es6-promisify": "5.0.0", - "eslint": "5.0.1", - "eslint-plugin-no-unsafe-innerhtml": "1.0.16", - "eslint-visitor-keys": "1.0.0", - "espree": "4.1.0", - "esprima": "3.1.3", - "first-chunk-stream": "2.0.0", - "fluent-syntax": "0.7.0", - "fsevents": "2.0.1", - "glob": "7.1.3", - "is-mergeable-object": "1.1.0", - "jed": "1.1.1", - "os-locale": "3.0.1", - "pino": "5.9.0", - "po2json": "0.4.5", - "postcss": "7.0.6", - "probe-image-size": "4.0.0", - "relaxed-json": "1.0.1", - "semver": "5.6.0", - "shelljs": "0.8.3", - "snyk": "1.110.2", - "source-map-support": "0.5.6", - "strip-bom-stream": "3.0.0", - "tosource": "1.0.0", - "upath": "1.1.0", - "whatwg-url": "7.0.0", - "xmldom": "0.1.27", - "yargs": "12.0.2", - "yauzl": "2.9.2" - }, - "dependencies": { - "@babel/polyfill": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.0.0.tgz", - "integrity": "sha512-dnrMRkyyr74CRelJwvgnnSUDh2ge2NCTyHVwpOdvRMHtJUyxLtMAfhBN3s64pY41zdw0kgiLPh6S20eb1NcX6Q==", - "dev": true, - "requires": { - "core-js": "^2.5.7", - "regenerator-runtime": "^0.11.1" - } + "node_modules/@babel/helper-define-map": { + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.10.5.tgz", + "integrity": "sha512-fMw4kgFB720aQFXSVaXr79pjjcW5puTCM16+rECJ/plGS+zByelE8l9nCpV1GibxTnFVmUuYG9U8wYfQHdzOEQ==", + "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.10.4", + "@babel/types": "^7.10.5", + "lodash": "^4.17.19" + } }, - "ajv": { - "version": "6.5.5", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.5.tgz", - "integrity": "sha512-7q7gtRQDJSyuEHjuVgHoUa2VuemFiCMrfQc9Tc08XTAc4Zj/5U1buQJ0HU6i7fKjXU09SVgSmxa4sLvuvS8Iyg==", - "dev": true, - "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } + "node_modules/@babel/helper-explode-assignable-expression": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.10.4.tgz", + "integrity": "sha512-4K71RyRQNPRrR85sr5QY4X3VwG4wtVoXZB9+L3r1Gp38DhELyHCtovqydRi7c1Ovb17eRGiQ/FD5s8JdU0Uy5A==", + "dev": true, + "dependencies": { + "@babel/traverse": "^7.10.4", + "@babel/types": "^7.10.4" + } }, - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true + "node_modules/@babel/helper-function-name": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz", + "integrity": "sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ==", + "dev": true, + "dependencies": { + "@babel/helper-get-function-arity": "^7.10.4", + "@babel/template": "^7.10.4", + "@babel/types": "^7.10.4" + } }, - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true + "node_modules/@babel/helper-get-function-arity": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz", + "integrity": "sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A==", + "dev": true, + "dependencies": { + "@babel/types": "^7.10.4" + } }, - "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } + "node_modules/@babel/helper-hoist-variables": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.10.4.tgz", + "integrity": "sha512-wljroF5PgCk2juF69kanHVs6vrLwIPNp6DLD+Lrl3hoQ3PpPPikaDRNFA+0t81NOoMt2DL6WW/mdU8k4k6ZzuA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.10.4" + } }, - "cliui": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", - "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", - "dev": true, - "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" - } + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.11.0.tgz", + "integrity": "sha512-JbFlKHFntRV5qKw3YC0CvQnDZ4XMwgzzBbld7Ly4Mj4cbFy3KywcR8NtNctRToMWJOVvLINJv525Gd6wwVEx/Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.11.0" + } }, - "decamelize": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", - "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", - "dev": true, - "requires": { - "xregexp": "4.0.0" - } + "node_modules/@babel/helper-module-imports": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.10.4.tgz", + "integrity": "sha512-nEQJHqYavI217oD9+s5MUBzk6x1IlvoS9WTPfgG43CbMEeStE0v+r+TucWdx8KFGowPGvyOkDT9+7DHedIDnVw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.10.4" + } }, - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", - "dev": true + "node_modules/@babel/helper-module-transforms": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.11.0.tgz", + "integrity": "sha512-02EVu8COMuTRO1TAzdMtpBPbe6aQ1w/8fePD2YgQmxZU4gpNWaL9gK3Jp7dxlkUlUCJOTaSeA+Hrm1BRQwqIhg==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.10.4", + "@babel/helper-replace-supers": "^7.10.4", + "@babel/helper-simple-access": "^7.10.4", + "@babel/helper-split-export-declaration": "^7.11.0", + "@babel/template": "^7.10.4", + "@babel/types": "^7.11.0", + "lodash": "^4.17.19" + } }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.4.tgz", + "integrity": "sha512-n3UGKY4VXwXThEiKrgRAoVPBMqeoPgHVqiHZOanAJCG9nQUL2pLRQirUzl0ioKclHGpGqRgIOkgcIJaIWLpygg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.10.4" + } }, - "glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } + "node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", + "dev": true }, - "regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", - "dev": true + "node_modules/@babel/helper-regex": { + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.10.5.tgz", + "integrity": "sha512-68kdUAzDrljqBrio7DYAEgCoJHxppJOERHOgOrDN7WjOzP0ZQ1LsSDRXcemzVZaLvjaJsJEESb6qt+znNuENDg==", + "dev": true, + "dependencies": { + "lodash": "^4.17.19" + } }, - "semver": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", - "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", - "dev": true + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.10.4.tgz", + "integrity": "sha512-86Lsr6NNw3qTNl+TBcF1oRZMaVzJtbWTyTko+CQL/tvNvcGYEFKbLXDPxtW0HKk3McNOk4KzY55itGWCAGK5tg==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.10.4", + "@babel/helper-wrap-function": "^7.10.4", + "@babel/template": "^7.10.4", + "@babel/traverse": "^7.10.4", + "@babel/types": "^7.10.4" + } }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "node_modules/@babel/helper-replace-supers": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.10.4.tgz", + "integrity": "sha512-sPxZfFXocEymYTdVK1UNmFPBN+Hv5mJkLPsYWwGBxZAxaWfFu+xqp7b6qWD0yjNuNL2VKc6L5M18tOXUP7NU0A==", + "dev": true, + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.10.4", + "@babel/helper-optimise-call-expression": "^7.10.4", + "@babel/traverse": "^7.10.4", + "@babel/types": "^7.10.4" + } }, - "source-map-support": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.6.tgz", - "integrity": "sha512-N4KXEz7jcKqPf2b2vZF11lQIz9W5ZMuUcIOGj243lduidkf2fjkVKJS9vNxVWn3u/uxX38AcE8U9nnH9FPcq+g==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } + "node_modules/@babel/helper-simple-access": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.10.4.tgz", + "integrity": "sha512-0fMy72ej/VEvF8ULmX6yb5MtHG4uH4Dbd6I/aHDb/JVg0bbivwt9Wg+h3uMvX+QSFtwr5MeItvazbrc4jtRAXw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.10.4", + "@babel/types": "^7.10.4" + } }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.11.0.tgz", + "integrity": "sha512-0XIdiQln4Elglgjbwo9wuJpL/K7AGCY26kmEt0+pRP0TAj4jjyNq1MjoRvikrTVqKcx4Gysxt4cXvVFXP/JO2Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.11.0" + } }, - "xregexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", - "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", - "dev": true + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.11.0.tgz", + "integrity": "sha512-74Vejvp6mHkGE+m+k5vHY93FX2cAtrw1zXrZXRlG4l410Nm9PxfEiVTn1PjDPV5SnmieiueY4AFg2xqhNFuuZg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.11.0" + } }, - "yargs": { - "version": "12.0.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.2.tgz", - "integrity": "sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ==", - "dev": true, - "requires": { - "cliui": "^4.0.0", - "decamelize": "^2.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^1.0.1", - "os-locale": "^3.0.0", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^2.0.0", - "which-module": "^2.0.0", - "y18n": "^3.2.1 || ^4.0.0", - "yargs-parser": "^10.1.0" - } + "node_modules/@babel/helper-validator-identifier": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz", + "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==", + "dev": true }, - "yargs-parser": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", - "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", - "dev": true, - "requires": { - "camelcase": "^4.1.0" - } + "node_modules/@babel/helper-wrap-function": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.10.4.tgz", + "integrity": "sha512-6py45WvEF0MhiLrdxtRjKjufwLL1/ob2qDJgg5JgNdojBAZSAKnAjkyOCNug6n+OBl4VW76XjvgSFTdaMcW0Ug==", + "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.10.4", + "@babel/template": "^7.10.4", + "@babel/traverse": "^7.10.4", + "@babel/types": "^7.10.4" + } }, - "yauzl": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.9.2.tgz", - "integrity": "sha1-T7G8euH8L1cDe1SvasyP4QMcW3c=", - "dev": true, - "requires": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - } - } - }, - "adm-zip": { - "version": "0.4.16", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.16.tgz", - "integrity": "sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg==", - "dev": true - }, - "agent-base": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", - "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", - "dev": true, - "requires": { - "es6-promisify": "^5.0.0" - } - }, - "ajv": { - "version": "6.12.3", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.3.tgz", - "integrity": "sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-errors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", - "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "dev": true - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true - }, - "ajv-merge-patch": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ajv-merge-patch/-/ajv-merge-patch-4.1.0.tgz", - "integrity": "sha512-0mAYXMSauA8RZ7r+B4+EAOYcZEcO9OK5EiQCR7W7Cv4E44pJj56ZnkKLJ9/PAcOc0dT+LlV9fdDcq2TxVJfOYw==", - "dev": true, - "requires": { - "fast-json-patch": "^2.0.6", - "json-merge-patch": "^0.2.3" - } - }, - "align-text": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", - "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", - "dev": true, - "requires": { - "kind-of": "^3.0.2", - "longest": "^1.0.1", - "repeat-string": "^1.5.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", - "dev": true - }, - "ansi-align": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", - "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", - "dev": true, - "requires": { - "string-width": "^2.0.0" - } - }, - "ansi-escapes": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", - "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", - "dev": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "ansicolors": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz", - "integrity": "sha1-ZlWX3oap/+Oqm/vmyuXG6kJrSXk=", - "dev": true - }, - "any-promise": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", - "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=", - "dev": true - }, - "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, - "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true - }, - "archiver": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/archiver/-/archiver-1.3.0.tgz", - "integrity": "sha1-TyGU1tj5nfP1MeaIHxTxXVX6ryI=", - "dev": true, - "requires": { - "archiver-utils": "^1.3.0", - "async": "^2.0.0", - "buffer-crc32": "^0.2.1", - "glob": "^7.0.0", - "lodash": "^4.8.0", - "readable-stream": "^2.0.0", - "tar-stream": "^1.5.0", - "walkdir": "^0.0.11", - "zip-stream": "^1.1.0" - }, - "dependencies": { - "async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", - "dev": true, - "requires": { - "lodash": "^4.17.14" - } - } - } - }, - "archiver-utils": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-1.3.0.tgz", - "integrity": "sha1-5QtMCccL89aA4y/xt5lOn52JUXQ=", - "dev": true, - "requires": { - "glob": "^7.0.0", - "graceful-fs": "^4.1.0", - "lazystream": "^1.0.0", - "lodash": "^4.8.0", - "normalize-path": "^2.0.0", - "readable-stream": "^2.0.0" - } - }, - "archy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", - "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", - "dev": true - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - }, - "dependencies": { - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - } - } - }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true - }, - "arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "dev": true - }, - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "dev": true - }, - "array-differ": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", - "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", - "dev": true - }, - "array-each": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", - "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=", - "dev": true - }, - "array-filter": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", - "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=", - "dev": true - }, - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" - }, - "array-from": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", - "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", - "dev": true - }, - "array-map": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz", - "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=", - "dev": true - }, - "array-reduce": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz", - "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=", - "dev": true - }, - "array-slice": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", - "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==", - "dev": true - }, - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "dev": true, - "requires": { - "array-uniq": "^1.0.1" - } - }, - "array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true - }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true - }, - "asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", - "dev": true - }, - "asn1": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", - "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=", - "dev": true - }, - "asn1.js": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", - "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", - "dev": true, - "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, - "assert": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", - "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", - "dev": true, - "requires": { - "object-assign": "^4.1.1", - "util": "0.10.3" - }, - "dependencies": { - "inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", - "dev": true + "node_modules/@babel/helpers": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.10.4.tgz", + "integrity": "sha512-L2gX/XeUONeEbI78dXSrJzGdz4GQ+ZTA/aazfUsFaWjSe95kiCuOZ5HsXvkiw3iwF+mFHSRUfJU8t6YavocdXA==", + "dev": true, + "dependencies": { + "@babel/template": "^7.10.4", + "@babel/traverse": "^7.10.4", + "@babel/types": "^7.10.4" + } }, - "util": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", - "dev": true, - "requires": { - "inherits": "2.0.1" - } - } - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", - "dev": true - }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", - "dev": true - }, - "ast-types": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.3.tgz", - "integrity": "sha512-XTZ7xGML849LkQP86sWdQzfhwbt3YwIO6MqbX9mUNYY98VKaaVZP7YNNm70IpwecbkkxmfC5IYAzOQ/2p29zRA==", - "dev": true - }, - "async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", - "dev": true - }, - "async-each": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", - "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", - "dev": true - }, - "async-limiter": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", - "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.0.tgz", - "integrity": "sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA==", - "dev": true - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true + "node_modules/@babel/highlight": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", + "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.10.4", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } + "node_modules/@babel/parser": { + "version": "7.11.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", + "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", + "dev": true }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true + "node_modules/@babel/plugin-proposal-async-generator-functions": { + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.10.5.tgz", + "integrity": "sha512-cNMCVezQbrRGvXJwm9fu/1sJj9bHdGAgKodZdLqOQIpfoH3raqmRPBM17+lh7CzhiKRRBrGtZL9WcjxSoGYUSg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-remap-async-to-generator": "^7.10.4", + "@babel/plugin-syntax-async-generators": "^7.8.0" + } }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "babel-core": { - "version": "6.26.3", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", - "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", - "dev": true, - "requires": { - "babel-code-frame": "^6.26.0", - "babel-generator": "^6.26.0", - "babel-helpers": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-register": "^6.26.0", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "convert-source-map": "^1.5.1", - "debug": "^2.6.9", - "json5": "^0.5.1", - "lodash": "^4.17.4", - "minimatch": "^3.0.4", - "path-is-absolute": "^1.0.1", - "private": "^0.1.8", - "slash": "^1.0.0", - "source-map": "^0.5.7" - }, - "dependencies": { - "json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true - } - } - }, - "babel-generator": { - "version": "6.26.1", - "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", - "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", - "dev": true, - "requires": { - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "detect-indent": "^4.0.0", - "jsesc": "^1.3.0", - "lodash": "^4.17.4", - "source-map": "^0.5.7", - "trim-right": "^1.0.1" - }, - "dependencies": { - "jsesc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", - "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", - "dev": true - } - } - }, - "babel-helper-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", - "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", - "dev": true, - "requires": { - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-get-function-arity": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", - "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-helper-remap-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", - "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", - "dev": true, - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helpers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", - "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "babel-loader": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.1.0.tgz", - "integrity": "sha512-7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw==", - "dev": true, - "requires": { - "find-cache-dir": "^2.1.0", - "loader-utils": "^1.4.0", - "mkdirp": "^0.5.3", - "pify": "^4.0.1", - "schema-utils": "^2.6.5" - } - }, - "babel-messages": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", - "dev": true, - "requires": { - "object.assign": "^4.1.0" - } - }, - "babel-plugin-syntax-async-functions": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", - "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", - "dev": true - }, - "babel-plugin-transform-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", - "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", - "dev": true, - "requires": { - "babel-helper-remap-async-to-generator": "^6.24.1", - "babel-plugin-syntax-async-functions": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "babel-polyfill": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", - "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "core-js": "^2.5.0", - "regenerator-runtime": "^0.10.5" - }, - "dependencies": { - "regenerator-runtime": { - "version": "0.10.5", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", - "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=", - "dev": true - } - } - }, - "babel-register": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", - "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", - "dev": true, - "requires": { - "babel-core": "^6.26.0", - "babel-runtime": "^6.26.0", - "core-js": "^2.5.0", - "home-or-tmp": "^2.0.0", - "lodash": "^4.17.4", - "mkdirp": "^0.5.1", - "source-map-support": "^0.4.15" - }, - "dependencies": { - "source-map-support": { - "version": "0.4.18", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", - "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", - "dev": true, - "requires": { - "source-map": "^0.5.6" - } - } - } - }, - "babel-runtime": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", - "dev": true, - "requires": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" - }, - "dependencies": { - "regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", - "dev": true - } - } - }, - "babel-template": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", - "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "lodash": "^4.17.4" - } - }, - "babel-traverse": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", - "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", - "dev": true, - "requires": { - "babel-code-frame": "^6.26.0", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "debug": "^2.6.8", - "globals": "^9.18.0", - "invariant": "^2.2.2", - "lodash": "^4.17.4" - }, - "dependencies": { - "globals": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", - "dev": true - } - } - }, - "babel-types": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "esutils": "^2.0.2", - "lodash": "^4.17.4", - "to-fast-properties": "^1.0.3" - }, - "dependencies": { - "to-fast-properties": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", - "dev": true - } - } - }, - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "dev": true, - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.10.4.tgz", + "integrity": "sha512-vhwkEROxzcHGNu2mzUC0OFFNXdZ4M23ib8aRRcJSsW8BZK9pQMD7QB7csl97NBbgGZO7ZyHUyKDnxzOaP4IrCg==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } + "node_modules/@babel/plugin-proposal-dynamic-import": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.10.4.tgz", + "integrity": "sha512-up6oID1LeidOOASNXgv/CFbgBqTuKJ0cJjz6An5tWD+NVBNlp3VNSBxv2ZdU7SYl3NxJC7agAQDApZusV6uFwQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-dynamic-import": "^7.8.0" + } }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } + "node_modules/@babel/plugin-proposal-export-namespace-from": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.10.4.tgz", + "integrity": "sha512-aNdf0LY6/3WXkhh0Fdb6Zk9j1NMD8ovj3F6r0+3j837Pn1S1PdNtcwJ5EG9WkVPNHPxyJDaxMaAOVq4eki0qbg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + } }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "base64-js": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", - "dev": true - }, - "base64url": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", - "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", - "dev": true - }, - "basic-auth": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz", - "integrity": "sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==", - "dev": true, - "requires": { - "safe-buffer": "5.1.2" - } - }, - "batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true - }, - "bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "dev": true, - "optional": true, - "requires": { - "file-uri-to-path": "1.0.0" - } - }, - "bl": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.3.tgz", - "integrity": "sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==", - "dev": true, - "requires": { - "readable-stream": "^2.3.5", - "safe-buffer": "^5.1.1" - } - }, - "bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", - "dev": true - }, - "bn.js": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.2.tgz", - "integrity": "sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA==", - "dev": true - }, - "body": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/body/-/body-5.1.0.tgz", - "integrity": "sha1-5LoM5BCkaTYyM2dgnstOZVMSUGk=", - "dev": true, - "requires": { - "continuable-cache": "^0.3.1", - "error": "^7.0.0", - "raw-body": "~1.1.0", - "safe-json-parse": "~1.0.1" - }, - "dependencies": { - "bytes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz", - "integrity": "sha1-NWnt6Lo0MV+rmcPpLLBMciDeH6g=", - "dev": true + "node_modules/@babel/plugin-proposal-json-strings": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.10.4.tgz", + "integrity": "sha512-fCL7QF0Jo83uy1K0P2YXrfX11tj3lkpN7l4dMv9Y9VkowkhkQDwFHFd8IiwyK5MZjE8UpbgokkgtcReH88Abaw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.0" + } }, - "raw-body": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-1.1.7.tgz", - "integrity": "sha1-HQJ8K/oRasxmI7yo8AAWVyqH1CU=", - "dev": true, - "requires": { - "bytes": "1", - "string_decoder": "0.10" - } - } - } - }, - "body-parser": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", - "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", - "requires": { - "bytes": "3.1.0", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.7.0", - "raw-body": "2.4.0", - "type-is": "~1.6.17" - } - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", - "dev": true - }, - "bootstrap": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-3.4.1.tgz", - "integrity": "sha512-yN5oZVmRCwe5aKwzRj6736nSmKDX7pLYwsXiCj/EYmo16hODaBiT4En5btW/jhBF/seV+XMx3aYwukYC3A49DA==", - "dev": true - }, - "boxen": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", - "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", - "dev": true, - "requires": { - "ansi-align": "^2.0.0", - "camelcase": "^4.0.0", - "chalk": "^2.0.1", - "cli-boxes": "^1.0.0", - "string-width": "^2.0.0", - "term-size": "^1.2.0", - "widest-line": "^2.0.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - } - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "dev": true - }, - "browser-stdout": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", - "dev": true - }, - "browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "dev": true, - "requires": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "dev": true, - "requires": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } - }, - "browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", - "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "browserify-rsa": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "randombytes": "^2.0.1" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, - "browserify-sign": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", - "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", - "dev": true, - "requires": { - "bn.js": "^5.1.1", - "browserify-rsa": "^4.0.1", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "elliptic": "^6.5.3", - "inherits": "^2.0.4", - "parse-asn1": "^5.1.5", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - }, - "dependencies": { - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true + "node_modules/@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.11.0.tgz", + "integrity": "sha512-/f8p4z+Auz0Uaf+i8Ekf1iM7wUNLcViFUGiPxKeXvxTSl63B875YPiVdUDdem7hREcI0E0kSpEhS8tF5RphK7Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + } }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } + "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.10.4.tgz", + "integrity": "sha512-wq5n1M3ZUlHl9sqT2ok1T2/MTt6AXE0e1Lz4WzWBr95LsAZ5qDXe4KnFuauYyEyLiohvXFMdbsOTMyLZs91Zlw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0" + } }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true + "node_modules/@babel/plugin-proposal-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.10.4.tgz", + "integrity": "sha512-73/G7QoRoeNkLZFxsoCCvlg4ezE4eM+57PnOqgaPOozd5myfj7p0muD1mRVJvbUWbOzD+q3No2bWbaKy+DJ8DA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + } }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - } - } - }, - "browserify-zlib": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", - "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", - "dev": true, - "requires": { - "pako": "~1.0.5" - } - }, - "browserslist": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.13.0.tgz", - "integrity": "sha512-MINatJ5ZNrLnQ6blGvePd/QOz9Xtu+Ne+x29iQSCHfkU5BugKVJwZKn/iiL8UbpIpa3JhviKjz+XxMo0m2caFQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001093", - "electron-to-chromium": "^1.3.488", - "escalade": "^3.0.1", - "node-releases": "^1.1.58" - } - }, - "buffer": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz", - "integrity": "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==", - "dev": true, - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4" - } - }, - "buffer-alloc": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", - "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", - "dev": true, - "requires": { - "buffer-alloc-unsafe": "^1.1.0", - "buffer-fill": "^1.0.0" - } - }, - "buffer-alloc-unsafe": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", - "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", - "dev": true - }, - "buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", - "dev": true - }, - "buffer-equal-constant-time": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", - "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=", - "dev": true - }, - "buffer-fill": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", - "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=", - "dev": true - }, - "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true - }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", - "dev": true - }, - "builtin-status-codes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", - "dev": true - }, - "bunyan": { - "version": "1.8.12", - "resolved": "https://registry.npmjs.org/bunyan/-/bunyan-1.8.12.tgz", - "integrity": "sha1-8VDw9nSKvdcq6uhPBEA74u8RN5c=", - "dev": true, - "requires": { - "dtrace-provider": "~0.8", - "moment": "^2.10.6", - "mv": "~2", - "safe-json-stringify": "~1" - } - }, - "bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" - }, - "cacache": { - "version": "10.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz", - "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==", - "dev": true, - "requires": { - "bluebird": "^3.5.1", - "chownr": "^1.0.1", - "glob": "^7.1.2", - "graceful-fs": "^4.1.11", - "lru-cache": "^4.1.1", - "mississippi": "^2.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.2", - "ssri": "^5.2.4", - "unique-filename": "^1.1.0", - "y18n": "^4.0.0" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "dev": true, - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } - }, - "caller-path": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz", - "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", - "dev": true, - "requires": { - "callsites": "^0.2.0" - } - }, - "callsites": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz", - "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=", - "dev": true - }, - "camelcase": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", - "dev": true - }, - "caniuse-lite": { - "version": "1.0.30001111", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001111.tgz", - "integrity": "sha512-xnDje2wchd/8mlJu8sXvWxOGvMgv+uT3iZ3bkIAynKOzToCssWCmkz/ZIkQBs/2pUB4uwnJKVORWQ31UkbVjOg==", - "dev": true - }, - "capture-stack-trace": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz", - "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "center-align": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", - "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", - "dev": true, - "requires": { - "align-text": "^0.1.3", - "lazy-cache": "^1.0.3" - } - }, - "chai": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz", - "integrity": "sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw==", - "dev": true, - "requires": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^3.0.1", - "get-func-name": "^2.0.0", - "pathval": "^1.1.0", - "type-detect": "^4.0.5" - } - }, - "chai-arrays": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/chai-arrays/-/chai-arrays-2.2.0.tgz", - "integrity": "sha512-4awrdGI2EH8owJ9I58PXwG4N56/FiM8bsn4CVSNEgr4GKAM6Kq5JPVApUbhUBjDakbZNuRvV7quRSC38PWq/tg==", - "dev": true - }, - "chai-as-promised": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.1.tgz", - "integrity": "sha512-azL6xMoi+uxu6z4rhWQ1jbdUhOMhis2PvscD/xjLqNMkv3BPPp2JyyuTHOrf9BOosGpNQ11v6BKv/g57RXbiaA==", - "dev": true, - "requires": { - "check-error": "^1.0.2" - } - }, - "chai-json-schema": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/chai-json-schema/-/chai-json-schema-1.5.1.tgz", - "integrity": "sha512-TR/xPDxRhqwFFCWg1HgL8nNWbpNfUwaib6pBN++QKpnd0t+o3+MBvAn5CM1mpdUMaM76oJAtUjGKdjGad01lIA==", - "dev": true, - "requires": { - "jsonpointer.js": "0.4.0", - "tv4": "^1.3.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "character-parser": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", - "integrity": "sha1-x84o821LzZdE5f/CxfzeHHMmH8A=", - "dev": true, - "requires": { - "is-regex": "^1.0.3" - } - }, - "chardet": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", - "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=", - "dev": true - }, - "check-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", - "dev": true - }, - "cheerio": { - "version": "1.0.0-rc.2", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.2.tgz", - "integrity": "sha1-S59TqBsn5NXawxwP/Qz6A8xoMNs=", - "dev": true, - "requires": { - "css-select": "~1.2.0", - "dom-serializer": "~0.1.0", - "entities": "~1.1.1", - "htmlparser2": "^3.9.1", - "lodash": "^4.15.0", - "parse5": "^3.0.1" - } - }, - "chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", - "dev": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "fsevents": "^1.2.7", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - }, - "dependencies": { - "fsevents": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", - "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", - "dev": true, - "optional": true, - "requires": { - "bindings": "^1.5.0", - "nan": "^2.12.1" - } + "node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.11.0.tgz", + "integrity": "sha512-wzch41N4yztwoRw0ak+37wxwJM2oiIiy6huGCoqkvSTA9acYWcPfn9Y4aJqmFFJ70KTJUu29f3DQ43uJ9HXzEA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.0", + "@babel/plugin-transform-parameters": "^7.10.4" + } }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } + "node_modules/@babel/plugin-proposal-optional-catch-binding": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.10.4.tgz", + "integrity": "sha512-LflT6nPh+GK2MnFiKDyLiqSqVHkQnVf7hdoAvyTnnKj9xB3docGRsdPuxp6qqqW19ifK3xgc9U5/FwrSaCNX5g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" + } }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true + "node_modules/@babel/plugin-proposal-optional-chaining": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.11.0.tgz", + "integrity": "sha512-v9fZIu3Y8562RRwhm1BbMRxtqZNFmFA2EG+pT2diuU8PT3H6T/KXoZ54KgYisfOFZHV6PfvAiBIZ9Rcz+/JCxA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-skip-transparent-expression-wrappers": "^7.11.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.0" + } }, - "upath": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", - "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", - "dev": true - } - } - }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true - }, - "chrome-trace-event": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", - "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "circular-json": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", - "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", - "dev": true - }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "clean-css": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz", - "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==", - "dev": true, - "requires": { - "source-map": "~0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "cli-boxes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", - "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", - "dev": true - }, - "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", - "dev": true, - "requires": { - "restore-cursor": "^2.0.0" - } - }, - "cli-width": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", - "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==", - "dev": true - }, - "clipboard-polyfill": { - "version": "2.8.6", - "resolved": "https://registry.npmjs.org/clipboard-polyfill/-/clipboard-polyfill-2.8.6.tgz", - "integrity": "sha512-kz/1ov+PXsBpGnW9XJH3dLWdYj12FpXqO89Dngm/GRPoI36E/tnYs6N0YPTEhxM9WHAlFiN5eoyIVuv5nzKXvg==", - "dev": true - }, - "cliui": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", - "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", - "dev": true, - "requires": { - "center-align": "^0.1.1", - "right-align": "^0.1.1", - "wordwrap": "0.0.2" - } - }, - "clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", - "dev": true - }, - "clone-deep": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-0.3.0.tgz", - "integrity": "sha1-NIxhrpzb4O3+BT2R/0zFIdeQ7eg=", - "dev": true, - "requires": { - "for-own": "^1.0.0", - "is-plain-object": "^2.0.1", - "kind-of": "^3.2.2", - "shallow-clone": "^0.1.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "dev": true - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true - }, - "codemirror": { - "version": "5.56.0", - "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.56.0.tgz", - "integrity": "sha512-MfKVmYgifXjQpLSgpETuih7A7WTTIsxvKfSLGseTY5+qt0E1UD1wblZGM6WLenORo8sgmf+3X+WTe2WF7mufyw==", - "dev": true - }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "dev": true, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "colors": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", - "dev": true - }, - "columnify": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/columnify/-/columnify-1.5.4.tgz", - "integrity": "sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs=", - "dev": true, - "requires": { - "strip-ansi": "^3.0.0", - "wcwidth": "^1.0.0" - } - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "common-tags": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.0.tgz", - "integrity": "sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw==", - "dev": true - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true - }, - "compress-commons": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz", - "integrity": "sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=", - "dev": true, - "requires": { - "buffer-crc32": "^0.2.1", - "crc32-stream": "^2.0.0", - "normalize-path": "^2.0.0", - "readable-stream": "^2.0.0" - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "configstore": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", - "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", - "dev": true, - "requires": { - "dot-prop": "^4.1.0", - "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "unique-string": "^1.0.0", - "write-file-atomic": "^2.0.0", - "xdg-basedir": "^3.0.0" - }, - "dependencies": { - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } + "node_modules/@babel/plugin-proposal-private-methods": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.10.4.tgz", + "integrity": "sha512-wh5GJleuI8k3emgTg5KkJK6kHNsGEr0uBTDBuQUBJwckk9xs1ez79ioheEVVxMLyPscB0LfkbVHslQqIzWV6Bw==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } - } - }, - "connect": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", - "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", - "dev": true, - "requires": { - "debug": "2.6.9", - "finalhandler": "1.1.2", - "parseurl": "~1.3.3", - "utils-merge": "1.0.1" - } - }, - "connect-livereload": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/connect-livereload/-/connect-livereload-0.5.4.tgz", - "integrity": "sha1-gBV9E3HJ83zBQDmrGJWXDRGdw7w=", - "dev": true - }, - "console-browserify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", - "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", - "dev": true - }, - "constantinople": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-3.1.2.tgz", - "integrity": "sha512-yePcBqEFhLOqSBtwYOGGS1exHo/s1xjekXiinh4itpNQGCu4KA1euPh1fg07N2wMITZXQkBz75Ntdt1ctGZouw==", - "dev": true, - "requires": { - "@types/babel-types": "^7.0.0", - "@types/babylon": "^6.16.2", - "babel-types": "^6.26.0", - "babylon": "^6.18.0" - } - }, - "constants-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", - "dev": true - }, - "content-disposition": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", - "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", - "requires": { - "safe-buffer": "5.1.2" - } - }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" - }, - "continuable-cache": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/continuable-cache/-/continuable-cache-0.3.1.tgz", - "integrity": "sha1-vXJ6f67XfnH/OYWskzUakSczrQ8=", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "cookie": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", - "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==" - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" - }, - "copy-concurrently": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", - "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", - "dev": true, - "requires": { - "aproba": "^1.1.1", - "fs-write-stream-atomic": "^1.0.8", - "iferr": "^0.1.5", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.0" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true - }, - "core-js": { - "version": "2.6.11", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", - "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==", - "dev": true - }, - "core-js-compat": { - "version": "3.6.5", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.5.tgz", - "integrity": "sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng==", - "dev": true, - "requires": { - "browserslist": "^4.8.5", - "semver": "7.0.0" - }, - "dependencies": { - "semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true - } - } - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "crc": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz", - "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==", - "dev": true, - "requires": { - "buffer": "^5.1.0" - } - }, - "crc32-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz", - "integrity": "sha1-483TtN8xaN10494/u8t7KX/pCPQ=", - "dev": true, - "requires": { - "crc": "^3.4.4", - "readable-stream": "^2.0.0" - } - }, - "create-ecdh": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", - "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "elliptic": "^6.5.3" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, - "create-error-class": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", - "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", - "dev": true, - "requires": { - "capture-stack-trace": "^1.0.0" - } - }, - "create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "dev": true, - "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "crx": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/crx/-/crx-3.2.1.tgz", - "integrity": "sha1-Fyk+51790IxtHIs+F0nS1XV89Cs=", - "dev": true, - "requires": { - "archiver": "^1.1.0", - "commander": "^2.5.0", - "es6-promise": "^3.0.0", - "node-rsa": "^0.2.10" - } - }, - "crx-parser": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/crx-parser/-/crx-parser-0.1.2.tgz", - "integrity": "sha1-fu7tnt3JXiLBiTguNGJARKiaWm0=", - "dev": true - }, - "crypto-browserify": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", - "dev": true, - "requires": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" - } - }, - "crypto-random-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", - "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", - "dev": true - }, - "css": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", - "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "source-map": "^0.6.1", - "source-map-resolve": "^0.5.2", - "urix": "^0.1.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "css-parse": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-1.7.0.tgz", - "integrity": "sha1-Mh9s9zeCpv91ERE5D8BeLGV9jJs=", - "dev": true - }, - "css-select": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", - "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", - "dev": true, - "requires": { - "boolbase": "~1.0.0", - "css-what": "2.1", - "domutils": "1.5.1", - "nth-check": "~1.0.1" - } - }, - "css-what": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", - "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", - "dev": true - }, - "cyclist": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", - "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", - "dev": true - }, - "d": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", - "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", - "dev": true, - "requires": { - "es5-ext": "^0.10.50", - "type": "^1.0.1" - } - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "data-uri-to-buffer": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-1.2.0.tgz", - "integrity": "sha512-vKQ9DTQPN1FLYiiEEOQ6IBGFqvjCa5rSK3cWMy/Nespm5d/x3dGFT9UBZnkLxCwua/IXBi2TYnwTEpsOvhC4UQ==", - "dev": true - }, - "dateformat": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", - "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", - "dev": true - }, - "debounce": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.1.0.tgz", - "integrity": "sha512-ZQVKfRVlwRfD150ndzEK8M90ABT+Y/JQKs4Y7U4MXdpuoUkkrr4DwKbVux3YjylA5bUMUj0Nc3pMxPJX6N2QQQ==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "dev": true - }, - "deep-eql": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", - "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", - "dev": true, - "requires": { - "type-detect": "^4.0.0" - } - }, - "deep-equal": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", - "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", - "dev": true, - "requires": { - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.1", - "is-regex": "^1.0.4", - "object-is": "^1.0.1", - "object-keys": "^1.1.1", - "regexp.prototype.flags": "^1.2.0" - } - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true - }, - "deep-for-each": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/deep-for-each/-/deep-for-each-2.0.3.tgz", - "integrity": "sha512-Y9mu+rplGcNZ7veer+5rqcdI9w3aPb7/WyE/nYnsuPevaE2z5YuC2u7/Gz/hIKsa0zo8sE8gKoBimSNsO/sr+A==", - "dev": true, - "requires": { - "lodash.isplainobject": "^4.0.6" - } - }, - "deep-freeze": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/deep-freeze/-/deep-freeze-0.0.1.tgz", - "integrity": "sha1-OgsABd4YZygZ39OM0x+RF5yJPoQ=", - "dev": true - }, - "deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", - "dev": true - }, - "deepcopy": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/deepcopy/-/deepcopy-0.6.3.tgz", - "integrity": "sha1-Y0eA8vhlardxr4+oQx7RzO5Vx7A=", - "dev": true - }, - "deepmerge": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-2.2.1.tgz", - "integrity": "sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==", - "dev": true - }, - "defaults": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", - "dev": true, - "requires": { - "clone": "^1.0.2" - } - }, - "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "dev": true, - "requires": { - "object-keys": "^1.0.12" - } - }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } + "node_modules/@babel/plugin-proposal-unicode-property-regex": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.10.4.tgz", + "integrity": "sha512-H+3fOgPnEXFL9zGYtKQe4IDOPKYlZdF1kqFDQRRb8PK4B8af1vAGK04tF5iQAAsui+mHNBQSAtd2/ndEDe9wuA==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + } }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "degenerator": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-1.0.4.tgz", - "integrity": "sha1-/PSQo37OJmRk2cxDGrmMWBnO0JU=", - "dev": true, - "requires": { - "ast-types": "0.x.x", - "escodegen": "1.x.x", - "esprima": "3.x.x" - }, - "dependencies": { - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", - "dev": true - } - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" - }, - "des.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", - "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "desandro-matches-selector": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/desandro-matches-selector/-/desandro-matches-selector-2.0.2.tgz", - "integrity": "sha1-cXvu1NwT59jzdi9wem1YpndCGOE=", - "dev": true - }, - "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" - }, - "detect-file": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", - "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", - "dev": true - }, - "detect-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", - "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, - "dispensary": { - "version": "0.27.0", - "resolved": "https://registry.npmjs.org/dispensary/-/dispensary-0.27.0.tgz", - "integrity": "sha512-bG9pSBPH8wTEaugUIBAbBvBHynqOoGxefOT4YXlPoUc9AxQGDUO1uFHafDVWnsGWiSYvTUga0aZ9xThzfGQtlQ==", - "dev": true, - "requires": { - "array-from": "~2.1.1", - "async": "~2.6.0", - "natural-compare-lite": "~1.4.0", - "pino": "~5.8.0", - "request": "~2.88.0", - "sha.js": "~2.4.4", - "source-map-support": "~0.5.4", - "yargs": "~12.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.10.4.tgz", + "integrity": "sha512-GCSBF7iUle6rNugfURwNmCGG3Z/2+opxAMLs1nND4bhEG5PuxTIggDBoeYYSujAlLtsupzOHYJQgPS3pivwXIA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", - "dev": true, - "requires": { - "lodash": "^4.17.14" - } + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + } }, - "cliui": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", - "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", - "dev": true, - "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" - } + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + } }, - "pino": { - "version": "5.8.1", - "resolved": "https://registry.npmjs.org/pino/-/pino-5.8.1.tgz", - "integrity": "sha512-7bVFzUw3ffIfOM3t7MuQ9KsH+wX5bdGdQhGfccKgleoY7qG4FO3CmVSjywlFmmYGyMOISi1LDGC6JMEH7XkZJg==", - "dev": true, - "requires": { - "fast-json-parse": "^1.0.3", - "fast-redact": "^1.2.0", - "fast-safe-stringify": "^2.0.6", - "flatstr": "^1.0.5", - "pino-std-serializers": "^2.3.0", - "pump": "^3.0.0", - "quick-format-unescaped": "^3.0.0", - "sonic-boom": "^0.6.1" - } + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + } }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + } }, - "yargs": { - "version": "12.0.5", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", - "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", - "dev": true, - "requires": { - "cliui": "^4.0.0", - "decamelize": "^1.2.0", - "find-up": "^3.0.0", - "get-caller-file": "^1.0.1", - "os-locale": "^3.0.0", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^2.0.0", - "which-module": "^2.0.0", - "y18n": "^3.2.1 || ^4.0.0", - "yargs-parser": "^11.1.1" - } - } - } - }, - "dockerfile-ast": { - "version": "0.0.12", - "resolved": "https://registry.npmjs.org/dockerfile-ast/-/dockerfile-ast-0.0.12.tgz", - "integrity": "sha512-cIV8oXkAxpIuN5XgG0TGg07nLDgrj4olkfrdT77OTA3VypscsYHBUg/FjHxW9K3oA+CyH4Th/qtoMgTVpzSobw==", - "dev": true, - "requires": { - "vscode-languageserver-types": "^3.5.0" - } - }, - "doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "doctypes": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", - "integrity": "sha1-6oCxBqh1OHdOijpKWv4pPeSJ4Kk=", - "dev": true - }, - "dom-serializer": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", - "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", - "dev": true, - "requires": { - "domelementtype": "^1.3.0", - "entities": "^1.1.1" - } - }, - "dom-walk": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", - "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==", - "dev": true - }, - "domain-browser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", - "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", - "dev": true - }, - "domelementtype": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", - "dev": true - }, - "domhandler": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", - "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", - "dev": true, - "requires": { - "domelementtype": "1" - } - }, - "domutils": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", - "dev": true, - "requires": { - "dom-serializer": "0", - "domelementtype": "1" - } - }, - "dot-prop": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.1.tgz", - "integrity": "sha512-l0p4+mIuJIua0mhxGoh4a+iNL9bmeK5DvnSVQa6T0OhrVmaEa1XScX5Etc673FePCJOArq/4Pa2cLGODUWTPOQ==", - "dev": true, - "requires": { - "is-obj": "^1.0.0" - } - }, - "dtrace-provider": { - "version": "0.8.8", - "resolved": "https://registry.npmjs.org/dtrace-provider/-/dtrace-provider-0.8.8.tgz", - "integrity": "sha512-b7Z7cNtHPhH9EJhNNbbeqTcXB8LGFFZhq1PGgEvpeHlzd36bhbdTWoE/Ba/YguqpBSlAPKnARWhVlhunCMwfxg==", - "dev": true, - "optional": true, - "requires": { - "nan": "^2.14.0" - } - }, - "duplexer3": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", - "dev": true - }, - "duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", - "dev": true, - "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "ecdsa-sig-formatter": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", - "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" - }, - "electron-to-chromium": { - "version": "1.3.523", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.523.tgz", - "integrity": "sha512-D4/3l5DpciddD92IDRtpLearQSGzly8FwBJv+nITvLH8YJrFabpDFe4yuiOJh2MS4/EsXqyQTXyw1toeYPtshQ==", - "dev": true - }, - "elliptic": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", - "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", - "dev": true, - "requires": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, - "email-validator": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/email-validator/-/email-validator-2.0.4.tgz", - "integrity": "sha512-gYCwo7kh5S3IDyZPLZf6hSS0MnZT8QmJFqYvbqlDZSbwdZlY6QZWxJ4i/6UhITOJ4XzyI647Bm2MXKCLqnJ4nQ==", - "dev": true - }, - "emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" - }, - "encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "dev": true, - "requires": { - "iconv-lite": "^0.6.2" - }, - "dependencies": { - "iconv-lite": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz", - "integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } - } - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "enhanced-resolve": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz", - "integrity": "sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.5.0", - "tapable": "^1.0.0" - }, - "dependencies": { - "memory-fs": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", - "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", - "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - } - } - } - }, - "entities": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", - "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", - "dev": true - }, - "errno": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", - "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", - "dev": true, - "requires": { - "prr": "~1.0.1" - } - }, - "error": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/error/-/error-7.2.1.tgz", - "integrity": "sha512-fo9HBvWnx3NGUKMvMwB/CBCMMrfEJgbDTVDEkPygA3Bdd3lM1OyCd+rbQ8BwnpF6GdVeOLDNmyL4N5Bg80ZvdA==", - "dev": true, - "requires": { - "string-template": "~0.2.1" - } - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es-abstract": { - "version": "1.17.6", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", - "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.0", - "is-regex": "^1.1.0", - "object-inspect": "^1.7.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.0", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "es5-ext": { - "version": "0.10.53", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", - "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", - "dev": true, - "requires": { - "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.3", - "next-tick": "~1.0.0" - } - }, - "es6-error": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", - "dev": true - }, - "es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" - } - }, - "es6-map": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", - "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-set": "~0.1.5", - "es6-symbol": "~3.1.1", - "event-emitter": "~0.3.5" - } - }, - "es6-promise": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz", - "integrity": "sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM=", - "dev": true - }, - "es6-promisify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", - "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", - "dev": true, - "requires": { - "es6-promise": "^4.0.3" - }, - "dependencies": { - "es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", - "dev": true - } - } - }, - "es6-set": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", - "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-symbol": "3.1.1", - "event-emitter": "~0.3.5" - }, - "dependencies": { - "es6-symbol": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", - "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "~0.10.14" - } - } - } - }, - "es6-symbol": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", - "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", - "dev": true, - "requires": { - "d": "^1.0.1", - "ext": "^1.1.2" - } - }, - "es6-weak-map": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", - "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "^0.10.46", - "es6-iterator": "^2.0.3", - "es6-symbol": "^3.1.1" - } - }, - "escalade": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.0.2.tgz", - "integrity": "sha512-gPYAU37hYCUhW5euPeR+Y74F7BL+IBsV93j5cvGriSaD1aG6MGsqsV1yamRdrWrb2j3aiZvb0X+UBOWpx3JWtQ==", - "dev": true - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "escodegen": { - "version": "1.14.3", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", - "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", - "dev": true, - "requires": { - "esprima": "^4.0.1", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true - } - } - }, - "escope": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", - "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", - "dev": true, - "requires": { - "es6-map": "^0.1.3", - "es6-weak-map": "^2.0.1", - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "eslint": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.0.1.tgz", - "integrity": "sha512-D5nG2rErquLUstgUaxJlWB5+gu+U/3VDY0fk/Iuq8y9CUFy/7Y6oF4N2cR1tV8knzQvciIbfqfohd359xTLIKQ==", - "dev": true, - "requires": { - "ajv": "^6.5.0", - "babel-code-frame": "^6.26.0", - "chalk": "^2.1.0", - "cross-spawn": "^6.0.5", - "debug": "^3.1.0", - "doctrine": "^2.1.0", - "eslint-scope": "^4.0.0", - "eslint-visitor-keys": "^1.0.0", - "espree": "^4.0.0", - "esquery": "^1.0.1", - "esutils": "^2.0.2", - "file-entry-cache": "^2.0.0", - "functional-red-black-tree": "^1.0.1", - "glob": "^7.1.2", - "globals": "^11.5.0", - "ignore": "^3.3.3", - "imurmurhash": "^0.1.4", - "inquirer": "^5.2.0", - "is-resolvable": "^1.1.0", - "js-yaml": "^3.11.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.3.0", - "lodash": "^4.17.5", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.2", - "path-is-inside": "^1.0.2", - "pluralize": "^7.0.0", - "progress": "^2.0.0", - "regexpp": "^1.1.0", - "require-uncached": "^1.0.3", - "semver": "^5.5.0", - "string.prototype.matchall": "^2.0.0", - "strip-ansi": "^4.0.0", - "strip-json-comments": "^2.0.1", - "table": "^4.0.3", - "text-table": "^0.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + } }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "eslint-plugin-no-unsafe-innerhtml": { - "version": "1.0.16", - "resolved": "https://registry.npmjs.org/eslint-plugin-no-unsafe-innerhtml/-/eslint-plugin-no-unsafe-innerhtml-1.0.16.tgz", - "integrity": "sha1-fQKHjI6b95FriINtWsEitC8VGTI=", - "dev": true, - "requires": { - "eslint": "^3.7.1" - }, - "dependencies": { - "acorn": { - "version": "5.7.4", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz", - "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==", - "dev": true + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + } }, - "acorn-jsx": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", - "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", - "dev": true, - "requires": { - "acorn": "^3.0.4" - }, - "dependencies": { - "acorn": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", - "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", - "dev": true - } - } + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.10.4.tgz", + "integrity": "sha512-ni1brg4lXEmWyafKr0ccFWkJG0CeMt4WV1oyeBW6EFObF4oOHclbkj5cARxAPQyAQ2UTuplJyK4nfkXIMMFvsQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "ajv": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", - "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", - "dev": true, - "requires": { - "co": "^4.6.0", - "json-stable-stringify": "^1.0.1" - } + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.10.4.tgz", + "integrity": "sha512-9J/oD1jV0ZCBcgnoFWFq1vJd4msoKb/TCpGNFyyLt0zABdcvgK3aYikZ8HjzB14c26bc7E3Q1yugpwGy2aTPNA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "ajv-keywords": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz", - "integrity": "sha1-MU3QpLM2j609/NxU7eYXG4htrzw=", - "dev": true + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.10.4.tgz", + "integrity": "sha512-F6nREOan7J5UXTLsDsZG3DXmZSVofr2tGNwfdrVwkDWHfQckbQXnXSPfD7iO+c/2HGqycwyLST3DnZ16n+cBJQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-remap-async-to-generator": "^7.10.4" + } }, - "ansi-escapes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", - "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", - "dev": true + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.10.4.tgz", + "integrity": "sha512-WzXDarQXYYfjaV1szJvN3AD7rZgZzC1JtjJZ8dMHUyiK8mxPRahynp14zzNjU3VkPqPsO38CzxiWO1c9ARZ8JA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.11.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.11.1.tgz", + "integrity": "sha512-00dYeDE0EVEHuuM+26+0w/SCL0BH2Qy7LwHuI4Hi4MH5gkC8/AqMN5uWFJIsoXZrAphiMm1iXzBw6L2T+eA0ew==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } + "node_modules/@babel/plugin-transform-classes": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.10.4.tgz", + "integrity": "sha512-2oZ9qLjt161dn1ZE0Ms66xBncQH4In8Sqw1YWgBUZuGVJJS5c0OFZXL6dP2MRHrkU/eKhWg8CzFJhRQl50rQxA==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.10.4", + "@babel/helper-define-map": "^7.10.4", + "@babel/helper-function-name": "^7.10.4", + "@babel/helper-optimise-call-expression": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-replace-supers": "^7.10.4", + "@babel/helper-split-export-declaration": "^7.10.4", + "globals": "^11.1.0" + } }, - "cli-cursor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", - "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", - "dev": true, - "requires": { - "restore-cursor": "^1.0.1" - } + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.10.4.tgz", + "integrity": "sha512-JFwVDXcP/hM/TbyzGq3l/XWGut7p46Z3QvqFMXTfk6/09m7xZHJUN9xHfsv7vqqD4YnfI5ueYdSJtXqqBLyjBw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "eslint": { - "version": "3.19.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-3.19.0.tgz", - "integrity": "sha1-yPxiAcf0DdCJQbh8CFdnOGpnmsw=", - "dev": true, - "requires": { - "babel-code-frame": "^6.16.0", - "chalk": "^1.1.3", - "concat-stream": "^1.5.2", - "debug": "^2.1.1", - "doctrine": "^2.0.0", - "escope": "^3.6.0", - "espree": "^3.4.0", - "esquery": "^1.0.0", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "file-entry-cache": "^2.0.0", - "glob": "^7.0.3", - "globals": "^9.14.0", - "ignore": "^3.2.0", - "imurmurhash": "^0.1.4", - "inquirer": "^0.12.0", - "is-my-json-valid": "^2.10.0", - "is-resolvable": "^1.0.0", - "js-yaml": "^3.5.1", - "json-stable-stringify": "^1.0.0", - "levn": "^0.3.0", - "lodash": "^4.0.0", - "mkdirp": "^0.5.0", - "natural-compare": "^1.4.0", - "optionator": "^0.8.2", - "path-is-inside": "^1.0.1", - "pluralize": "^1.2.1", - "progress": "^1.1.8", - "require-uncached": "^1.0.2", - "shelljs": "^0.7.5", - "strip-bom": "^3.0.0", - "strip-json-comments": "~2.0.1", - "table": "^3.7.8", - "text-table": "~0.2.0", - "user-home": "^2.0.0" - } + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.10.4.tgz", + "integrity": "sha512-+WmfvyfsyF603iPa6825mq6Qrb7uLjTOsa3XOFzlYcYDHSS4QmpOWOL0NNBY5qMbvrcf3tq0Cw+v4lxswOBpgA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "espree": { - "version": "3.5.4", - "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz", - "integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==", - "dev": true, - "requires": { - "acorn": "^5.5.0", - "acorn-jsx": "^3.0.0" - } + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.10.4.tgz", + "integrity": "sha512-ZEAVvUTCMlMFAbASYSVQoxIbHm2OkG2MseW6bV2JjIygOjdVv8tuxrCTzj1+Rynh7ODb8GivUy7dzEXzEhuPaA==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "figures": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5", - "object-assign": "^4.1.0" - } + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.10.4.tgz", + "integrity": "sha512-GL0/fJnmgMclHiBTTWXNlYjYsA7rDrtsazHG6mglaGSTh0KsrW04qml+Bbz9FL0LcJIRwBWL5ZqlNHKTkU3xAA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "globals": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", - "dev": true + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.10.4.tgz", + "integrity": "sha512-S5HgLVgkBcRdyQAHbKj+7KyuWx8C6t5oETmUuwz1pt3WTWJhsUV0WIIXuVvfXMxl/QQyHKlSCNNtaIamG8fysw==", + "dev": true, + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "inquirer": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-0.12.0.tgz", - "integrity": "sha1-HvK/1jUE3wvHV4X/+MLEHfEvB34=", - "dev": true, - "requires": { - "ansi-escapes": "^1.1.0", - "ansi-regex": "^2.0.0", - "chalk": "^1.0.0", - "cli-cursor": "^1.0.1", - "cli-width": "^2.0.0", - "figures": "^1.3.5", - "lodash": "^4.3.0", - "readline2": "^1.0.1", - "run-async": "^0.1.0", - "rx-lite": "^3.1.2", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.0", - "through": "^2.3.6" - } + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.10.4.tgz", + "integrity": "sha512-ItdQfAzu9AlEqmusA/65TqJ79eRcgGmpPPFvBnGILXZH975G0LNjP1yjHvGgfuCxqrPPueXOPe+FsvxmxKiHHQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.10.4.tgz", + "integrity": "sha512-OcDCq2y5+E0dVD5MagT5X+yTRbcvFjDI2ZVAottGH6tzqjx/LKpgkUepu3hp/u4tZBzxxpNGwLsAvGBvQ2mJzg==", + "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "onetime": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", - "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", - "dev": true + "node_modules/@babel/plugin-transform-literals": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.10.4.tgz", + "integrity": "sha512-Xd/dFSTEVuUWnyZiMu76/InZxLTYilOSr1UlHV+p115Z/Le2Fi1KXkJUYz0b42DfndostYlPub3m8ZTQlMaiqQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "pluralize": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-1.2.1.tgz", - "integrity": "sha1-0aIUg/0iu0HlihL6NCGCMUCJfEU=", - "dev": true + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.10.4.tgz", + "integrity": "sha512-0bFOvPyAoTBhtcJLr9VcwZqKmSjFml1iVxvPL0ReomGU53CX53HsM4h2SzckNdkQcHox1bpAqzxBI1Y09LlBSw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "progress": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", - "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=", - "dev": true + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.10.5.tgz", + "integrity": "sha512-elm5uruNio7CTLFItVC/rIzKLfQ17+fX7EVz5W0TMgIHFo1zY0Ozzx+lgwhL4plzl8OzVn6Qasx5DeEFyoNiRw==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.10.5", + "@babel/helper-plugin-utils": "^7.10.4", + "babel-plugin-dynamic-import-node": "^2.3.3" + } }, - "restore-cursor": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", - "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", - "dev": true, - "requires": { - "exit-hook": "^1.0.0", - "onetime": "^1.0.0" - } + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.10.4.tgz", + "integrity": "sha512-Xj7Uq5o80HDLlW64rVfDBhao6OX89HKUmb+9vWYaLXBZOma4gA6tw4Ni1O5qVDoZWUV0fxMYA0aYzOawz0l+1w==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-simple-access": "^7.10.4", + "babel-plugin-dynamic-import-node": "^2.3.3" + } }, - "run-async": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-0.1.0.tgz", - "integrity": "sha1-yK1KXhEGYeQCp9IbUw4AnyX444k=", - "dev": true, - "requires": { - "once": "^1.3.0" - } + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.10.5.tgz", + "integrity": "sha512-f4RLO/OL14/FP1AEbcsWMzpbUz6tssRaeQg11RH1BP/XnPpRoVwgeYViMFacnkaw4k4wjRSjn3ip1Uw9TaXuMw==", + "dev": true, + "dependencies": { + "@babel/helper-hoist-variables": "^7.10.4", + "@babel/helper-module-transforms": "^7.10.5", + "@babel/helper-plugin-utils": "^7.10.4", + "babel-plugin-dynamic-import-node": "^2.3.3" + } }, - "shelljs": { - "version": "0.7.8", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.8.tgz", - "integrity": "sha1-3svPh0sNHl+3LhSxZKloMEjprLM=", - "dev": true, - "requires": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" - } + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.10.4.tgz", + "integrity": "sha512-mohW5q3uAEt8T45YT7Qc5ws6mWgJAaL/8BfWD9Dodo1A3RKWli8wTS+WiQ/knF+tXlPirW/1/MqzzGfCExKECA==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "slice-ansi": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", - "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=", - "dev": true + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.10.4.tgz", + "integrity": "sha512-V6LuOnD31kTkxQPhKiVYzYC/Jgdq53irJC/xBSmqcNcqFGV+PER4l6rU5SH2Vl7bH9mLDHcc0+l9HUOe4RNGKA==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.10.4" + } }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.10.4.tgz", + "integrity": "sha512-YXwWUDAH/J6dlfwqlWsztI2Puz1NtUAubXhOPLQ5gjR/qmQ5U96DY4FQO8At33JN4XPBhrjB8I4eMmLROjjLjw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.10.4.tgz", + "integrity": "sha512-5iTw0JkdRdJvr7sY0vHqTpnruUpTea32JHmq/atIWqsnNussbRzjEDyWep8UNztt1B5IusBYg8Irb0bLbiEBCQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-replace-supers": "^7.10.4" + } }, - "table": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/table/-/table-3.8.3.tgz", - "integrity": "sha1-K7xULw/amGGnVdOUf+/Ys/UThV8=", - "dev": true, - "requires": { - "ajv": "^4.7.0", - "ajv-keywords": "^1.0.0", - "chalk": "^1.1.1", - "lodash": "^4.0.0", - "slice-ansi": "0.0.4", - "string-width": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.10.5.tgz", + "integrity": "sha512-xPHwUj5RdFV8l1wuYiu5S9fqWGM2DrYc24TMvUiRrPVm+SM3XeqU9BcokQX/kEUe+p2RBwy+yoiR1w/Blq6ubw==", + "dev": true, + "dependencies": { + "@babel/helper-get-function-arity": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" } - } - } - } - }, - "eslint-scope": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", - "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", - "dev": true, - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "eslint-visitor-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", - "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", - "dev": true - }, - "esm": { - "version": "3.2.25", - "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz", - "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==", - "dev": true - }, - "espree": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-4.1.0.tgz", - "integrity": "sha512-I5BycZW6FCVIub93TeVY1s7vjhP9CY6cXCznIRfiig7nRviKZYdRnj/sHEWC6A7WE9RDWOFq9+7OsWSYz8qv2w==", - "dev": true, - "requires": { - "acorn": "^6.0.2", - "acorn-jsx": "^5.0.0", - "eslint-visitor-keys": "^1.0.0" - }, - "dependencies": { - "acorn": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", - "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", - "dev": true - } - } - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esquery": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", - "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", - "dev": true, - "requires": { - "estraverse": "^5.1.0" - }, - "dependencies": { - "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true - } - } - }, - "esrecurse": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", - "dev": true, - "requires": { - "estraverse": "^4.1.0" - } - }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" - }, - "ev-emitter": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ev-emitter/-/ev-emitter-1.1.1.tgz", - "integrity": "sha512-ipiDYhdQSCZ4hSbX4rMW+XzNKMD1prg/sTvoVmSLkuQ1MVlwjJQQA+sW8tMYR3BLUr9KjodFV4pvzunvRhd33Q==", - "dev": true - }, - "event-emitter": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", - "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, - "event-to-promise": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/event-to-promise/-/event-to-promise-0.8.0.tgz", - "integrity": "sha1-S4TxF3K28l93Uvx02XFTGsb1tiY=", - "dev": true - }, - "eventemitter2": { - "version": "0.4.14", - "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz", - "integrity": "sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas=", - "dev": true - }, - "events": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.2.0.tgz", - "integrity": "sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==", - "dev": true - }, - "evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "dev": true, - "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "execa": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz", - "integrity": "sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==", - "dev": true, - "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - }, - "exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", - "dev": true - }, - "exit-hook": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", - "integrity": "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=", - "dev": true - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "dev": true, - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "expand-tilde": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", - "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", - "dev": true, - "requires": { - "homedir-polyfill": "^1.0.1" - } - }, - "express": { - "version": "4.17.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", - "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", - "requires": { - "accepts": "~1.3.7", - "array-flatten": "1.1.1", - "body-parser": "1.19.0", - "content-disposition": "0.5.3", - "content-type": "~1.0.4", - "cookie": "0.4.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~1.1.2", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "~1.1.2", - "fresh": "0.5.2", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.5", - "qs": "6.7.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.1.2", - "send": "0.17.1", - "serve-static": "1.14.1", - "setprototypeof": "1.1.1", - "statuses": "~1.5.0", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - } - }, - "express-sslify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/express-sslify/-/express-sslify-1.2.0.tgz", - "integrity": "sha1-MOhLzu0VV+sYdnK74UMKCioQDZw=" - }, - "ext": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", - "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", - "dev": true, - "requires": { - "type": "^2.0.0" - }, - "dependencies": { - "type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", - "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==", - "dev": true - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "external-editor": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", - "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", - "dev": true, - "requires": { - "chardet": "^0.4.0", - "iconv-lite": "^0.4.17", - "tmp": "^0.0.33" - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.10.4.tgz", + "integrity": "sha512-ofsAcKiUxQ8TY4sScgsGeR2vJIsfrzqvFb9GvJ5UdXDzl+MyYCaBj/FGzXuv7qE0aJcjWMILny1epqelnFlz8g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.10.4.tgz", + "integrity": "sha512-3thAHwtor39A7C04XucbMg17RcZ3Qppfxr22wYzZNcVIkPHfpM9J0SO8zuCV6SZa265kxBJSrfKTvDCYqBFXGw==", + "dev": true, + "dependencies": { + "regenerator-transform": "^0.14.2" + } }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.10.4.tgz", + "integrity": "sha512-hGsw1O6Rew1fkFbDImZIEqA8GoidwTAilwCyWqLBM9f+e/u/sQMQu7uX6dyokfOayRuuVfKOW4O7HvaBWM+JlQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.10.4.tgz", + "integrity": "sha512-AC2K/t7o07KeTIxMoHneyX90v3zkm5cjHJEokrPEAGEy3UCp8sLKfnfOIGdZ194fyN4wfX/zZUWT9trJZ0qc+Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "extract-zip": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz", - "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", - "dev": true, - "requires": { - "concat-stream": "^1.6.2", - "debug": "^2.6.9", - "mkdirp": "^0.5.4", - "yauzl": "^2.10.0" - } - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-json-parse": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/fast-json-parse/-/fast-json-parse-1.0.3.tgz", - "integrity": "sha512-FRWsaZRWEJ1ESVNbDWmsAlqDk96gPQezzLghafp5J4GUKjbCz3OkAHuZs5TuPEtkbVQERysLp9xv6c24fBm8Aw==", - "dev": true - }, - "fast-json-patch": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-2.2.1.tgz", - "integrity": "sha512-4j5uBaTnsYAV5ebkidvxiLUYOwjQ+JSFljeqfTxCrH9bDmlCQaOJFS84oDJ2rAXZq2yskmk3ORfoP9DCwqFNig==", - "dev": true, - "requires": { - "fast-deep-equal": "^2.0.1" - }, - "dependencies": { - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - } - } - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true - }, - "fast-redact": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-1.5.0.tgz", - "integrity": "sha512-Afo61CgUjkzdvOKDHn08qnZ0kwck38AOGcMlvSGzvJbIab6soAP5rdoQayecGCDsD69AiF9vJBXyq31eoEO2tQ==", - "dev": true - }, - "fast-safe-stringify": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz", - "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==", - "dev": true - }, - "faye-websocket": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", - "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", - "dev": true, - "requires": { - "websocket-driver": ">=0.5.1" - } - }, - "fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", - "dev": true, - "requires": { - "pend": "~1.2.0" - } - }, - "figgy-pudding": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", - "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", - "dev": true - }, - "figures": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "file-entry-cache": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", - "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", - "dev": true, - "requires": { - "flat-cache": "^1.2.1", - "object-assign": "^4.0.1" - } - }, - "file-sync-cmp": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/file-sync-cmp/-/file-sync-cmp-0.1.1.tgz", - "integrity": "sha1-peeo/7+kk7Q7kju9TKiaU7Y7YSs=", - "dev": true - }, - "file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "dev": true - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - } - }, - "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "findup-sync": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz", - "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=", - "dev": true, - "requires": { - "glob": "~5.0.0" - }, - "dependencies": { - "glob": { - "version": "5.0.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", - "dev": true, - "requires": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } - }, - "fined": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz", - "integrity": "sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==", - "dev": true, - "requires": { - "expand-tilde": "^2.0.2", - "is-plain-object": "^2.0.3", - "object.defaults": "^1.1.0", - "object.pick": "^1.2.0", - "parse-filepath": "^1.0.1" - } - }, - "firefox-profile": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/firefox-profile/-/firefox-profile-1.2.0.tgz", - "integrity": "sha512-TTEFfPOkyaz4EWx/5ZDQC1mJAe3a+JgVcchpIfD4Tvx1UspwlTJRJxOYA35x/z2iJcxaF6aW2rdh6oj6qwgd2g==", - "dev": true, - "requires": { - "adm-zip": "~0.4.x", - "archiver": "~2.1.0", - "async": "~2.5.0", - "fs-extra": "~4.0.2", - "ini": "~1.3.3", - "jetpack-id": "1.0.0", - "lazystream": "~1.0.0", - "lodash": "~4.17.2", - "minimist": "^1.1.1", - "uuid": "^3.0.0", - "xml2js": "~0.4.4" - }, - "dependencies": { - "archiver": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/archiver/-/archiver-2.1.1.tgz", - "integrity": "sha1-/2YrSnggFJSj7lRNOjP+dJZQnrw=", - "dev": true, - "requires": { - "archiver-utils": "^1.3.0", - "async": "^2.0.0", - "buffer-crc32": "^0.2.1", - "glob": "^7.0.0", - "lodash": "^4.8.0", - "readable-stream": "^2.0.0", - "tar-stream": "^1.5.0", - "zip-stream": "^1.2.0" - } + "node_modules/@babel/plugin-transform-spread": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.11.0.tgz", + "integrity": "sha512-UwQYGOqIdQJe4aWNyS7noqAnN2VbaczPLiEtln+zPowRNlD+79w3oi2TWfYe0eZgd+gjZCbsydN7lzWysDt+gw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-skip-transparent-expression-wrappers": "^7.11.0" + } }, - "async": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/async/-/async-2.5.0.tgz", - "integrity": "sha512-e+lJAJeNWuPCNyxZKOBdaJGyLGHugXVQtrAwtuAe2vhxTYxFTKE73p8JuTmdH0qdQZtDvI4dhJwjZc5zsfIsYw==", - "dev": true, - "requires": { - "lodash": "^4.14.0" - } - } - } - }, - "first-chunk-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-2.0.0.tgz", - "integrity": "sha1-G97NuOCDwGZLkZRVgVd6Q6nzHXA=", - "dev": true, - "requires": { - "readable-stream": "^2.0.2" - } - }, - "fizzy-ui-utils": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/fizzy-ui-utils/-/fizzy-ui-utils-2.0.7.tgz", - "integrity": "sha512-CZXDVXQ1If3/r8s0T+v+qVeMshhfcuq0rqIFgJnrtd+Bu8GmDmqMjntjUePypVtjHXKJ6V4sw9zeyox34n9aCg==", - "dev": true, - "requires": { - "desandro-matches-selector": "^2.0.0" - } - }, - "flagged-respawn": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz", - "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==", - "dev": true - }, - "flat-cache": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.4.tgz", - "integrity": "sha512-VwyB3Lkgacfik2vhqR4uv2rvebqmDvFu4jlN/C1RzWoJEo8I7z4Q404oiqYCkq41mni8EzQnm95emU9seckwtg==", - "dev": true, - "requires": { - "circular-json": "^0.3.1", - "graceful-fs": "^4.1.2", - "rimraf": "~2.6.2", - "write": "^0.2.1" - }, - "dependencies": { - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "flatstr": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/flatstr/-/flatstr-1.0.12.tgz", - "integrity": "sha512-4zPxDyhCyiN2wIAtSLI6gc82/EjqZc1onI4Mz/l0pWrAlsSfYH/2ZIcU+e3oA2wDwbzIWNKwa23F8rh6+DRWkw==", - "dev": true - }, - "flipclock": { - "version": "0.7.8", - "resolved": "https://registry.npmjs.org/flipclock/-/flipclock-0.7.8.tgz", - "integrity": "sha1-838ffKkETZAsH+4fGuf0vR7vGlQ=", - "dev": true, - "requires": { - "jquery": ">=1.7" - } - }, - "fluent-syntax": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/fluent-syntax/-/fluent-syntax-0.7.0.tgz", - "integrity": "sha512-T0iqfhC40jrs3aDjYOKgzIQjjhsH2Fa6LnXB6naPv0ymW3DeYMUFa89y9aLKMpi1P9nl2vEimK7blx4tVnUWBg==", - "dev": true - }, - "flush-write-stream": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", - "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "readable-stream": "^2.3.6" - } - }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "dev": true - }, - "for-own": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", - "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", - "dev": true, - "requires": { - "for-in": "^1.0.1" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "forwarded": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" - }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "dev": true, - "requires": { - "map-cache": "^0.2.2" - } - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" - }, - "from2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" - } - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "fs-extra": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", - "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs-write-stream-atomic": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fsevents": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.0.1.tgz", - "integrity": "sha512-p+CXqK/iLvDESUWdn3NA3JVO9HxdfI+iXx8xR3DqWgKZvQNiEVpAyUQo0lmwz8rqksb4xaGerG291xuwwhX2kA==", - "dev": true, - "optional": true - }, - "ftp": { - "version": "0.3.10", - "resolved": "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz", - "integrity": "sha1-kZfYYa2BQvPmPVqDv+TFn3MwiF0=", - "dev": true, - "requires": { - "readable-stream": "1.1.x", - "xregexp": "2.0.0" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.10.4.tgz", + "integrity": "sha512-Ddy3QZfIbEV0VYcVtFDCjeE4xwVTJWTmUtorAJkn6u/92Z/nWJNV+mILyqHKrUxXYKA2EoCilgoPePymKL4DvQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-regex": "^7.10.4" + } }, - "readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - } - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true - }, - "fx-runner": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/fx-runner/-/fx-runner-1.0.9.tgz", - "integrity": "sha1-eyPzdz3HaqzELxHZr/J2lnXLY/A=", - "dev": true, - "requires": { - "commander": "2.9.0", - "lodash": "4.17.10", - "shell-quote": "1.6.1", - "spawn-sync": "1.0.15", - "when": "3.7.7", - "which": "1.2.4", - "winreg": "0.0.12" - }, - "dependencies": { - "commander": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", - "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=", - "dev": true, - "requires": { - "graceful-readlink": ">= 1.0.0" - } + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.10.5.tgz", + "integrity": "sha512-V/lnPGIb+KT12OQikDvgSuesRX14ck5FfJXt6+tXhdkJ+Vsd0lDCVtF6jcB4rNClYFzaB2jusZ+lNISDk2mMMw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "is-absolute": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-0.1.7.tgz", - "integrity": "sha1-hHSREZ/MtftDYhfMc39/qtUPYD8=", - "dev": true, - "requires": { - "is-relative": "^0.1.0" - } + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.10.4.tgz", + "integrity": "sha512-QqNgYwuuW0y0H+kUE/GWSR45t/ccRhe14Fs/4ZRouNNQsyd4o3PG4OtHiIrepbM2WKUBDAXKCAK/Lk4VhzTaGA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "is-relative": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-0.1.3.tgz", - "integrity": "sha1-kF/uiuhvRbPsYUvDwVyGnfCHboI=", - "dev": true + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.10.4.tgz", + "integrity": "sha512-y5XJ9waMti2J+e7ij20e+aH+fho7Wb7W8rNuu72aKRwCHFqQdhkdU2lo3uZ9tQuboEJcUFayXdARhcxLQ3+6Fg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "isexe": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-1.1.2.tgz", - "integrity": "sha1-NvPiLmB1CSD15yQaR2qMakInWtA=", - "dev": true + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.10.4.tgz", + "integrity": "sha512-wNfsc4s8N2qnIwpO/WP2ZiSyjfpTamT2C9V9FDH/Ljub9zw6P3SjkXcFmc0RQUt96k2fmIvtla2MMjgTwIAC+A==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" + } }, - "lodash": { - "version": "4.17.10", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", - "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", - "dev": true + "node_modules/@babel/polyfill": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.10.4.tgz", + "integrity": "sha512-8BYcnVqQ5kMD2HXoHInBH7H1b/uP3KdnwCYXOqFnXqguOyuu443WXusbIUbWEfY3Z0Txk0M1uG/8YuAMhNl6zg==", + "dev": true, + "dependencies": { + "core-js": "^2.6.5", + "regenerator-runtime": "^0.13.4" + } }, - "which": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/which/-/which-1.2.4.tgz", - "integrity": "sha1-FVf5YIBgTlsRs1meufRbUKnv1yI=", - "dev": true, - "requires": { - "is-absolute": "^0.1.7", - "isexe": "^1.1.1" - } - } - } - }, - "gaze": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", - "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", - "dev": true, - "requires": { - "globule": "^1.0.0" - } - }, - "generate-function": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz", - "integrity": "sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==", - "dev": true, - "requires": { - "is-property": "^1.0.2" - } - }, - "generate-object-property": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", - "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=", - "dev": true, - "requires": { - "is-property": "^1.0.0" - } - }, - "gensync": { - "version": "1.0.0-beta.1", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", - "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==", - "dev": true - }, - "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", - "dev": true - }, - "get-func-name": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", - "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=", - "dev": true - }, - "get-size": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/get-size/-/get-size-2.0.3.tgz", - "integrity": "sha512-lXNzT/h/dTjTxRbm9BXb+SGxxzkm97h/PCIKtlN/CBCxxmkkIVV21udumMS93MuVTDX583gqc94v3RjuHmI+2Q==", - "dev": true - }, - "get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "dev": true - }, - "get-uri": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.4.tgz", - "integrity": "sha512-v7LT/s8kVjs+Tx0ykk1I+H/rbpzkHvuIq87LmeXptcf5sNWm9uQiwjNAt94SJPA1zOlCntmnOlJvVWKmzsxG8Q==", - "dev": true, - "requires": { - "data-uri-to-buffer": "1", - "debug": "2", - "extend": "~3.0.2", - "file-uri-to-path": "1", - "ftp": "~0.3.10", - "readable-stream": "2" - } - }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "dev": true - }, - "getobject": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/getobject/-/getobject-0.1.0.tgz", - "integrity": "sha1-BHpEl4n6Fg0Bj1SG7ZEyC27HiFw=", - "dev": true - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "gettext-parser": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/gettext-parser/-/gettext-parser-1.1.0.tgz", - "integrity": "sha1-LFpmONiTk0ubVQN9CtgstwBLJnk=", - "dev": true, - "requires": { - "encoding": "^0.1.11" - } - }, - "git-rev-sync": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/git-rev-sync/-/git-rev-sync-1.9.1.tgz", - "integrity": "sha1-oMLj3TkqvPa3aWLif8dfsyI0Sc4=", - "dev": true, - "requires": { - "escape-string-regexp": "1.0.5", - "graceful-fs": "4.1.11", - "shelljs": "0.7.7" - }, - "dependencies": { - "graceful-fs": { - "version": "4.1.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", - "dev": true + "node_modules/@babel/preset-env": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.11.0.tgz", + "integrity": "sha512-2u1/k7rG/gTh02dylX2kL3S0IJNF+J6bfDSp4DI2Ma8QN6Y9x9pmAax59fsCk6QUQG0yqH47yJWA+u1I1LccAg==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.11.0", + "@babel/helper-compilation-targets": "^7.10.4", + "@babel/helper-module-imports": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-proposal-async-generator-functions": "^7.10.4", + "@babel/plugin-proposal-class-properties": "^7.10.4", + "@babel/plugin-proposal-dynamic-import": "^7.10.4", + "@babel/plugin-proposal-export-namespace-from": "^7.10.4", + "@babel/plugin-proposal-json-strings": "^7.10.4", + "@babel/plugin-proposal-logical-assignment-operators": "^7.11.0", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.10.4", + "@babel/plugin-proposal-numeric-separator": "^7.10.4", + "@babel/plugin-proposal-object-rest-spread": "^7.11.0", + "@babel/plugin-proposal-optional-catch-binding": "^7.10.4", + "@babel/plugin-proposal-optional-chaining": "^7.11.0", + "@babel/plugin-proposal-private-methods": "^7.10.4", + "@babel/plugin-proposal-unicode-property-regex": "^7.10.4", + "@babel/plugin-syntax-async-generators": "^7.8.0", + "@babel/plugin-syntax-class-properties": "^7.10.4", + "@babel/plugin-syntax-dynamic-import": "^7.8.0", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.0", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.0", + "@babel/plugin-syntax-top-level-await": "^7.10.4", + "@babel/plugin-transform-arrow-functions": "^7.10.4", + "@babel/plugin-transform-async-to-generator": "^7.10.4", + "@babel/plugin-transform-block-scoped-functions": "^7.10.4", + "@babel/plugin-transform-block-scoping": "^7.10.4", + "@babel/plugin-transform-classes": "^7.10.4", + "@babel/plugin-transform-computed-properties": "^7.10.4", + "@babel/plugin-transform-destructuring": "^7.10.4", + "@babel/plugin-transform-dotall-regex": "^7.10.4", + "@babel/plugin-transform-duplicate-keys": "^7.10.4", + "@babel/plugin-transform-exponentiation-operator": "^7.10.4", + "@babel/plugin-transform-for-of": "^7.10.4", + "@babel/plugin-transform-function-name": "^7.10.4", + "@babel/plugin-transform-literals": "^7.10.4", + "@babel/plugin-transform-member-expression-literals": "^7.10.4", + "@babel/plugin-transform-modules-amd": "^7.10.4", + "@babel/plugin-transform-modules-commonjs": "^7.10.4", + "@babel/plugin-transform-modules-systemjs": "^7.10.4", + "@babel/plugin-transform-modules-umd": "^7.10.4", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.10.4", + "@babel/plugin-transform-new-target": "^7.10.4", + "@babel/plugin-transform-object-super": "^7.10.4", + "@babel/plugin-transform-parameters": "^7.10.4", + "@babel/plugin-transform-property-literals": "^7.10.4", + "@babel/plugin-transform-regenerator": "^7.10.4", + "@babel/plugin-transform-reserved-words": "^7.10.4", + "@babel/plugin-transform-shorthand-properties": "^7.10.4", + "@babel/plugin-transform-spread": "^7.11.0", + "@babel/plugin-transform-sticky-regex": "^7.10.4", + "@babel/plugin-transform-template-literals": "^7.10.4", + "@babel/plugin-transform-typeof-symbol": "^7.10.4", + "@babel/plugin-transform-unicode-escapes": "^7.10.4", + "@babel/plugin-transform-unicode-regex": "^7.10.4", + "@babel/preset-modules": "^0.1.3", + "@babel/types": "^7.11.0", + "browserslist": "^4.12.0", + "core-js-compat": "^3.6.2", + "invariant": "^2.2.2", + "levenary": "^1.1.1", + "semver": "^5.5.0" + } }, - "shelljs": { - "version": "0.7.7", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.7.tgz", - "integrity": "sha1-svXHfvlxSPS09uImguELuoZnz/E=", - "dev": true, - "requires": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" - } - } - } - }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - } - }, - "global": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", - "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", - "dev": true, - "requires": { - "min-document": "^2.19.0", - "process": "^0.11.10" - } - }, - "global-dirs": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", - "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", - "dev": true, - "requires": { - "ini": "^1.3.4" - } - }, - "global-modules": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", - "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", - "dev": true, - "requires": { - "global-prefix": "^1.0.1", - "is-windows": "^1.0.1", - "resolve-dir": "^1.0.0" - } - }, - "global-prefix": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", - "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", - "dev": true, - "requires": { - "expand-tilde": "^2.0.2", - "homedir-polyfill": "^1.0.1", - "ini": "^1.3.4", - "is-windows": "^1.0.1", - "which": "^1.2.14" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "globule": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.2.tgz", - "integrity": "sha512-7IDTQTIu2xzXkT+6mlluidnWo+BypnbSoEVVQCGfzqnl5Ik8d3e1d4wycb8Rj9tWW+Z39uPWsdlquqiqPCd/pA==", - "dev": true, - "requires": { - "glob": "~7.1.1", - "lodash": "~4.17.10", - "minimatch": "~3.0.2" - } - }, - "got": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", - "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", - "dev": true, - "requires": { - "create-error-class": "^3.0.0", - "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "is-redirect": "^1.0.0", - "is-retry-allowed": "^1.0.0", - "is-stream": "^1.0.0", - "lowercase-keys": "^1.0.0", - "safe-buffer": "^5.0.1", - "timed-out": "^4.0.0", - "unzip-response": "^2.0.1", - "url-parse-lax": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", - "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", - "dev": true - }, - "graceful-readlink": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", - "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=", - "dev": true - }, - "graphlib": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.8.tgz", - "integrity": "sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==", - "dev": true, - "requires": { - "lodash": "^4.17.15" - } - }, - "growl": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", - "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", - "dev": true - }, - "growly": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", - "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", - "dev": true - }, - "grunt": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.2.1.tgz", - "integrity": "sha512-zgJjn9N56tScvRt/y0+1QA+zDBnKTrkpyeSBqQPLcZvbqTD/oyGMrdZQXmm6I3828s+FmPvxc3Xv+lgKFtudOw==", - "dev": true, - "requires": { - "dateformat": "~3.0.3", - "eventemitter2": "~0.4.13", - "exit": "~0.1.2", - "findup-sync": "~0.3.0", - "glob": "~7.1.6", - "grunt-cli": "~1.3.2", - "grunt-known-options": "~1.1.0", - "grunt-legacy-log": "~2.0.0", - "grunt-legacy-util": "~1.1.1", - "iconv-lite": "~0.4.13", - "js-yaml": "~3.14.0", - "minimatch": "~3.0.4", - "mkdirp": "~1.0.4", - "nopt": "~3.0.6", - "rimraf": "~3.0.2" - }, - "dependencies": { - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - } - } - }, - "grunt-cli": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.3.2.tgz", - "integrity": "sha512-8OHDiZZkcptxVXtMfDxJvmN7MVJNE8L/yIcPb4HB7TlyFD1kDvjHrb62uhySsU14wJx9ORMnTuhRMQ40lH/orQ==", - "dev": true, - "requires": { - "grunt-known-options": "~1.1.0", - "interpret": "~1.1.0", - "liftoff": "~2.5.0", - "nopt": "~4.0.1", - "v8flags": "~3.1.1" - }, - "dependencies": { - "nopt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz", - "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==", - "dev": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - } - } - }, - "grunt-contrib-clean": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/grunt-contrib-clean/-/grunt-contrib-clean-1.1.0.tgz", - "integrity": "sha1-Vkq/LQN4qYOhW54/MO51tzjEBjg=", - "dev": true, - "requires": { - "async": "^1.5.2", - "rimraf": "^2.5.1" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "grunt-contrib-connect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/grunt-contrib-connect/-/grunt-contrib-connect-1.0.2.tgz", - "integrity": "sha1-XPkzuRpnOGBEJzwLJERgPNmIebo=", - "dev": true, - "requires": { - "async": "^1.5.2", - "connect": "^3.4.0", - "connect-livereload": "^0.5.0", - "http2": "^3.3.4", - "morgan": "^1.6.1", - "opn": "^4.0.0", - "portscanner": "^1.0.0", - "serve-index": "^1.7.1", - "serve-static": "^1.10.0" - } - }, - "grunt-contrib-copy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/grunt-contrib-copy/-/grunt-contrib-copy-1.0.0.tgz", - "integrity": "sha1-cGDGWB6QS4qw0A8HbgqPbj58NXM=", - "dev": true, - "requires": { - "chalk": "^1.1.1", - "file-sync-cmp": "^0.1.0" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true + "node_modules/@babel/preset-modules": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.3.tgz", + "integrity": "sha512-Ra3JXOHBq2xd56xSF7lMKXdjBn3T772Y1Wet3yWnkDly9zHvJki029tAFzvAAK5cf4YV3yoxuP61crYRol6SVg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + } }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } + "node_modules/@babel/register": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.0.0.tgz", + "integrity": "sha512-f/+CRmaCe7rVEvcvPvxeA8j5aJhHC3aJie7YuqcMDhUOuyWLA7J/aNrTaHIzoWPEhpHA54mec4Mm8fv8KBlv3g==", + "dev": true, + "dependencies": { + "core-js": "^2.5.7", + "find-cache-dir": "^1.0.0", + "home-or-tmp": "^3.0.0", + "lodash": "^4.17.10", + "mkdirp": "^0.5.1", + "pirates": "^4.0.0", + "source-map-support": "^0.5.9" + } }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "grunt-contrib-pug": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/grunt-contrib-pug/-/grunt-contrib-pug-1.0.0.tgz", - "integrity": "sha1-tSWlwK/wRiL3Vw4x+SQQbxb4G0Y=", - "dev": true, - "requires": { - "chalk": "^1.0.0", - "pug": "^2.0.0-alpha3" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true + "node_modules/@babel/register/node_modules/find-cache-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", + "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "dev": true, + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^2.0.0" + } }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } + "node_modules/@babel/register/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "dependencies": { + "locate-path": "^2.0.0" + } }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "grunt-contrib-stylus": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/grunt-contrib-stylus/-/grunt-contrib-stylus-1.2.0.tgz", - "integrity": "sha1-R9RG7wVESW7/naQY0A9XdFQ0crs=", - "dev": true, - "requires": { - "async": "^1.5.2", - "chalk": "^1.0.0", - "lodash": "^4.0.0", - "nib": "^1.1.0", - "stylus": "^0.54.0" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true + "node_modules/@babel/register/node_modules/home-or-tmp": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-3.0.0.tgz", + "integrity": "sha1-V6j+JM8zzdUkhgoVgh3cJchmcfs=", + "dev": true }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } + "node_modules/@babel/register/node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "grunt-contrib-watch": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/grunt-contrib-watch/-/grunt-contrib-watch-1.1.0.tgz", - "integrity": "sha512-yGweN+0DW5yM+oo58fRu/XIRrPcn3r4tQx+nL7eMRwjpvk+rQY6R8o94BPK0i2UhTg9FN21hS+m8vR8v9vXfeg==", - "dev": true, - "requires": { - "async": "^2.6.0", - "gaze": "^1.1.0", - "lodash": "^4.17.10", - "tiny-lr": "^1.1.1" - }, - "dependencies": { - "async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", - "dev": true, - "requires": { - "lodash": "^4.17.14" - } - } - } - }, - "grunt-crx": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/grunt-crx/-/grunt-crx-1.0.5.tgz", - "integrity": "sha1-nU5QHO8WtyF3KmBBxNQdH5KFirU=", - "dev": true, - "requires": { - "crx": "^3.0.1", - "es6-promise": "^3.0.0", - "mkdirp": "^0.5.0", - "os-homedir": "^1.0.1", - "xtend": "^4.0.1" - } - }, - "grunt-exec": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/grunt-exec/-/grunt-exec-3.0.0.tgz", - "integrity": "sha512-cgAlreXf3muSYS5LzW0Cc4xHK03BjFOYk0MqCQ/MZ3k1Xz2GU7D+IAJg4UKicxpO+XdONJdx/NJ6kpy2wI+uHg==", - "dev": true - }, - "grunt-known-options": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.1.tgz", - "integrity": "sha512-cHwsLqoighpu7TuYj5RonnEuxGVFnztcUqTqp5rXFGYL4OuPFofwC4Ycg7n9fYwvK6F5WbYgeVOwph9Crs2fsQ==", - "dev": true - }, - "grunt-legacy-log": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-2.0.0.tgz", - "integrity": "sha512-1m3+5QvDYfR1ltr8hjiaiNjddxGdQWcH0rw1iKKiQnF0+xtgTazirSTGu68RchPyh1OBng1bBUjLmX8q9NpoCw==", - "dev": true, - "requires": { - "colors": "~1.1.2", - "grunt-legacy-log-utils": "~2.0.0", - "hooker": "~0.2.3", - "lodash": "~4.17.5" - } - }, - "grunt-legacy-log-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.0.1.tgz", - "integrity": "sha512-o7uHyO/J+i2tXG8r2bZNlVk20vlIFJ9IEYyHMCQGfWYru8Jv3wTqKZzvV30YW9rWEjq0eP3cflQ1qWojIe9VFA==", - "dev": true, - "requires": { - "chalk": "~2.4.1", - "lodash": "~4.17.10" - } - }, - "grunt-legacy-util": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-1.1.1.tgz", - "integrity": "sha512-9zyA29w/fBe6BIfjGENndwoe1Uy31BIXxTH3s8mga0Z5Bz2Sp4UCjkeyv2tI449ymkx3x26B+46FV4fXEddl5A==", - "dev": true, - "requires": { - "async": "~1.5.2", - "exit": "~0.1.1", - "getobject": "~0.1.0", - "hooker": "~0.2.3", - "lodash": "~4.17.10", - "underscore.string": "~3.3.4", - "which": "~1.3.0" - } - }, - "grunt-mocha-test": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/grunt-mocha-test/-/grunt-mocha-test-0.13.3.tgz", - "integrity": "sha512-zQGEsi3d+ViPPi7/4jcj78afKKAKiAA5n61pknQYi25Ugik+aNOuRmiOkmb8mN2CeG8YxT+YdT1H1Q7B/eNkoQ==", - "dev": true, - "requires": { - "hooker": "^0.2.3", - "mkdirp": "^0.5.0" - } - }, - "grunt-webpack": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/grunt-webpack/-/grunt-webpack-3.1.3.tgz", - "integrity": "sha512-SaZ8K8lG4iTxs7ClZxOWCf3kxqS2y+Eel8SbaEGgBKwhAp6e45beIu+vhBZRLX3vonKML2kjemKsQ21REaqNFQ==", - "dev": true, - "requires": { - "deep-for-each": "^2.0.2", - "lodash": "^4.7.0" - } - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-color": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", - "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", - "dev": true - }, - "has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "dev": true, - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "hasbin": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/hasbin/-/hasbin-1.2.3.tgz", - "integrity": "sha1-eMWSaJPIAhXCtWiuH9P8q3omlrA=", - "dev": true, - "requires": { - "async": "~1.5" - } - }, - "hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", - "dev": true, - "requires": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - }, - "dependencies": { - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true + "node_modules/@babel/register/node_modules/make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "dependencies": { + "pify": "^3.0.0" + } }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } + "node_modules/@babel/register/node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "dependencies": { + "p-try": "^1.0.0" + } }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true + "node_modules/@babel/register/node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "dependencies": { + "p-limit": "^1.1.0" + } }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - } - } - }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "he": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", - "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", - "dev": true - }, - "highlight.js": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.4.1.tgz", - "integrity": "sha512-yR5lWvNz7c85OhVAEAeFhVCc/GV4C30Fjzc/rCP0aCWzc1UUOPUk55dK/qdwTZHBvMZo+eZ2jpk62ndX/xMFlg==", - "dev": true - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "dev": true, - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "home-or-tmp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", - "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", - "dev": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.1" - } - }, - "homedir-polyfill": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", - "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", - "dev": true, - "requires": { - "parse-passwd": "^1.0.0" - } - }, - "hooker": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz", - "integrity": "sha1-uDT3I8xKJCqmWWNFnfbZhMXT2Vk=", - "dev": true - }, - "hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", - "dev": true - }, - "htmlparser2": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", - "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", - "dev": true, - "requires": { - "domelementtype": "^1.3.1", - "domhandler": "^2.3.0", - "domutils": "^1.5.1", - "entities": "^1.1.1", - "inherits": "^2.0.1", - "readable-stream": "^3.1.1" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } + "node_modules/@babel/register/node_modules/p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true + "node_modules/@babel/register/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - } - } - }, - "http-errors": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", - "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - } - }, - "http-parser-js": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.2.tgz", - "integrity": "sha512-opCO9ASqg5Wy2FNo7A0sxy71yGbbkJJXLdgMK04Tcypw9jr2MgWbyubb0+WdmDmGnFflO7fRbqbaihh/ENDlRQ==", - "dev": true - }, - "http-proxy-agent": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", - "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", - "dev": true, - "requires": { - "agent-base": "4", - "debug": "3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "http2": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/http2/-/http2-3.3.7.tgz", - "integrity": "sha512-puSi8M8WNlFJm9Pk4c/Mbz9Gwparuj3gO9/RRO5zv6piQ0FY+9Qywp0PdWshYgsMJSalixFY7eC6oPu0zRxLAQ==", - "dev": true - }, - "https-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", - "dev": true - }, - "https-proxy-agent": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", - "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==", - "dev": true, - "requires": { - "agent-base": "^4.3.0", - "debug": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "node_modules/@babel/register/node_modules/pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "dependencies": { + "find-up": "^2.1.0" + } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ieee754": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", - "dev": true - }, - "iferr": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", - "dev": true - }, - "ignore": { - "version": "3.3.10", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", - "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", - "dev": true - }, - "immediate": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=", - "dev": true - }, - "import-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", - "dev": true - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "ini": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.7.tgz", - "integrity": "sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ==", - "dev": true - }, - "inject-loader": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/inject-loader/-/inject-loader-3.0.1.tgz", - "integrity": "sha512-0Kd4NqMJUhknG4ECiJ/mgyHJBpfBBWZ3IKHl2BLNQiFtMO7/xiv9mmHl7mGvE0iKrBeQAZdMcQP3sMXZN0cqeg==", - "dev": true, - "requires": { - "babel-core": "~6" - } - }, - "inquirer": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-5.2.0.tgz", - "integrity": "sha512-E9BmnJbAKLPGonz0HeWHtbKf+EeSP93paWO3ZYoUpq/aowXvYGjjCSuashhXPpzbArIjBbji39THkxTz9ZeEUQ==", - "dev": true, - "requires": { - "ansi-escapes": "^3.0.0", - "chalk": "^2.0.0", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^2.1.0", - "figures": "^2.0.0", - "lodash": "^4.3.0", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rxjs": "^5.5.2", - "string-width": "^2.1.0", - "strip-ansi": "^4.0.0", - "through": "^2.3.6" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true + "node_modules/@babel/runtime": { + "version": "7.11.2", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.11.2.tgz", + "integrity": "sha512-TeWkU52so0mPtDcaCTxNBI/IHiz0pZgr8VEFqXFtZWpYD08ZB6FaSwVAS8MKRQAP3bYKiVjwysOJgMFY28o6Tw==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.13.4" + } }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "interpret": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", - "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=", - "dev": true - }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, - "requires": { - "loose-envify": "^1.0.0" - } - }, - "invert-kv": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", - "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", - "dev": true - }, - "ip": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", - "dev": true - }, - "ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" - }, - "is-absolute": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", - "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==", - "dev": true, - "requires": { - "is-relative": "^1.0.0", - "is-windows": "^1.0.1" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-arguments": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", - "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==", - "dev": true - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true - }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "dev": true - }, - "is-callable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", - "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==", - "dev": true - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-date-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", - "dev": true - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - } - } - }, - "is-expression": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-3.0.0.tgz", - "integrity": "sha1-Oayqa+f9HzRx3ELHQW5hwkMXrJ8=", - "dev": true, - "requires": { - "acorn": "~4.0.2", - "object-assign": "^4.0.1" - }, - "dependencies": { - "acorn": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", - "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", - "dev": true - } - } - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "dev": true - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true - }, - "is-finite": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", - "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - }, - "is-installed-globally": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", - "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", - "dev": true, - "requires": { - "global-dirs": "^0.1.0", - "is-path-inside": "^1.0.0" - } - }, - "is-mergeable-object": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-mergeable-object/-/is-mergeable-object-1.1.0.tgz", - "integrity": "sha512-JfyDDwUdtS4yHCgUpxOyKB9dnfZ0gecufxB0eytX6BmSXSE+8dbxDGt+V7CNRIRJ9sYFV/WQt2KJG6hNob2sBw==", - "dev": true - }, - "is-my-ip-valid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz", - "integrity": "sha512-gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==", - "dev": true - }, - "is-my-json-valid": { - "version": "2.20.5", - "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.20.5.tgz", - "integrity": "sha512-VTPuvvGQtxvCeghwspQu1rBgjYUT6FGxPlvFKbYuFtgc4ADsX3U5ihZOYN0qyU6u+d4X9xXb0IT5O6QpXKt87A==", - "dev": true, - "requires": { - "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" - } - }, - "is-npm": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", - "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", - "dev": true - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", - "dev": true - }, - "is-path-inside": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", - "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", - "dev": true, - "requires": { - "path-is-inside": "^1.0.1" - } - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "is-promise": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", - "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", - "dev": true - }, - "is-property": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", - "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=", - "dev": true - }, - "is-redirect": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", - "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", - "dev": true - }, - "is-regex": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz", - "integrity": "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==", - "dev": true, - "requires": { - "has-symbols": "^1.0.1" - } - }, - "is-relative": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", - "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", - "dev": true, - "requires": { - "is-unc-path": "^1.0.0" - } - }, - "is-resolvable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", - "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", - "dev": true - }, - "is-retry-allowed": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", - "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==", - "dev": true - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true - }, - "is-symbol": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", - "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", - "dev": true, - "requires": { - "has-symbols": "^1.0.1" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "is-unc-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", - "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", - "dev": true, - "requires": { - "unc-path-regex": "^0.1.2" - } - }, - "is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", - "dev": true - }, - "is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true - }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - }, - "isotope-layout": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/isotope-layout/-/isotope-layout-3.0.6.tgz", - "integrity": "sha512-z2ZKablhocXhoNyWwzJPFd7u7FWbYbVJA51Nvsqsod8jH2ExGc1SwDsSWKE54e3PhXzqf2yZPhFSq/c2MR1arw==", - "dev": true, - "requires": { - "desandro-matches-selector": "^2.0.0", - "fizzy-ui-utils": "^2.0.4", - "get-size": "^2.0.0", - "masonry-layout": "^4.1.0", - "outlayer": "^2.1.0" - } - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "jed": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/jed/-/jed-1.1.1.tgz", - "integrity": "sha1-elSbvZ/+FYWwzQoZHiAwVb7ldLQ=", - "dev": true - }, - "jetpack-id": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/jetpack-id/-/jetpack-id-1.0.0.tgz", - "integrity": "sha1-LPn7rkbYB0/Ba33gBxyO/rykc6Y=", - "dev": true - }, - "jquery": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.5.1.tgz", - "integrity": "sha512-XwIBPqcMn57FxfT+Go5pzySnm4KWkT1Tv7gjrpT1srtf8Weynl6R273VJ5GjkRb51IzMp5nbaPjJXMWeju2MKg==", - "dev": true - }, - "js-select": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/js-select/-/js-select-0.6.0.tgz", - "integrity": "sha1-woTiKCTVknrsli3N8kcXSu+w0ZA=", - "dev": true, - "requires": { - "JSONSelect": "0.2.1", - "traverse": "0.4.x" - } - }, - "js-stringify": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", - "integrity": "sha1-Fzb939lyTyijaCrcYjCufk6Weds=", - "dev": true - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "js-yaml": { - "version": "3.14.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", - "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "json-merge-patch": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-merge-patch/-/json-merge-patch-0.2.3.tgz", - "integrity": "sha1-+ixrWvh9p3uuKWalidUuI+2B/kA=", - "dev": true, - "requires": { - "deep-equal": "^1.0.0" - } - }, - "json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true - }, - "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "dev": true, - "requires": { - "jsonify": "~0.0.0" - } - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, - "json5": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", - "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true - }, - "jsonpointer": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.1.0.tgz", - "integrity": "sha512-CXcRvMyTlnR53xMcKnuMzfCA5i/nfblTnnr74CZb6C4vG39eu6w51t7nKmU5MfLfbTgGItliNyjO/ciNPDqClg==", - "dev": true - }, - "jsonpointer.js": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/jsonpointer.js/-/jsonpointer.js-0.4.0.tgz", - "integrity": "sha1-ACyxI/dnqv3rAZYTLOXE+ZQcyro=", - "dev": true - }, - "jsonwebtoken": { - "version": "8.2.1", - "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.2.1.tgz", - "integrity": "sha512-l8rUBr0fqYYwPc8/ZGrue7GiW7vWdZtZqelxo4Sd5lMvuEeCK8/wS54sEo6tJhdZ6hqfutsj6COgC0d1XdbHGw==", - "dev": true, - "requires": { - "jws": "^3.1.4", - "lodash.includes": "^4.3.0", - "lodash.isboolean": "^3.0.3", - "lodash.isinteger": "^4.0.4", - "lodash.isnumber": "^3.0.3", - "lodash.isplainobject": "^4.0.6", - "lodash.isstring": "^4.0.1", - "lodash.once": "^4.0.0", - "ms": "^2.1.1", - "xtend": "^4.0.1" - }, - "dependencies": { - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } - }, - "jstransformer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", - "integrity": "sha1-7Yvwkh4vPx7U1cGkT2hwntJHIsM=", - "dev": true, - "requires": { - "is-promise": "^2.0.0", - "promise": "^7.0.1" - } - }, - "jstransformer-markdown-it": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/jstransformer-markdown-it/-/jstransformer-markdown-it-2.1.0.tgz", - "integrity": "sha1-aewwzkUYvtWZezjwJ2SOjChekvc=", - "dev": true, - "requires": { - "markdown-it": "^8.0.0" - } - }, - "jszip": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.5.0.tgz", - "integrity": "sha512-WRtu7TPCmYePR1nazfrtuF216cIVon/3GWOvHS9QR5bIwSbnxtdpma6un3jyGGNhHsKCSzn5Ypk+EkDRvTGiFA==", - "dev": true, - "requires": { - "lie": "~3.3.0", - "pako": "~1.0.2", - "readable-stream": "~2.3.6", - "set-immediate-shim": "~1.0.1" - } - }, - "just-extend": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.1.0.tgz", - "integrity": "sha512-ApcjaOdVTJ7y4r08xI5wIqpvwS48Q0PBG4DJROcEkH1f8MdAiNFyFxz3xoL0LWAVwjrwPYZdVHHxhRHcx/uGLA==", - "dev": true - }, - "jwa": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", - "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", - "dev": true, - "requires": { - "buffer-equal-constant-time": "1.0.1", - "ecdsa-sig-formatter": "1.0.11", - "safe-buffer": "^5.0.1" - } - }, - "jws": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", - "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", - "dev": true, - "requires": { - "jwa": "^1.4.1", - "safe-buffer": "^5.0.1" - } - }, - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true - }, - "latest-version": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", - "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", - "dev": true, - "requires": { - "package-json": "^4.0.0" - } - }, - "lazy-cache": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", - "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", - "dev": true - }, - "lazystream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", - "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", - "dev": true, - "requires": { - "readable-stream": "^2.0.5" - } - }, - "lcid": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", - "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", - "dev": true, - "requires": { - "invert-kv": "^2.0.0" - } - }, - "leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true - }, - "levenary": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/levenary/-/levenary-1.1.1.tgz", - "integrity": "sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ==", - "dev": true, - "requires": { - "leven": "^3.1.0" - } - }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - } - }, - "lie": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", - "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", - "dev": true, - "requires": { - "immediate": "~3.0.5" - } - }, - "liftoff": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.5.0.tgz", - "integrity": "sha1-IAkpG7Mc6oYbvxCnwVooyvdcMew=", - "dev": true, - "requires": { - "extend": "^3.0.0", - "findup-sync": "^2.0.0", - "fined": "^1.0.1", - "flagged-respawn": "^1.0.0", - "is-plain-object": "^2.0.4", - "object.map": "^1.0.0", - "rechoir": "^0.6.2", - "resolve": "^1.1.7" - }, - "dependencies": { - "findup-sync": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", - "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", - "dev": true, - "requires": { - "detect-file": "^1.0.0", - "is-glob": "^3.1.0", - "micromatch": "^3.0.4", - "resolve-dir": "^1.0.1" - } - } - } - }, - "linkify-it": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", - "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==", - "dev": true, - "requires": { - "uc.micro": "^1.0.1" - } - }, - "livereload-js": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/livereload-js/-/livereload-js-2.4.0.tgz", - "integrity": "sha512-XPQH8Z2GDP/Hwz2PCDrh2mth4yFejwA1OZ/81Ti3LgKyhDcEjsSsqFWZojHG0va/duGd+WyosY7eXLDoOyqcPw==", - "dev": true + "node_modules/@babel/template": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz", + "integrity": "sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/parser": "^7.10.4", + "@babel/types": "^7.10.4" + } + }, + "node_modules/@babel/traverse": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.11.0.tgz", + "integrity": "sha512-ZB2V+LskoWKNpMq6E5UUCrjtDUh5IOTAyIl0dTjIEoXum/iKWkoIEKIRDnUucO6f+2FzNkE0oD4RLKoPIufDtg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.11.0", + "@babel/helper-function-name": "^7.10.4", + "@babel/helper-split-export-declaration": "^7.11.0", + "@babel/parser": "^7.11.0", + "@babel/types": "^7.11.0", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.19" + } + }, + "node_modules/@babel/traverse/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/@babel/traverse/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/@babel/types": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", + "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.10.4", + "lodash": "^4.17.19", + "to-fast-properties": "^2.0.0" + } + }, + "node_modules/@cliqz-oss/firefox-client": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@cliqz-oss/firefox-client/-/firefox-client-0.3.1.tgz", + "integrity": "sha512-RO+Tops/wGnBzWoZYkCraqyh2JqOejqJq5/a4b54HhmjTNSKdUPwAOK17EGg/zPb0nWqkuB7QyZsI9bo+ev8Kw==", + "dev": true, + "dependencies": { + "colors": "0.5.x", + "js-select": "~0.6.0" + } + }, + "node_modules/@cliqz-oss/firefox-client/node_modules/colors": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/colors/-/colors-0.5.1.tgz", + "integrity": "sha1-fQAj6usVTo7p/Oddy5I9DtFmd3Q=", + "dev": true + }, + "node_modules/@cliqz-oss/node-firefox-connect": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@cliqz-oss/node-firefox-connect/-/node-firefox-connect-1.2.1.tgz", + "integrity": "sha512-O/IyiB5pfztCdmxQZg0/xeq5w+YiP3gtJz8d4We2EpLPKzbDVjOrtfLKYgVfm6Ya6mbvDge1uLkSRwaoVCWKnA==", + "dev": true, + "dependencies": { + "@cliqz-oss/firefox-client": "0.3.1", + "es6-promise": "^2.0.1" + } + }, + "node_modules/@cliqz-oss/node-firefox-connect/node_modules/es6-promise": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-2.3.0.tgz", + "integrity": "sha1-lu258v2wGZWCKyY92KratnSBgbw=", + "dev": true + }, + "node_modules/@octokit/auth-token": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.4.4.tgz", + "integrity": "sha512-LNfGu3Ro9uFAYh10MUZVaT7X2CnNm2C8IDQmabx+3DygYIQjs9FwzFAHN/0t6mu5HEPhxcb1XOuxdpY82vCg2Q==", + "dependencies": { + "@octokit/types": "^6.0.0" + } + }, + "node_modules/@octokit/core": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@octokit/core/-/core-3.2.4.tgz", + "integrity": "sha512-d9dTsqdePBqOn7aGkyRFe7pQpCXdibSJ5SFnrTr0axevObZrpz3qkWm7t/NjYv5a66z6vhfteriaq4FRz3e0Qg==", + "dependencies": { + "@octokit/auth-token": "^2.4.4", + "@octokit/graphql": "^4.5.8", + "@octokit/request": "^5.4.12", + "@octokit/types": "^6.0.3", + "before-after-hook": "^2.1.0", + "universal-user-agent": "^6.0.0" + } + }, + "node_modules/@octokit/endpoint": { + "version": "6.0.10", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.10.tgz", + "integrity": "sha512-9+Xef8nT7OKZglfkOMm7IL6VwxXUQyR7DUSU0LH/F7VNqs8vyd7es5pTfz9E7DwUIx7R3pGscxu1EBhYljyu7Q==", + "dependencies": { + "@octokit/types": "^6.0.0", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" + } + }, + "node_modules/@octokit/endpoint/node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@octokit/graphql": { + "version": "4.5.8", + "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.5.8.tgz", + "integrity": "sha512-WnCtNXWOrupfPJgXe+vSmprZJUr0VIu14G58PMlkWGj3cH+KLZEfKMmbUQ6C3Wwx6fdhzVW1CD5RTnBdUHxhhA==", + "dependencies": { + "@octokit/request": "^5.3.0", + "@octokit/types": "^6.0.0", + "universal-user-agent": "^6.0.0" + } + }, + "node_modules/@octokit/openapi-types": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-2.0.0.tgz", + "integrity": "sha512-J4bfM7lf8oZvEAdpS71oTvC1ofKxfEZgU5vKVwzZKi4QPiL82udjpseJwxPid9Pu2FNmyRQOX4iEj6W1iOSnPw==" + }, + "node_modules/@octokit/plugin-paginate-rest": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.6.2.tgz", + "integrity": "sha512-3Dy7/YZAwdOaRpGQoNHPeT0VU1fYLpIUdPyvR37IyFLgd6XSij4j9V/xN/+eSjF2KKvmfIulEh9LF1tRPjIiDA==", + "dependencies": { + "@octokit/types": "^6.0.1" + }, + "peerDependencies": { + "@octokit/core": ">=2" + } + }, + "node_modules/@octokit/plugin-request-log": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.2.tgz", + "integrity": "sha512-oTJSNAmBqyDR41uSMunLQKMX0jmEXbwD1fpz8FG27lScV3RhtGfBa1/BBLym+PxcC16IBlF7KH9vP1BUYxA+Eg==", + "peerDependencies": { + "@octokit/core": ">=3" + } + }, + "node_modules/@octokit/plugin-rest-endpoint-methods": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-4.4.1.tgz", + "integrity": "sha512-+v5PcvrUcDeFXf8hv1gnNvNLdm4C0+2EiuWt9EatjjUmfriM1pTMM+r4j1lLHxeBQ9bVDmbywb11e3KjuavieA==", + "dependencies": { + "@octokit/types": "^6.1.0", + "deprecation": "^2.3.1" + }, + "peerDependencies": { + "@octokit/core": ">=3" + } + }, + "node_modules/@octokit/request": { + "version": "5.4.12", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.4.12.tgz", + "integrity": "sha512-MvWYdxengUWTGFpfpefBBpVmmEYfkwMoxonIB3sUGp5rhdgwjXL1ejo6JbgzG/QD9B/NYt/9cJX1pxXeSIUCkg==", + "dependencies": { + "@octokit/endpoint": "^6.0.1", + "@octokit/request-error": "^2.0.0", + "@octokit/types": "^6.0.3", + "deprecation": "^2.0.0", + "is-plain-object": "^5.0.0", + "node-fetch": "^2.6.1", + "once": "^1.4.0", + "universal-user-agent": "^6.0.0" + } + }, + "node_modules/@octokit/request-error": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.0.4.tgz", + "integrity": "sha512-LjkSiTbsxIErBiRh5wSZvpZqT4t0/c9+4dOe0PII+6jXR+oj/h66s7E4a/MghV7iT8W9ffoQ5Skoxzs96+gBPA==", + "dependencies": { + "@octokit/types": "^6.0.0", + "deprecation": "^2.0.0", + "once": "^1.4.0" + } + }, + "node_modules/@octokit/request/node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@octokit/rest": { + "version": "18.0.12", + "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-18.0.12.tgz", + "integrity": "sha512-hNRCZfKPpeaIjOVuNJzkEL6zacfZlBPV8vw8ReNeyUkVvbuCvvrrx8K8Gw2eyHHsmd4dPlAxIXIZ9oHhJfkJpw==", + "dependencies": { + "@octokit/core": "^3.2.3", + "@octokit/plugin-paginate-rest": "^2.6.2", + "@octokit/plugin-request-log": "^1.0.2", + "@octokit/plugin-rest-endpoint-methods": "4.4.1" + } + }, + "node_modules/@octokit/types": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.1.1.tgz", + "integrity": "sha512-btm3D6S7VkRrgyYF31etUtVY/eQ1KzrNRqhFt25KSe2mKlXuLXJilglRC6eDA2P6ou94BUnk/Kz5MPEolXgoiw==", + "dependencies": { + "@octokit/openapi-types": "^2.0.0", + "@types/node": ">= 8" + } + }, + "node_modules/@sinonjs/commons": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.1.tgz", + "integrity": "sha512-892K+kWUUi3cl+LlqEWIDrhvLgdL79tECi8JZUyq6IviKy/DNhuzCRlbHUjxK89f4ypPMMaFnFuR9Ie6DoIMsw==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/formatio": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-2.0.0.tgz", + "integrity": "sha512-ls6CAMA6/5gG+O/IdsBcblvnd8qcO/l1TYoNeAzp3wcISOxlPXQEus0mLcdwazEkWjaBdaJ3TaxmNgCLWwvWzg==", + "dev": true, + "dependencies": { + "samsam": "1.3.0" + } + }, + "node_modules/@sinonjs/samsam": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.3.tgz", + "integrity": "sha512-bKCMKZvWIjYD0BLGnNrxVuw4dkWCYsLqFOUWw8VgKF/+5Y+mE7LfHWPIYoDXowH+3a9LsWDMo0uAP8YDosPvHQ==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^1.3.0", + "array-from": "^2.1.1", + "lodash": "^4.17.15" + } + }, + "node_modules/@sinonjs/text-encoding": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", + "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", + "dev": true + }, + "node_modules/@types/babel-types": { + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.8.tgz", + "integrity": "sha512-jvu8g4LR7+p6ao30RhTREnEhHxmP4/R9D9/rOR/Kq14FztORty9SKgtOZUNZNMB9CXLxZ54EWu4dArUE8WdTsw==", + "dev": true + }, + "node_modules/@types/babylon": { + "version": "6.16.5", + "resolved": "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.5.tgz", + "integrity": "sha512-xH2e58elpj1X4ynnKp9qSnWlsRTIs6n3tgLGNfwAGHwePw0mulHQllV34n0T25uYSu1k0hRKkWXF890B1yS47w==", + "dev": true, + "dependencies": { + "@types/babel-types": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.5.tgz", + "integrity": "sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ==", + "dev": true + }, + "node_modules/@types/node": { + "version": "14.0.27", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.27.tgz", + "integrity": "sha512-kVrqXhbclHNHGu9ztnAwSncIgJv/FaxmzXJvGXNdcCpV1b8u1/Mi6z6m0vwy0LzKeXFTPLH0NzwmoJ3fNCIq0g==" + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", + "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", + "dev": true, + "dependencies": { + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz", + "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-code-frame": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", + "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", + "dev": true, + "dependencies": { + "@webassemblyjs/wast-printer": "1.9.0" + } + }, + "node_modules/@webassemblyjs/helper-fsm": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-module-context": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", + "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.9.0" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz", + "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz", + "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", + "dev": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz", + "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", + "dev": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz", + "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==", + "dev": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz", + "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/helper-wasm-section": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-opt": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "@webassemblyjs/wast-printer": "1.9.0" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz", + "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz", + "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz", + "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" + } + }, + "node_modules/@webassemblyjs/wast-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", + "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/floating-point-hex-parser": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-code-frame": "1.9.0", + "@webassemblyjs/helper-fsm": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", + "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, + "node_modules/@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "dev": true + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "node_modules/accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "dependencies": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + } + }, + "node_modules/acorn": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", + "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", + "dev": true + }, + "node_modules/acorn-globals": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz", + "integrity": "sha1-/YJw9x+7SZawBPqIDuXUZXOnMb8=", + "dev": true, + "dependencies": { + "acorn": "^4.0.4" + } + }, + "node_modules/acorn-globals/node_modules/acorn": { + "version": "4.0.13", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", + "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", + "dev": true + }, + "node_modules/acorn-jsx": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", + "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", + "dev": true + }, + "node_modules/adbkit": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/adbkit/-/adbkit-2.11.0.tgz", + "integrity": "sha512-j2vUhEeZmCiqBP+p77CpPWQTcT20rOmSmRHFUTZUwUpxzeCd3fXop4NAGYztSY9/FNU4bT/qqvYQ4EZKuCXhfA==", + "dev": true, + "dependencies": { + "adbkit-logcat": "^1.1.0", + "adbkit-monkey": "~1.0.1", + "bluebird": "~2.9.24", + "commander": "^2.3.0", + "debug": "~2.6.3", + "node-forge": "^0.7.1", + "split": "~0.3.3" + } + }, + "node_modules/adbkit-logcat": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/adbkit-logcat/-/adbkit-logcat-1.1.0.tgz", + "integrity": "sha1-Adf5sM75CTowvLOwB+//MBUIli8=", + "dev": true + }, + "node_modules/adbkit-monkey": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/adbkit-monkey/-/adbkit-monkey-1.0.1.tgz", + "integrity": "sha1-8pG+cBou/FZ6Y/x6pq/N7TFDC+E=", + "dev": true, + "dependencies": { + "async": "~0.2.9" + } + }, + "node_modules/adbkit-monkey/node_modules/async": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", + "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=", + "dev": true + }, + "node_modules/adbkit/node_modules/bluebird": { + "version": "2.9.34", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-2.9.34.tgz", + "integrity": "sha1-L3tOyAIWMoqf3evfacjUlC/v99g=", + "dev": true + }, + "node_modules/adbkit/node_modules/node-forge": { + "version": "0.7.6", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.6.tgz", + "integrity": "sha512-sol30LUpz1jQFBjOKwbjxijiE3b6pjd74YwfD0fJOKPjF+fONKb2Yg8rYgS6+bK6VDl+/wfr4IYpC7jDzLUIfw==", + "dev": true + }, + "node_modules/addons-linter": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/addons-linter/-/addons-linter-1.4.1.tgz", + "integrity": "sha512-AX8nCD/gy/6DoX4B7vTMQV6pcP8tG0BjxB3Jv44VZrUTYG+ojHx26abRDyUn+fDqWGf8qzeVn0Vss/NMNjMouA==", + "dev": true, + "dependencies": { + "@babel/polyfill": "7.0.0", + "@babel/register": "7.0.0", + "ajv": "6.5.5", + "ajv-merge-patch": "4.1.0", + "chalk": "2.4.0", + "cheerio": "1.0.0-rc.2", + "columnify": "1.5.4", + "common-tags": "1.8.0", + "crx-parser": "0.1.2", + "deepmerge": "2.2.1", + "dispensary": "0.27.0", + "es6-promisify": "5.0.0", + "eslint": "5.0.1", + "eslint-plugin-no-unsafe-innerhtml": "1.0.16", + "eslint-visitor-keys": "1.0.0", + "espree": "4.1.0", + "esprima": "3.1.3", + "first-chunk-stream": "2.0.0", + "fluent-syntax": "0.7.0", + "fsevents": "2.0.1", + "glob": "7.1.3", + "is-mergeable-object": "1.1.0", + "jed": "1.1.1", + "os-locale": "3.0.1", + "pino": "5.9.0", + "po2json": "0.4.5", + "postcss": "7.0.6", + "probe-image-size": "4.0.0", + "relaxed-json": "1.0.1", + "semver": "5.6.0", + "shelljs": "0.8.3", + "snyk": "1.110.2", + "source-map-support": "0.5.6", + "strip-bom-stream": "3.0.0", + "tosource": "1.0.0", + "upath": "1.1.0", + "whatwg-url": "7.0.0", + "xmldom": "0.1.27", + "yargs": "12.0.2", + "yauzl": "2.9.2" + }, + "optionalDependencies": { + "fsevents": "2.0.1" + } + }, + "node_modules/addons-linter/node_modules/@babel/polyfill": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.0.0.tgz", + "integrity": "sha512-dnrMRkyyr74CRelJwvgnnSUDh2ge2NCTyHVwpOdvRMHtJUyxLtMAfhBN3s64pY41zdw0kgiLPh6S20eb1NcX6Q==", + "dev": true, + "dependencies": { + "core-js": "^2.5.7", + "regenerator-runtime": "^0.11.1" + } + }, + "node_modules/addons-linter/node_modules/ajv": { + "version": "6.5.5", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.5.tgz", + "integrity": "sha512-7q7gtRQDJSyuEHjuVgHoUa2VuemFiCMrfQc9Tc08XTAc4Zj/5U1buQJ0HU6i7fKjXU09SVgSmxa4sLvuvS8Iyg==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "node_modules/addons-linter/node_modules/ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "node_modules/addons-linter/node_modules/camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "node_modules/addons-linter/node_modules/chalk": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", + "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "node_modules/addons-linter/node_modules/cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "dependencies": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "node_modules/addons-linter/node_modules/decamelize": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", + "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", + "dev": true, + "dependencies": { + "xregexp": "4.0.0" + } + }, + "node_modules/addons-linter/node_modules/esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", + "dev": true + }, + "node_modules/addons-linter/node_modules/fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "node_modules/addons-linter/node_modules/glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "node_modules/addons-linter/node_modules/regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + }, + "node_modules/addons-linter/node_modules/semver": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", + "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", + "dev": true + }, + "node_modules/addons-linter/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "node_modules/addons-linter/node_modules/source-map-support": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.6.tgz", + "integrity": "sha512-N4KXEz7jcKqPf2b2vZF11lQIz9W5ZMuUcIOGj243lduidkf2fjkVKJS9vNxVWn3u/uxX38AcE8U9nnH9FPcq+g==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/addons-linter/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "dependencies": { + "ansi-regex": "^3.0.0" + } + }, + "node_modules/addons-linter/node_modules/xregexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", + "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", + "dev": true + }, + "node_modules/addons-linter/node_modules/yargs": { + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.2.tgz", + "integrity": "sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ==", + "dev": true, + "dependencies": { + "cliui": "^4.0.0", + "decamelize": "^2.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^1.0.1", + "os-locale": "^3.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^10.1.0" + } + }, + "node_modules/addons-linter/node_modules/yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "dev": true, + "dependencies": { + "camelcase": "^4.1.0" + } + }, + "node_modules/addons-linter/node_modules/yauzl": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.9.2.tgz", + "integrity": "sha1-T7G8euH8L1cDe1SvasyP4QMcW3c=", + "dev": true, + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "node_modules/adm-zip": { + "version": "0.4.16", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.16.tgz", + "integrity": "sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg==", + "dev": true + }, + "node_modules/agent-base": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", + "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", + "dev": true, + "dependencies": { + "es6-promisify": "^5.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.3", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.3.tgz", + "integrity": "sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "node_modules/ajv-errors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", + "dev": true + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true + }, + "node_modules/ajv-merge-patch": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ajv-merge-patch/-/ajv-merge-patch-4.1.0.tgz", + "integrity": "sha512-0mAYXMSauA8RZ7r+B4+EAOYcZEcO9OK5EiQCR7W7Cv4E44pJj56ZnkKLJ9/PAcOc0dT+LlV9fdDcq2TxVJfOYw==", + "dev": true, + "dependencies": { + "fast-json-patch": "^2.0.6", + "json-merge-patch": "^0.2.3" + } + }, + "node_modules/align-text": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", + "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2", + "longest": "^1.0.1", + "repeat-string": "^1.5.2" + } + }, + "node_modules/align-text/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + } + }, + "node_modules/amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "dev": true + }, + "node_modules/ansi-align": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", + "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", + "dev": true, + "dependencies": { + "string-width": "^2.0.0" + } + }, + "node_modules/ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "dev": true + }, + "node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + } + }, + "node_modules/ansicolors": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz", + "integrity": "sha1-ZlWX3oap/+Oqm/vmyuXG6kJrSXk=", + "dev": true + }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=", + "dev": true + }, + "node_modules/anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, + "dependencies": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + } + }, + "node_modules/aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true + }, + "node_modules/archiver": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-1.3.0.tgz", + "integrity": "sha1-TyGU1tj5nfP1MeaIHxTxXVX6ryI=", + "dev": true, + "dependencies": { + "archiver-utils": "^1.3.0", + "async": "^2.0.0", + "buffer-crc32": "^0.2.1", + "glob": "^7.0.0", + "lodash": "^4.8.0", + "readable-stream": "^2.0.0", + "tar-stream": "^1.5.0", + "walkdir": "^0.0.11", + "zip-stream": "^1.1.0" + } + }, + "node_modules/archiver-utils": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-1.3.0.tgz", + "integrity": "sha1-5QtMCccL89aA4y/xt5lOn52JUXQ=", + "dev": true, + "dependencies": { + "glob": "^7.0.0", + "graceful-fs": "^4.1.0", + "lazystream": "^1.0.0", + "lodash": "^4.8.0", + "normalize-path": "^2.0.0", + "readable-stream": "^2.0.0" + } + }, + "node_modules/archiver/node_modules/async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dev": true, + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", + "dev": true + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/argparse/node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "node_modules/arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true + }, + "node_modules/arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true + }, + "node_modules/arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true + }, + "node_modules/array-differ": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", + "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", + "dev": true + }, + "node_modules/array-each": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", + "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=", + "dev": true + }, + "node_modules/array-filter": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", + "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=", + "dev": true + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, + "node_modules/array-from": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", + "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", + "dev": true + }, + "node_modules/array-map": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz", + "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=", + "dev": true + }, + "node_modules/array-reduce": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz", + "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=", + "dev": true + }, + "node_modules/array-slice": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", + "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==", + "dev": true + }, + "node_modules/array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, + "dependencies": { + "array-uniq": "^1.0.1" + } + }, + "node_modules/array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true + }, + "node_modules/array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true + }, + "node_modules/arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true + }, + "node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", + "dev": true + }, + "node_modules/asn1": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", + "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=", + "dev": true + }, + "node_modules/asn1.js": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", + "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "dev": true, + "dependencies": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/asn1.js/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/assert": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", + "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "dev": true, + "dependencies": { + "object-assign": "^4.1.1", + "util": "0.10.3" + } + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + }, + "node_modules/assert/node_modules/inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "dev": true + }, + "node_modules/assert/node_modules/util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "dev": true, + "dependencies": { + "inherits": "2.0.1" + } + }, + "node_modules/assertion-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "dev": true + }, + "node_modules/assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true + }, + "node_modules/ast-types": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.3.tgz", + "integrity": "sha512-XTZ7xGML849LkQP86sWdQzfhwbt3YwIO6MqbX9mUNYY98VKaaVZP7YNNm70IpwecbkkxmfC5IYAzOQ/2p29zRA==", + "dev": true + }, + "node_modules/async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true + }, + "node_modules/async-each": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", + "dev": true + }, + "node_modules/async-limiter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", + "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", + "dev": true + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "node_modules/atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "dev": true + }, + "node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true + }, + "node_modules/aws4": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.0.tgz", + "integrity": "sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA==", + "dev": true + }, + "node_modules/babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dev": true, + "dependencies": { + "chalk": "^1.1.3", + "esutils": "^2.0.2", + "js-tokens": "^3.0.2" + } + }, + "node_modules/babel-code-frame/node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "node_modules/babel-code-frame/node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "node_modules/babel-code-frame/node_modules/js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, + "node_modules/babel-code-frame/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + }, + "node_modules/babel-core": { + "version": "6.26.3", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", + "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", + "dev": true, + "dependencies": { + "babel-code-frame": "^6.26.0", + "babel-generator": "^6.26.0", + "babel-helpers": "^6.24.1", + "babel-messages": "^6.23.0", + "babel-register": "^6.26.0", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "convert-source-map": "^1.5.1", + "debug": "^2.6.9", + "json5": "^0.5.1", + "lodash": "^4.17.4", + "minimatch": "^3.0.4", + "path-is-absolute": "^1.0.1", + "private": "^0.1.8", + "slash": "^1.0.0", + "source-map": "^0.5.7" + } + }, + "node_modules/babel-core/node_modules/json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "dev": true + }, + "node_modules/babel-generator": { + "version": "6.26.1", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", + "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", + "dev": true, + "dependencies": { + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "detect-indent": "^4.0.0", + "jsesc": "^1.3.0", + "lodash": "^4.17.4", + "source-map": "^0.5.7", + "trim-right": "^1.0.1" + } + }, + "node_modules/babel-generator/node_modules/jsesc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", + "dev": true + }, + "node_modules/babel-helper-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", + "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", + "dev": true, + "dependencies": { + "babel-helper-get-function-arity": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "node_modules/babel-helper-get-function-arity": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", + "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "node_modules/babel-helper-remap-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", + "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", + "dev": true, + "dependencies": { + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "node_modules/babel-helpers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", + "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" + } + }, + "node_modules/babel-loader": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.1.0.tgz", + "integrity": "sha512-7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw==", + "dev": true, + "dependencies": { + "find-cache-dir": "^2.1.0", + "loader-utils": "^1.4.0", + "mkdirp": "^0.5.3", + "pify": "^4.0.1", + "schema-utils": "^2.6.5" + } + }, + "node_modules/babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0" + } + }, + "node_modules/babel-plugin-dynamic-import-node": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "dev": true, + "dependencies": { + "object.assign": "^4.1.0" + } + }, + "node_modules/babel-plugin-syntax-async-functions": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", + "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", + "dev": true + }, + "node_modules/babel-plugin-transform-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", + "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", + "dev": true, + "dependencies": { + "babel-helper-remap-async-to-generator": "^6.24.1", + "babel-plugin-syntax-async-functions": "^6.8.0", + "babel-runtime": "^6.22.0" + } + }, + "node_modules/babel-polyfill": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", + "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.26.0", + "core-js": "^2.5.0", + "regenerator-runtime": "^0.10.5" + } + }, + "node_modules/babel-polyfill/node_modules/regenerator-runtime": { + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", + "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=", + "dev": true + }, + "node_modules/babel-register": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", + "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", + "dev": true, + "dependencies": { + "babel-core": "^6.26.0", + "babel-runtime": "^6.26.0", + "core-js": "^2.5.0", + "home-or-tmp": "^2.0.0", + "lodash": "^4.17.4", + "mkdirp": "^0.5.1", + "source-map-support": "^0.4.15" + } + }, + "node_modules/babel-register/node_modules/source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "dev": true, + "dependencies": { + "source-map": "^0.5.6" + } + }, + "node_modules/babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dev": true, + "dependencies": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + } + }, + "node_modules/babel-runtime/node_modules/regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + }, + "node_modules/babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "lodash": "^4.17.4" + } + }, + "node_modules/babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "dev": true, + "dependencies": { + "babel-code-frame": "^6.26.0", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "debug": "^2.6.8", + "globals": "^9.18.0", + "invariant": "^2.2.2", + "lodash": "^4.17.4" + } + }, + "node_modules/babel-traverse/node_modules/globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true + }, + "node_modules/babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" + } + }, + "node_modules/babel-types/node_modules/to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "dev": true + }, + "node_modules/babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + }, + "node_modules/balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "node_modules/base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, + "dependencies": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + } + }, + "node_modules/base/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "dependencies": { + "is-descriptor": "^1.0.0" + } + }, + "node_modules/base/node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + } + }, + "node_modules/base/node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + } + }, + "node_modules/base/node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "node_modules/base64-js": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", + "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", + "dev": true + }, + "node_modules/base64url": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", + "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", + "dev": true + }, + "node_modules/basic-auth": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz", + "integrity": "sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==", + "dev": true, + "dependencies": { + "safe-buffer": "5.1.2" + } + }, + "node_modules/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", + "dev": true + }, + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/before-after-hook": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.1.0.tgz", + "integrity": "sha512-IWIbu7pMqyw3EAJHzzHbWa85b6oud/yfKYg5rqB5hNE8CeMi3nX+2C2sj0HswfblST86hpVEOAb9x34NZd6P7A==" + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true + }, + "node_modules/binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "dev": true + }, + "node_modules/bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "dev": true, + "optional": true, + "dependencies": { + "file-uri-to-path": "1.0.0" + } + }, + "node_modules/bl": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.3.tgz", + "integrity": "sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==", + "dev": true, + "dependencies": { + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "dev": true + }, + "node_modules/bn.js": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.2.tgz", + "integrity": "sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA==", + "dev": true + }, + "node_modules/body": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/body/-/body-5.1.0.tgz", + "integrity": "sha1-5LoM5BCkaTYyM2dgnstOZVMSUGk=", + "dev": true, + "dependencies": { + "continuable-cache": "^0.3.1", + "error": "^7.0.0", + "raw-body": "~1.1.0", + "safe-json-parse": "~1.0.1" + } + }, + "node_modules/body-parser": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", + "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", + "dependencies": { + "bytes": "3.1.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.7.0", + "raw-body": "2.4.0", + "type-is": "~1.6.17" + } + }, + "node_modules/body/node_modules/bytes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz", + "integrity": "sha1-NWnt6Lo0MV+rmcPpLLBMciDeH6g=", + "dev": true + }, + "node_modules/body/node_modules/raw-body": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-1.1.7.tgz", + "integrity": "sha1-HQJ8K/oRasxmI7yo8AAWVyqH1CU=", + "dev": true, + "dependencies": { + "bytes": "1", + "string_decoder": "0.10" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", + "dev": true + }, + "node_modules/bootstrap": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-3.4.1.tgz", + "integrity": "sha512-yN5oZVmRCwe5aKwzRj6736nSmKDX7pLYwsXiCj/EYmo16hODaBiT4En5btW/jhBF/seV+XMx3aYwukYC3A49DA==", + "dev": true + }, + "node_modules/boxen": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", + "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", + "dev": true, + "dependencies": { + "ansi-align": "^2.0.0", + "camelcase": "^4.0.0", + "chalk": "^2.0.1", + "cli-boxes": "^1.0.0", + "string-width": "^2.0.0", + "term-size": "^1.2.0", + "widest-line": "^2.0.0" + } + }, + "node_modules/boxen/node_modules/camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "dependencies": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + } + }, + "node_modules/braces/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + } + }, + "node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "dev": true + }, + "node_modules/browser-stdout": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", + "dev": true + }, + "node_modules/browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, + "dependencies": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, + "dependencies": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "node_modules/browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, + "dependencies": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/browserify-rsa": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "dev": true, + "dependencies": { + "bn.js": "^4.1.0", + "randombytes": "^2.0.1" + } + }, + "node_modules/browserify-rsa/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/browserify-sign": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", + "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", + "dev": true, + "dependencies": { + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.3", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + } + }, + "node_modules/browserify-sign/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/browserify-sign/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "node_modules/browserify-sign/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, + "node_modules/browserify-sign/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dev": true, + "dependencies": { + "pako": "~1.0.5" + } + }, + "node_modules/browserslist": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.13.0.tgz", + "integrity": "sha512-MINatJ5ZNrLnQ6blGvePd/QOz9Xtu+Ne+x29iQSCHfkU5BugKVJwZKn/iiL8UbpIpa3JhviKjz+XxMo0m2caFQ==", + "dev": true, + "dependencies": { + "caniuse-lite": "^1.0.30001093", + "electron-to-chromium": "^1.3.488", + "escalade": "^3.0.1", + "node-releases": "^1.1.58" + } + }, + "node_modules/buffer": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz", + "integrity": "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==", + "dev": true, + "dependencies": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4" + } + }, + "node_modules/buffer-alloc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "dev": true, + "dependencies": { + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" + } + }, + "node_modules/buffer-alloc-unsafe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", + "dev": true + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", + "dev": true + }, + "node_modules/buffer-equal-constant-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", + "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=", + "dev": true + }, + "node_modules/buffer-fill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=", + "dev": true + }, + "node_modules/buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "node_modules/buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "dev": true + }, + "node_modules/builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "dev": true + }, + "node_modules/bunyan": { + "version": "1.8.12", + "resolved": "https://registry.npmjs.org/bunyan/-/bunyan-1.8.12.tgz", + "integrity": "sha1-8VDw9nSKvdcq6uhPBEA74u8RN5c=", + "dev": true, + "dependencies": { + "dtrace-provider": "~0.8", + "moment": "^2.10.6", + "mv": "~2", + "safe-json-stringify": "~1" + }, + "optionalDependencies": { + "dtrace-provider": "~0.8", + "mv": "~2", + "safe-json-stringify": "~1" + } + }, + "node_modules/bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" + }, + "node_modules/cacache": { + "version": "10.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz", + "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==", + "dev": true, + "dependencies": { + "bluebird": "^3.5.1", + "chownr": "^1.0.1", + "glob": "^7.1.2", + "graceful-fs": "^4.1.11", + "lru-cache": "^4.1.1", + "mississippi": "^2.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.2", + "ssri": "^5.2.4", + "unique-filename": "^1.1.0", + "y18n": "^4.0.0" + } + }, + "node_modules/cacache/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + } + }, + "node_modules/cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, + "dependencies": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + } + }, + "node_modules/caller-path": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz", + "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", + "dev": true, + "dependencies": { + "callsites": "^0.2.0" + } + }, + "node_modules/callsites": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz", + "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=", + "dev": true + }, + "node_modules/camelcase": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", + "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", + "dev": true + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001111", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001111.tgz", + "integrity": "sha512-xnDje2wchd/8mlJu8sXvWxOGvMgv+uT3iZ3bkIAynKOzToCssWCmkz/ZIkQBs/2pUB4uwnJKVORWQ31UkbVjOg==", + "dev": true + }, + "node_modules/capture-stack-trace": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz", + "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==", + "dev": true + }, + "node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "node_modules/center-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", + "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", + "dev": true, + "dependencies": { + "align-text": "^0.1.3", + "lazy-cache": "^1.0.3" + } + }, + "node_modules/chai": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz", + "integrity": "sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw==", + "dev": true, + "dependencies": { + "assertion-error": "^1.1.0", + "check-error": "^1.0.2", + "deep-eql": "^3.0.1", + "get-func-name": "^2.0.0", + "pathval": "^1.1.0", + "type-detect": "^4.0.5" + } + }, + "node_modules/chai-arrays": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/chai-arrays/-/chai-arrays-2.2.0.tgz", + "integrity": "sha512-4awrdGI2EH8owJ9I58PXwG4N56/FiM8bsn4CVSNEgr4GKAM6Kq5JPVApUbhUBjDakbZNuRvV7quRSC38PWq/tg==", + "dev": true + }, + "node_modules/chai-as-promised": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.1.tgz", + "integrity": "sha512-azL6xMoi+uxu6z4rhWQ1jbdUhOMhis2PvscD/xjLqNMkv3BPPp2JyyuTHOrf9BOosGpNQ11v6BKv/g57RXbiaA==", + "dev": true, + "dependencies": { + "check-error": "^1.0.2" + } + }, + "node_modules/chai-json-schema": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/chai-json-schema/-/chai-json-schema-1.5.1.tgz", + "integrity": "sha512-TR/xPDxRhqwFFCWg1HgL8nNWbpNfUwaib6pBN++QKpnd0t+o3+MBvAn5CM1mpdUMaM76oJAtUjGKdjGad01lIA==", + "dev": true, + "dependencies": { + "jsonpointer.js": "0.4.0", + "tv4": "^1.3.0" + } + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "node_modules/character-parser": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", + "integrity": "sha1-x84o821LzZdE5f/CxfzeHHMmH8A=", + "dev": true, + "dependencies": { + "is-regex": "^1.0.3" + } + }, + "node_modules/chardet": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", + "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=", + "dev": true + }, + "node_modules/check-error": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", + "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", + "dev": true + }, + "node_modules/cheerio": { + "version": "1.0.0-rc.2", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.2.tgz", + "integrity": "sha1-S59TqBsn5NXawxwP/Qz6A8xoMNs=", + "dev": true, + "dependencies": { + "css-select": "~1.2.0", + "dom-serializer": "~0.1.0", + "entities": "~1.1.1", + "htmlparser2": "^3.9.1", + "lodash": "^4.15.0", + "parse5": "^3.0.1" + } + }, + "node_modules/chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "dev": true, + "dependencies": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "fsevents": "^1.2.7", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + }, + "optionalDependencies": { + "fsevents": "^1.2.7" + } + }, + "node_modules/chokidar/node_modules/fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "dev": true, + "optional": true, + "dependencies": { + "bindings": "^1.5.0", + "nan": "^2.12.1" + } + }, + "node_modules/chokidar/node_modules/is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + } + }, + "node_modules/chokidar/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "node_modules/chokidar/node_modules/upath": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", + "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", + "dev": true + }, + "node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "dev": true + }, + "node_modules/chrome-trace-event": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", + "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", + "dev": true, + "dependencies": { + "tslib": "^1.9.0" + } + }, + "node_modules/cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/circular-json": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", + "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", + "dev": true + }, + "node_modules/class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "dependencies": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + } + }, + "node_modules/class-utils/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + } + }, + "node_modules/clean-css": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz", + "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==", + "dev": true, + "dependencies": { + "source-map": "~0.6.0" + } + }, + "node_modules/clean-css/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "node_modules/cli-boxes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", + "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", + "dev": true + }, + "node_modules/cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "dependencies": { + "restore-cursor": "^2.0.0" + } + }, + "node_modules/cli-width": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", + "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==", + "dev": true + }, + "node_modules/clipboard-polyfill": { + "version": "2.8.6", + "resolved": "https://registry.npmjs.org/clipboard-polyfill/-/clipboard-polyfill-2.8.6.tgz", + "integrity": "sha512-kz/1ov+PXsBpGnW9XJH3dLWdYj12FpXqO89Dngm/GRPoI36E/tnYs6N0YPTEhxM9WHAlFiN5eoyIVuv5nzKXvg==", + "dev": true + }, + "node_modules/cliui": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", + "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", + "dev": true, + "dependencies": { + "center-align": "^0.1.1", + "right-align": "^0.1.1", + "wordwrap": "0.0.2" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "dev": true + }, + "node_modules/clone-deep": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-0.3.0.tgz", + "integrity": "sha1-NIxhrpzb4O3+BT2R/0zFIdeQ7eg=", + "dev": true, + "dependencies": { + "for-own": "^1.0.0", + "is-plain-object": "^2.0.1", + "kind-of": "^3.2.2", + "shallow-clone": "^0.1.2" + } + }, + "node_modules/clone-deep/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true + }, + "node_modules/code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true + }, + "node_modules/codemirror": { + "version": "5.56.0", + "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.56.0.tgz", + "integrity": "sha512-MfKVmYgifXjQpLSgpETuih7A7WTTIsxvKfSLGseTY5+qt0E1UD1wblZGM6WLenORo8sgmf+3X+WTe2WF7mufyw==", + "dev": true + }, + "node_modules/collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, + "dependencies": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "node_modules/colors": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", + "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", + "dev": true + }, + "node_modules/columnify": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/columnify/-/columnify-1.5.4.tgz", + "integrity": "sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs=", + "dev": true, + "dependencies": { + "strip-ansi": "^3.0.0", + "wcwidth": "^1.0.0" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "dependencies": { + "delayed-stream": "~1.0.0" + } + }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/common-tags": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.0.tgz", + "integrity": "sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw==", + "dev": true + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "node_modules/component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true + }, + "node_modules/compress-commons": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz", + "integrity": "sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=", + "dev": true, + "dependencies": { + "buffer-crc32": "^0.2.1", + "crc32-stream": "^2.0.0", + "normalize-path": "^2.0.0", + "readable-stream": "^2.0.0" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/configstore": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", + "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", + "dev": true, + "dependencies": { + "dot-prop": "^4.1.0", + "graceful-fs": "^4.1.2", + "make-dir": "^1.0.0", + "unique-string": "^1.0.0", + "write-file-atomic": "^2.0.0", + "xdg-basedir": "^3.0.0" + } + }, + "node_modules/configstore/node_modules/make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "dependencies": { + "pify": "^3.0.0" + } + }, + "node_modules/configstore/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "node_modules/connect": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", + "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "finalhandler": "1.1.2", + "parseurl": "~1.3.3", + "utils-merge": "1.0.1" + } + }, + "node_modules/connect-livereload": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/connect-livereload/-/connect-livereload-0.5.4.tgz", + "integrity": "sha1-gBV9E3HJ83zBQDmrGJWXDRGdw7w=", + "dev": true + }, + "node_modules/console-browserify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", + "dev": true + }, + "node_modules/constantinople": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-3.1.2.tgz", + "integrity": "sha512-yePcBqEFhLOqSBtwYOGGS1exHo/s1xjekXiinh4itpNQGCu4KA1euPh1fg07N2wMITZXQkBz75Ntdt1ctGZouw==", + "dev": true, + "dependencies": { + "@types/babel-types": "^7.0.0", + "@types/babylon": "^6.16.2", + "babel-types": "^6.26.0", + "babylon": "^6.18.0" + } + }, + "node_modules/constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", + "dev": true + }, + "node_modules/content-disposition": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", + "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", + "dependencies": { + "safe-buffer": "5.1.2" + } + }, + "node_modules/content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" + }, + "node_modules/continuable-cache": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/continuable-cache/-/continuable-cache-0.3.1.tgz", + "integrity": "sha1-vXJ6f67XfnH/OYWskzUakSczrQ8=", + "dev": true + }, + "node_modules/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==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.1" + } + }, + "node_modules/cookie": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", + "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==" + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "node_modules/copy-concurrently": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", + "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "dev": true, + "dependencies": { + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" + } + }, + "node_modules/copy-concurrently/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + } + }, + "node_modules/copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true + }, + "node_modules/core-js": { + "version": "2.6.11", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", + "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==", + "dev": true + }, + "node_modules/core-js-compat": { + "version": "3.6.5", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.5.tgz", + "integrity": "sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng==", + "dev": true, + "dependencies": { + "browserslist": "^4.8.5", + "semver": "7.0.0" + } + }, + "node_modules/core-js-compat/node_modules/semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", + "dev": true + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "node_modules/crc": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz", + "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==", + "dev": true, + "dependencies": { + "buffer": "^5.1.0" + } + }, + "node_modules/crc32-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz", + "integrity": "sha1-483TtN8xaN10494/u8t7KX/pCPQ=", + "dev": true, + "dependencies": { + "crc": "^3.4.4", + "readable-stream": "^2.0.0" + } + }, + "node_modules/create-ecdh": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", + "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "dev": true, + "dependencies": { + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" + } + }, + "node_modules/create-ecdh/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/create-error-class": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", + "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", + "dev": true, + "dependencies": { + "capture-stack-trace": "^1.0.0" + } + }, + "node_modules/create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, + "dependencies": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "node_modules/create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, + "dependencies": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "node_modules/cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "node_modules/crx": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/crx/-/crx-3.2.1.tgz", + "integrity": "sha1-Fyk+51790IxtHIs+F0nS1XV89Cs=", + "dev": true, + "dependencies": { + "archiver": "^1.1.0", + "commander": "^2.5.0", + "es6-promise": "^3.0.0", + "node-rsa": "^0.2.10" + } + }, + "node_modules/crx-parser": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/crx-parser/-/crx-parser-0.1.2.tgz", + "integrity": "sha1-fu7tnt3JXiLBiTguNGJARKiaWm0=", + "dev": true + }, + "node_modules/crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, + "dependencies": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + } + }, + "node_modules/crypto-random-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", + "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", + "dev": true + }, + "node_modules/css": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", + "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "source-map": "^0.6.1", + "source-map-resolve": "^0.5.2", + "urix": "^0.1.0" + } + }, + "node_modules/css-parse": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-1.7.0.tgz", + "integrity": "sha1-Mh9s9zeCpv91ERE5D8BeLGV9jJs=", + "dev": true + }, + "node_modules/css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "dev": true, + "dependencies": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "node_modules/css-what": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", + "dev": true + }, + "node_modules/css/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "node_modules/cyclist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", + "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", + "dev": true + }, + "node_modules/d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "dev": true, + "dependencies": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/data-uri-to-buffer": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-1.2.0.tgz", + "integrity": "sha512-vKQ9DTQPN1FLYiiEEOQ6IBGFqvjCa5rSK3cWMy/Nespm5d/x3dGFT9UBZnkLxCwua/IXBi2TYnwTEpsOvhC4UQ==", + "dev": true + }, + "node_modules/dateformat": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", + "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", + "dev": true + }, + "node_modules/debounce": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.1.0.tgz", + "integrity": "sha512-ZQVKfRVlwRfD150ndzEK8M90ABT+Y/JQKs4Y7U4MXdpuoUkkrr4DwKbVux3YjylA5bUMUj0Nc3pMxPJX6N2QQQ==", + "dev": true + }, + "node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "node_modules/decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true + }, + "node_modules/deep-eql": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", + "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", + "dev": true, + "dependencies": { + "type-detect": "^4.0.0" + } + }, + "node_modules/deep-equal": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", + "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", + "dev": true, + "dependencies": { + "is-arguments": "^1.0.4", + "is-date-object": "^1.0.1", + "is-regex": "^1.0.4", + "object-is": "^1.0.1", + "object-keys": "^1.1.1", + "regexp.prototype.flags": "^1.2.0" + } + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true + }, + "node_modules/deep-for-each": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/deep-for-each/-/deep-for-each-2.0.3.tgz", + "integrity": "sha512-Y9mu+rplGcNZ7veer+5rqcdI9w3aPb7/WyE/nYnsuPevaE2z5YuC2u7/Gz/hIKsa0zo8sE8gKoBimSNsO/sr+A==", + "dev": true, + "dependencies": { + "lodash.isplainobject": "^4.0.6" + } + }, + "node_modules/deep-freeze": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/deep-freeze/-/deep-freeze-0.0.1.tgz", + "integrity": "sha1-OgsABd4YZygZ39OM0x+RF5yJPoQ=", + "dev": true + }, + "node_modules/deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "node_modules/deepcopy": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/deepcopy/-/deepcopy-0.6.3.tgz", + "integrity": "sha1-Y0eA8vhlardxr4+oQx7RzO5Vx7A=", + "dev": true + }, + "node_modules/deepmerge": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-2.2.1.tgz", + "integrity": "sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==", + "dev": true + }, + "node_modules/defaults": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", + "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "dev": true, + "dependencies": { + "clone": "^1.0.2" + } + }, + "node_modules/define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "dependencies": { + "object-keys": "^1.0.12" + } + }, + "node_modules/define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "dependencies": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + } + }, + "node_modules/define-property/node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + } + }, + "node_modules/define-property/node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + } + }, + "node_modules/define-property/node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "node_modules/degenerator": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-1.0.4.tgz", + "integrity": "sha1-/PSQo37OJmRk2cxDGrmMWBnO0JU=", + "dev": true, + "dependencies": { + "ast-types": "0.x.x", + "escodegen": "1.x.x", + "esprima": "3.x.x" + } + }, + "node_modules/degenerator/node_modules/esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", + "dev": true + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, + "node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" + }, + "node_modules/deprecation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", + "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==" + }, + "node_modules/des.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/desandro-matches-selector": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/desandro-matches-selector/-/desandro-matches-selector-2.0.2.tgz", + "integrity": "sha1-cXvu1NwT59jzdi9wem1YpndCGOE=", + "dev": true + }, + "node_modules/destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "node_modules/detect-file": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", + "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", + "dev": true + }, + "node_modules/detect-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", + "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "dev": true, + "dependencies": { + "repeating": "^2.0.0" + } + }, + "node_modules/diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, + "node_modules/diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "dependencies": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "node_modules/diffie-hellman/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/dispensary": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/dispensary/-/dispensary-0.27.0.tgz", + "integrity": "sha512-bG9pSBPH8wTEaugUIBAbBvBHynqOoGxefOT4YXlPoUc9AxQGDUO1uFHafDVWnsGWiSYvTUga0aZ9xThzfGQtlQ==", + "dev": true, + "dependencies": { + "array-from": "~2.1.1", + "async": "~2.6.0", + "natural-compare-lite": "~1.4.0", + "pino": "~5.8.0", + "request": "~2.88.0", + "sha.js": "~2.4.4", + "source-map-support": "~0.5.4", + "yargs": "~12.0.1" + } + }, + "node_modules/dispensary/node_modules/ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "node_modules/dispensary/node_modules/async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dev": true, + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/dispensary/node_modules/cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "dependencies": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "node_modules/dispensary/node_modules/pino": { + "version": "5.8.1", + "resolved": "https://registry.npmjs.org/pino/-/pino-5.8.1.tgz", + "integrity": "sha512-7bVFzUw3ffIfOM3t7MuQ9KsH+wX5bdGdQhGfccKgleoY7qG4FO3CmVSjywlFmmYGyMOISi1LDGC6JMEH7XkZJg==", + "dev": true, + "dependencies": { + "fast-json-parse": "^1.0.3", + "fast-redact": "^1.2.0", + "fast-safe-stringify": "^2.0.6", + "flatstr": "^1.0.5", + "pino-std-serializers": "^2.3.0", + "pump": "^3.0.0", + "quick-format-unescaped": "^3.0.0", + "sonic-boom": "^0.6.1" + } + }, + "node_modules/dispensary/node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/dispensary/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "dependencies": { + "ansi-regex": "^3.0.0" + } + }, + "node_modules/dispensary/node_modules/yargs": { + "version": "12.0.5", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", + "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", + "dev": true, + "dependencies": { + "cliui": "^4.0.0", + "decamelize": "^1.2.0", + "find-up": "^3.0.0", + "get-caller-file": "^1.0.1", + "os-locale": "^3.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^11.1.1" + } + }, + "node_modules/dockerfile-ast": { + "version": "0.0.12", + "resolved": "https://registry.npmjs.org/dockerfile-ast/-/dockerfile-ast-0.0.12.tgz", + "integrity": "sha512-cIV8oXkAxpIuN5XgG0TGg07nLDgrj4olkfrdT77OTA3VypscsYHBUg/FjHxW9K3oA+CyH4Th/qtoMgTVpzSobw==", + "dev": true, + "dependencies": { + "vscode-languageserver-types": "^3.5.0" + } + }, + "node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + } + }, + "node_modules/doctypes": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", + "integrity": "sha1-6oCxBqh1OHdOijpKWv4pPeSJ4Kk=", + "dev": true + }, + "node_modules/dom-serializer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", + "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", + "dev": true, + "dependencies": { + "domelementtype": "^1.3.0", + "entities": "^1.1.1" + } + }, + "node_modules/dom-walk": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", + "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==", + "dev": true + }, + "node_modules/domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "dev": true + }, + "node_modules/domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "dev": true + }, + "node_modules/domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "dev": true, + "dependencies": { + "domelementtype": "1" + } + }, + "node_modules/domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "dev": true, + "dependencies": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "node_modules/dot-prop": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.1.tgz", + "integrity": "sha512-l0p4+mIuJIua0mhxGoh4a+iNL9bmeK5DvnSVQa6T0OhrVmaEa1XScX5Etc673FePCJOArq/4Pa2cLGODUWTPOQ==", + "dev": true, + "dependencies": { + "is-obj": "^1.0.0" + } + }, + "node_modules/dotenv": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz", + "integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/dtrace-provider": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/dtrace-provider/-/dtrace-provider-0.8.8.tgz", + "integrity": "sha512-b7Z7cNtHPhH9EJhNNbbeqTcXB8LGFFZhq1PGgEvpeHlzd36bhbdTWoE/Ba/YguqpBSlAPKnARWhVlhunCMwfxg==", + "dev": true, + "optional": true, + "dependencies": { + "nan": "^2.14.0" + } + }, + "node_modules/duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "dev": true + }, + "node_modules/duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } + }, + "node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/ecdsa-sig-formatter": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", + "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "node_modules/electron-to-chromium": { + "version": "1.3.523", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.523.tgz", + "integrity": "sha512-D4/3l5DpciddD92IDRtpLearQSGzly8FwBJv+nITvLH8YJrFabpDFe4yuiOJh2MS4/EsXqyQTXyw1toeYPtshQ==", + "dev": true + }, + "node_modules/elliptic": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", + "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", + "dev": true, + "dependencies": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" + } + }, + "node_modules/elliptic/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/email-validator": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/email-validator/-/email-validator-2.0.4.tgz", + "integrity": "sha512-gYCwo7kh5S3IDyZPLZf6hSS0MnZT8QmJFqYvbqlDZSbwdZlY6QZWxJ4i/6UhITOJ4XzyI647Bm2MXKCLqnJ4nQ==", + "dev": true + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz", + "integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dev": true, + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/enhanced-resolve": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz", + "integrity": "sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "memory-fs": "^0.5.0", + "tapable": "^1.0.0" + } + }, + "node_modules/enhanced-resolve/node_modules/memory-fs": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", + "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", + "dev": true, + "dependencies": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + }, + "node_modules/entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "dev": true + }, + "node_modules/errno": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", + "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "dev": true, + "dependencies": { + "prr": "~1.0.1" + } + }, + "node_modules/error": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/error/-/error-7.2.1.tgz", + "integrity": "sha512-fo9HBvWnx3NGUKMvMwB/CBCMMrfEJgbDTVDEkPygA3Bdd3lM1OyCd+rbQ8BwnpF6GdVeOLDNmyL4N5Bg80ZvdA==", + "dev": true, + "dependencies": { + "string-template": "~0.2.1" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-abstract": { + "version": "1.17.6", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", + "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", + "dev": true, + "dependencies": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.0", + "is-regex": "^1.1.0", + "object-inspect": "^1.7.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.0", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "node_modules/es5-ext": { + "version": "0.10.53", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", + "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", + "dev": true, + "dependencies": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.3", + "next-tick": "~1.0.0" + } + }, + "node_modules/es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "dev": true + }, + "node_modules/es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "dev": true, + "dependencies": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/es6-map": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", + "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", + "dev": true, + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-set": "~0.1.5", + "es6-symbol": "~3.1.1", + "event-emitter": "~0.3.5" + } + }, + "node_modules/es6-promise": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz", + "integrity": "sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM=", + "dev": true + }, + "node_modules/es6-promisify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", + "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", + "dev": true, + "dependencies": { + "es6-promise": "^4.0.3" + } + }, + "node_modules/es6-promisify/node_modules/es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", + "dev": true + }, + "node_modules/es6-set": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", + "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", + "dev": true, + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-symbol": "3.1.1", + "event-emitter": "~0.3.5" + } + }, + "node_modules/es6-set/node_modules/es6-symbol": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", + "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "dev": true, + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "node_modules/es6-symbol": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "dev": true, + "dependencies": { + "d": "^1.0.1", + "ext": "^1.1.2" + } + }, + "node_modules/es6-weak-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", + "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", + "dev": true, + "dependencies": { + "d": "1", + "es5-ext": "^0.10.46", + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/escalade": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.0.2.tgz", + "integrity": "sha512-gPYAU37hYCUhW5euPeR+Y74F7BL+IBsV93j5cvGriSaD1aG6MGsqsV1yamRdrWrb2j3aiZvb0X+UBOWpx3JWtQ==", + "dev": true + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "node_modules/escodegen": { + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", + "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", + "dev": true, + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/escodegen/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true + }, + "node_modules/escope": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", + "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", + "dev": true, + "dependencies": { + "es6-map": "^0.1.3", + "es6-weak-map": "^2.0.1", + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "node_modules/eslint": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.0.1.tgz", + "integrity": "sha512-D5nG2rErquLUstgUaxJlWB5+gu+U/3VDY0fk/Iuq8y9CUFy/7Y6oF4N2cR1tV8knzQvciIbfqfohd359xTLIKQ==", + "dev": true, + "dependencies": { + "ajv": "^6.5.0", + "babel-code-frame": "^6.26.0", + "chalk": "^2.1.0", + "cross-spawn": "^6.0.5", + "debug": "^3.1.0", + "doctrine": "^2.1.0", + "eslint-scope": "^4.0.0", + "eslint-visitor-keys": "^1.0.0", + "espree": "^4.0.0", + "esquery": "^1.0.1", + "esutils": "^2.0.2", + "file-entry-cache": "^2.0.0", + "functional-red-black-tree": "^1.0.1", + "glob": "^7.1.2", + "globals": "^11.5.0", + "ignore": "^3.3.3", + "imurmurhash": "^0.1.4", + "inquirer": "^5.2.0", + "is-resolvable": "^1.1.0", + "js-yaml": "^3.11.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.5", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.2", + "path-is-inside": "^1.0.2", + "pluralize": "^7.0.0", + "progress": "^2.0.0", + "regexpp": "^1.1.0", + "require-uncached": "^1.0.3", + "semver": "^5.5.0", + "string.prototype.matchall": "^2.0.0", + "strip-ansi": "^4.0.0", + "strip-json-comments": "^2.0.1", + "table": "^4.0.3", + "text-table": "^0.2.0" + } + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml": { + "version": "1.0.16", + "resolved": "https://registry.npmjs.org/eslint-plugin-no-unsafe-innerhtml/-/eslint-plugin-no-unsafe-innerhtml-1.0.16.tgz", + "integrity": "sha1-fQKHjI6b95FriINtWsEitC8VGTI=", + "dev": true, + "dependencies": { + "eslint": "^3.7.1" + } + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/acorn": { + "version": "5.7.4", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz", + "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==", + "dev": true + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/acorn-jsx": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", + "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", + "dev": true, + "dependencies": { + "acorn": "^3.0.4" + } + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/acorn-jsx/node_modules/acorn": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", + "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", + "dev": true + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/ajv": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", + "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", + "dev": true, + "dependencies": { + "co": "^4.6.0", + "json-stable-stringify": "^1.0.1" + } + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/ajv-keywords": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz", + "integrity": "sha1-MU3QpLM2j609/NxU7eYXG4htrzw=", + "dev": true + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/ansi-escapes": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", + "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", + "dev": true + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/cli-cursor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", + "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", + "dev": true, + "dependencies": { + "restore-cursor": "^1.0.1" + } + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/eslint": { + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-3.19.0.tgz", + "integrity": "sha1-yPxiAcf0DdCJQbh8CFdnOGpnmsw=", + "dev": true, + "dependencies": { + "babel-code-frame": "^6.16.0", + "chalk": "^1.1.3", + "concat-stream": "^1.5.2", + "debug": "^2.1.1", + "doctrine": "^2.0.0", + "escope": "^3.6.0", + "espree": "^3.4.0", + "esquery": "^1.0.0", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "file-entry-cache": "^2.0.0", + "glob": "^7.0.3", + "globals": "^9.14.0", + "ignore": "^3.2.0", + "imurmurhash": "^0.1.4", + "inquirer": "^0.12.0", + "is-my-json-valid": "^2.10.0", + "is-resolvable": "^1.0.0", + "js-yaml": "^3.5.1", + "json-stable-stringify": "^1.0.0", + "levn": "^0.3.0", + "lodash": "^4.0.0", + "mkdirp": "^0.5.0", + "natural-compare": "^1.4.0", + "optionator": "^0.8.2", + "path-is-inside": "^1.0.1", + "pluralize": "^1.2.1", + "progress": "^1.1.8", + "require-uncached": "^1.0.2", + "shelljs": "^0.7.5", + "strip-bom": "^3.0.0", + "strip-json-comments": "~2.0.1", + "table": "^3.7.8", + "text-table": "~0.2.0", + "user-home": "^2.0.0" + } + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/espree": { + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz", + "integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==", + "dev": true, + "dependencies": { + "acorn": "^5.5.0", + "acorn-jsx": "^3.0.0" + } + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/figures": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", + "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5", + "object-assign": "^4.1.0" + } + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/inquirer": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-0.12.0.tgz", + "integrity": "sha1-HvK/1jUE3wvHV4X/+MLEHfEvB34=", + "dev": true, + "dependencies": { + "ansi-escapes": "^1.1.0", + "ansi-regex": "^2.0.0", + "chalk": "^1.0.0", + "cli-cursor": "^1.0.1", + "cli-width": "^2.0.0", + "figures": "^1.3.5", + "lodash": "^4.3.0", + "readline2": "^1.0.1", + "run-async": "^0.1.0", + "rx-lite": "^3.1.2", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.0", + "through": "^2.3.6" + } + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "dependencies": { + "number-is-nan": "^1.0.0" + } + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/onetime": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", + "dev": true + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/pluralize": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-1.2.1.tgz", + "integrity": "sha1-0aIUg/0iu0HlihL6NCGCMUCJfEU=", + "dev": true + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/progress": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", + "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=", + "dev": true + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/restore-cursor": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", + "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "dev": true, + "dependencies": { + "exit-hook": "^1.0.0", + "onetime": "^1.0.0" + } + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/run-async": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-0.1.0.tgz", + "integrity": "sha1-yK1KXhEGYeQCp9IbUw4AnyX444k=", + "dev": true, + "dependencies": { + "once": "^1.3.0" + } + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/shelljs": { + "version": "0.7.8", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.8.tgz", + "integrity": "sha1-3svPh0sNHl+3LhSxZKloMEjprLM=", + "dev": true, + "dependencies": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + } + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/slice-ansi": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", + "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=", + "dev": true + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/table": { + "version": "3.8.3", + "resolved": "https://registry.npmjs.org/table/-/table-3.8.3.tgz", + "integrity": "sha1-K7xULw/amGGnVdOUf+/Ys/UThV8=", + "dev": true, + "dependencies": { + "ajv": "^4.7.0", + "ajv-keywords": "^1.0.0", + "chalk": "^1.1.1", + "lodash": "^4.0.0", + "slice-ansi": "0.0.4", + "string-width": "^2.0.0" + } + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/table/node_modules/ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/table/node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/table/node_modules/string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "dependencies": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/table/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "dependencies": { + "ansi-regex": "^3.0.0" + } + }, + "node_modules/eslint-scope": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "dev": true, + "dependencies": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", + "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", + "dev": true + }, + "node_modules/eslint/node_modules/ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "node_modules/eslint/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/eslint/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "dependencies": { + "ansi-regex": "^3.0.0" + } + }, + "node_modules/esm": { + "version": "3.2.25", + "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz", + "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==", + "dev": true + }, + "node_modules/espree": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-4.1.0.tgz", + "integrity": "sha512-I5BycZW6FCVIub93TeVY1s7vjhP9CY6cXCznIRfiig7nRviKZYdRnj/sHEWC6A7WE9RDWOFq9+7OsWSYz8qv2w==", + "dev": true, + "dependencies": { + "acorn": "^6.0.2", + "acorn-jsx": "^5.0.0", + "eslint-visitor-keys": "^1.0.0" + } + }, + "node_modules/espree/node_modules/acorn": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", + "dev": true + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "node_modules/esquery": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", + "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true + }, + "node_modules/esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "dev": true, + "dependencies": { + "estraverse": "^4.1.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + }, + "node_modules/ev-emitter": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ev-emitter/-/ev-emitter-1.1.1.tgz", + "integrity": "sha512-ipiDYhdQSCZ4hSbX4rMW+XzNKMD1prg/sTvoVmSLkuQ1MVlwjJQQA+sW8tMYR3BLUr9KjodFV4pvzunvRhd33Q==", + "dev": true + }, + "node_modules/event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "dev": true, + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "node_modules/event-to-promise": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/event-to-promise/-/event-to-promise-0.8.0.tgz", + "integrity": "sha1-S4TxF3K28l93Uvx02XFTGsb1tiY=", + "dev": true + }, + "node_modules/eventemitter2": { + "version": "0.4.14", + "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz", + "integrity": "sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas=", + "dev": true + }, + "node_modules/events": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.2.0.tgz", + "integrity": "sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==", + "dev": true + }, + "node_modules/evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, + "dependencies": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/execa": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz", + "integrity": "sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==", + "dev": true, + "dependencies": { + "cross-spawn": "^6.0.0", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "dev": true + }, + "node_modules/exit-hook": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", + "integrity": "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=", + "dev": true + }, + "node_modules/expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, + "dependencies": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "node_modules/expand-brackets/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + } + }, + "node_modules/expand-brackets/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + } + }, + "node_modules/expand-tilde": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", + "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", + "dev": true, + "dependencies": { + "homedir-polyfill": "^1.0.1" + } + }, + "node_modules/express": { + "version": "4.17.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", + "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", + "dependencies": { + "accepts": "~1.3.7", + "array-flatten": "1.1.1", + "body-parser": "1.19.0", + "content-disposition": "0.5.3", + "content-type": "~1.0.4", + "cookie": "0.4.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.1.2", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.5", + "qs": "6.7.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.1.2", + "send": "0.17.1", + "serve-static": "1.14.1", + "setprototypeof": "1.1.1", + "statuses": "~1.5.0", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + } + }, + "node_modules/express-sslify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/express-sslify/-/express-sslify-1.2.0.tgz", + "integrity": "sha1-MOhLzu0VV+sYdnK74UMKCioQDZw=" + }, + "node_modules/ext": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", + "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "dev": true, + "dependencies": { + "type": "^2.0.0" + } + }, + "node_modules/ext/node_modules/type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", + "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==", + "dev": true + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + } + }, + "node_modules/extend-shallow/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + } + }, + "node_modules/external-editor": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", + "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", + "dev": true, + "dependencies": { + "chardet": "^0.4.0", + "iconv-lite": "^0.4.17", + "tmp": "^0.0.33" + } + }, + "node_modules/extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "dependencies": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "node_modules/extglob/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "dependencies": { + "is-descriptor": "^1.0.0" + } + }, + "node_modules/extglob/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + } + }, + "node_modules/extglob/node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + } + }, + "node_modules/extglob/node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + } + }, + "node_modules/extglob/node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "node_modules/extract-zip": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz", + "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", + "dev": true, + "dependencies": { + "concat-stream": "^1.6.2", + "debug": "^2.6.9", + "mkdirp": "^0.5.4", + "yauzl": "^2.10.0" + } + }, + "node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-json-parse": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/fast-json-parse/-/fast-json-parse-1.0.3.tgz", + "integrity": "sha512-FRWsaZRWEJ1ESVNbDWmsAlqDk96gPQezzLghafp5J4GUKjbCz3OkAHuZs5TuPEtkbVQERysLp9xv6c24fBm8Aw==", + "dev": true + }, + "node_modules/fast-json-patch": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-2.2.1.tgz", + "integrity": "sha512-4j5uBaTnsYAV5ebkidvxiLUYOwjQ+JSFljeqfTxCrH9bDmlCQaOJFS84oDJ2rAXZq2yskmk3ORfoP9DCwqFNig==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^2.0.1" + } + }, + "node_modules/fast-json-patch/node_modules/fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "node_modules/fast-redact": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-1.5.0.tgz", + "integrity": "sha512-Afo61CgUjkzdvOKDHn08qnZ0kwck38AOGcMlvSGzvJbIab6soAP5rdoQayecGCDsD69AiF9vJBXyq31eoEO2tQ==", + "dev": true + }, + "node_modules/fast-safe-stringify": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz", + "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==", + "dev": true + }, + "node_modules/faye-websocket": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", + "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", + "dev": true, + "dependencies": { + "websocket-driver": ">=0.5.1" + } + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", + "dev": true, + "dependencies": { + "pend": "~1.2.0" + } + }, + "node_modules/figgy-pudding": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", + "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", + "dev": true + }, + "node_modules/figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + } + }, + "node_modules/file-entry-cache": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", + "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", + "dev": true, + "dependencies": { + "flat-cache": "^1.2.1", + "object-assign": "^4.0.1" + } + }, + "node_modules/file-sync-cmp": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/file-sync-cmp/-/file-sync-cmp-0.1.1.tgz", + "integrity": "sha1-peeo/7+kk7Q7kju9TKiaU7Y7YSs=", + "dev": true + }, + "node_modules/file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "dev": true + }, + "node_modules/fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "dependencies": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + } + }, + "node_modules/fill-range/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + } + }, + "node_modules/finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" + } + }, + "node_modules/find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dev": true, + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + } + }, + "node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "dependencies": { + "locate-path": "^3.0.0" + } + }, + "node_modules/findup-sync": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz", + "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=", + "dev": true, + "dependencies": { + "glob": "~5.0.0" + } + }, + "node_modules/findup-sync/node_modules/glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "dev": true, + "dependencies": { + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "node_modules/fined": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz", + "integrity": "sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==", + "dev": true, + "dependencies": { + "expand-tilde": "^2.0.2", + "is-plain-object": "^2.0.3", + "object.defaults": "^1.1.0", + "object.pick": "^1.2.0", + "parse-filepath": "^1.0.1" + } + }, + "node_modules/firefox-profile": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/firefox-profile/-/firefox-profile-1.2.0.tgz", + "integrity": "sha512-TTEFfPOkyaz4EWx/5ZDQC1mJAe3a+JgVcchpIfD4Tvx1UspwlTJRJxOYA35x/z2iJcxaF6aW2rdh6oj6qwgd2g==", + "dev": true, + "dependencies": { + "adm-zip": "~0.4.x", + "archiver": "~2.1.0", + "async": "~2.5.0", + "fs-extra": "~4.0.2", + "ini": "~1.3.3", + "jetpack-id": "1.0.0", + "lazystream": "~1.0.0", + "lodash": "~4.17.2", + "minimist": "^1.1.1", + "uuid": "^3.0.0", + "xml2js": "~0.4.4" + } + }, + "node_modules/firefox-profile/node_modules/archiver": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-2.1.1.tgz", + "integrity": "sha1-/2YrSnggFJSj7lRNOjP+dJZQnrw=", + "dev": true, + "dependencies": { + "archiver-utils": "^1.3.0", + "async": "^2.0.0", + "buffer-crc32": "^0.2.1", + "glob": "^7.0.0", + "lodash": "^4.8.0", + "readable-stream": "^2.0.0", + "tar-stream": "^1.5.0", + "zip-stream": "^1.2.0" + } + }, + "node_modules/firefox-profile/node_modules/async": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/async/-/async-2.5.0.tgz", + "integrity": "sha512-e+lJAJeNWuPCNyxZKOBdaJGyLGHugXVQtrAwtuAe2vhxTYxFTKE73p8JuTmdH0qdQZtDvI4dhJwjZc5zsfIsYw==", + "dev": true, + "dependencies": { + "lodash": "^4.14.0" + } + }, + "node_modules/first-chunk-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-2.0.0.tgz", + "integrity": "sha1-G97NuOCDwGZLkZRVgVd6Q6nzHXA=", + "dev": true, + "dependencies": { + "readable-stream": "^2.0.2" + } + }, + "node_modules/fizzy-ui-utils": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/fizzy-ui-utils/-/fizzy-ui-utils-2.0.7.tgz", + "integrity": "sha512-CZXDVXQ1If3/r8s0T+v+qVeMshhfcuq0rqIFgJnrtd+Bu8GmDmqMjntjUePypVtjHXKJ6V4sw9zeyox34n9aCg==", + "dev": true, + "dependencies": { + "desandro-matches-selector": "^2.0.0" + } + }, + "node_modules/flagged-respawn": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz", + "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==", + "dev": true + }, + "node_modules/flat-cache": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.4.tgz", + "integrity": "sha512-VwyB3Lkgacfik2vhqR4uv2rvebqmDvFu4jlN/C1RzWoJEo8I7z4Q404oiqYCkq41mni8EzQnm95emU9seckwtg==", + "dev": true, + "dependencies": { + "circular-json": "^0.3.1", + "graceful-fs": "^4.1.2", + "rimraf": "~2.6.2", + "write": "^0.2.1" + } + }, + "node_modules/flat-cache/node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + } + }, + "node_modules/flatstr": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/flatstr/-/flatstr-1.0.12.tgz", + "integrity": "sha512-4zPxDyhCyiN2wIAtSLI6gc82/EjqZc1onI4Mz/l0pWrAlsSfYH/2ZIcU+e3oA2wDwbzIWNKwa23F8rh6+DRWkw==", + "dev": true + }, + "node_modules/flipclock": { + "version": "0.7.8", + "resolved": "https://registry.npmjs.org/flipclock/-/flipclock-0.7.8.tgz", + "integrity": "sha1-838ffKkETZAsH+4fGuf0vR7vGlQ=", + "dev": true, + "dependencies": { + "jquery": ">=1.7" + } + }, + "node_modules/fluent-syntax": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/fluent-syntax/-/fluent-syntax-0.7.0.tgz", + "integrity": "sha512-T0iqfhC40jrs3aDjYOKgzIQjjhsH2Fa6LnXB6naPv0ymW3DeYMUFa89y9aLKMpi1P9nl2vEimK7blx4tVnUWBg==", + "dev": true + }, + "node_modules/flush-write-stream": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", + "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "readable-stream": "^2.3.6" + } + }, + "node_modules/for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true + }, + "node_modules/for-own": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", + "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "dev": true, + "dependencies": { + "for-in": "^1.0.1" + } + }, + "node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true + }, + "node_modules/form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "node_modules/forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" + }, + "node_modules/fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dev": true, + "dependencies": { + "map-cache": "^0.2.2" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" + }, + "node_modules/from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + } + }, + "node_modules/fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", + "dev": true + }, + "node_modules/fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "node_modules/fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.0.1.tgz", + "integrity": "sha512-p+CXqK/iLvDESUWdn3NA3JVO9HxdfI+iXx8xR3DqWgKZvQNiEVpAyUQo0lmwz8rqksb4xaGerG291xuwwhX2kA==", + "dev": true, + "optional": true + }, + "node_modules/ftp": { + "version": "0.3.10", + "resolved": "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz", + "integrity": "sha1-kZfYYa2BQvPmPVqDv+TFn3MwiF0=", + "dev": true, + "dependencies": { + "readable-stream": "1.1.x", + "xregexp": "2.0.0" + } + }, + "node_modules/ftp/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "node_modules/ftp/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "node_modules/functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "node_modules/fx-runner": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/fx-runner/-/fx-runner-1.0.9.tgz", + "integrity": "sha1-eyPzdz3HaqzELxHZr/J2lnXLY/A=", + "dev": true, + "dependencies": { + "commander": "2.9.0", + "lodash": "4.17.10", + "shell-quote": "1.6.1", + "spawn-sync": "1.0.15", + "when": "3.7.7", + "which": "1.2.4", + "winreg": "0.0.12" + } + }, + "node_modules/fx-runner/node_modules/commander": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", + "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=", + "dev": true, + "dependencies": { + "graceful-readlink": ">= 1.0.0" + } + }, + "node_modules/fx-runner/node_modules/is-absolute": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-0.1.7.tgz", + "integrity": "sha1-hHSREZ/MtftDYhfMc39/qtUPYD8=", + "dev": true, + "dependencies": { + "is-relative": "^0.1.0" + } + }, + "node_modules/fx-runner/node_modules/is-relative": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-0.1.3.tgz", + "integrity": "sha1-kF/uiuhvRbPsYUvDwVyGnfCHboI=", + "dev": true + }, + "node_modules/fx-runner/node_modules/isexe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-1.1.2.tgz", + "integrity": "sha1-NvPiLmB1CSD15yQaR2qMakInWtA=", + "dev": true + }, + "node_modules/fx-runner/node_modules/lodash": { + "version": "4.17.10", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", + "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", + "dev": true + }, + "node_modules/fx-runner/node_modules/which": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/which/-/which-1.2.4.tgz", + "integrity": "sha1-FVf5YIBgTlsRs1meufRbUKnv1yI=", + "dev": true, + "dependencies": { + "is-absolute": "^0.1.7", + "isexe": "^1.1.1" + } + }, + "node_modules/gaze": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", + "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", + "dev": true, + "dependencies": { + "globule": "^1.0.0" + } + }, + "node_modules/generate-function": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz", + "integrity": "sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==", + "dev": true, + "dependencies": { + "is-property": "^1.0.2" + } + }, + "node_modules/generate-object-property": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", + "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=", + "dev": true, + "dependencies": { + "is-property": "^1.0.0" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.1", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", + "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==", + "dev": true + }, + "node_modules/get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, + "node_modules/get-func-name": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", + "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=", + "dev": true + }, + "node_modules/get-size": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/get-size/-/get-size-2.0.3.tgz", + "integrity": "sha512-lXNzT/h/dTjTxRbm9BXb+SGxxzkm97h/PCIKtlN/CBCxxmkkIVV21udumMS93MuVTDX583gqc94v3RjuHmI+2Q==", + "dev": true + }, + "node_modules/get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "dev": true + }, + "node_modules/get-uri": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.4.tgz", + "integrity": "sha512-v7LT/s8kVjs+Tx0ykk1I+H/rbpzkHvuIq87LmeXptcf5sNWm9uQiwjNAt94SJPA1zOlCntmnOlJvVWKmzsxG8Q==", + "dev": true, + "dependencies": { + "data-uri-to-buffer": "1", + "debug": "2", + "extend": "~3.0.2", + "file-uri-to-path": "1", + "ftp": "~0.3.10", + "readable-stream": "2" + } + }, + "node_modules/get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "dev": true + }, + "node_modules/getobject": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/getobject/-/getobject-0.1.0.tgz", + "integrity": "sha1-BHpEl4n6Fg0Bj1SG7ZEyC27HiFw=", + "dev": true + }, + "node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/gettext-parser": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/gettext-parser/-/gettext-parser-1.1.0.tgz", + "integrity": "sha1-LFpmONiTk0ubVQN9CtgstwBLJnk=", + "dev": true, + "dependencies": { + "encoding": "^0.1.11" + } + }, + "node_modules/git-rev-sync": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/git-rev-sync/-/git-rev-sync-1.9.1.tgz", + "integrity": "sha1-oMLj3TkqvPa3aWLif8dfsyI0Sc4=", + "dev": true, + "dependencies": { + "escape-string-regexp": "1.0.5", + "graceful-fs": "4.1.11", + "shelljs": "0.7.7" + } + }, + "node_modules/git-rev-sync/node_modules/graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "dev": true + }, + "node_modules/git-rev-sync/node_modules/shelljs": { + "version": "0.7.7", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.7.tgz", + "integrity": "sha1-svXHfvlxSPS09uImguELuoZnz/E=", + "dev": true, + "dependencies": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + } + }, + "node_modules/glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "node_modules/glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "dependencies": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + } + }, + "node_modules/global": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", + "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", + "dev": true, + "dependencies": { + "min-document": "^2.19.0", + "process": "^0.11.10" + } + }, + "node_modules/global-dirs": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", + "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", + "dev": true, + "dependencies": { + "ini": "^1.3.4" + } + }, + "node_modules/global-modules": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", + "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", + "dev": true, + "dependencies": { + "global-prefix": "^1.0.1", + "is-windows": "^1.0.1", + "resolve-dir": "^1.0.0" + } + }, + "node_modules/global-prefix": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", + "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", + "dev": true, + "dependencies": { + "expand-tilde": "^2.0.2", + "homedir-polyfill": "^1.0.1", + "ini": "^1.3.4", + "is-windows": "^1.0.1", + "which": "^1.2.14" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true + }, + "node_modules/globule": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.2.tgz", + "integrity": "sha512-7IDTQTIu2xzXkT+6mlluidnWo+BypnbSoEVVQCGfzqnl5Ik8d3e1d4wycb8Rj9tWW+Z39uPWsdlquqiqPCd/pA==", + "dev": true, + "dependencies": { + "glob": "~7.1.1", + "lodash": "~4.17.10", + "minimatch": "~3.0.2" + } + }, + "node_modules/got": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", + "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", + "dev": true, + "dependencies": { + "create-error-class": "^3.0.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-redirect": "^1.0.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "lowercase-keys": "^1.0.0", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "unzip-response": "^2.0.1", + "url-parse-lax": "^1.0.0" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", + "dev": true + }, + "node_modules/graceful-readlink": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", + "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=", + "dev": true + }, + "node_modules/graphlib": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.8.tgz", + "integrity": "sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==", + "dev": true, + "dependencies": { + "lodash": "^4.17.15" + } + }, + "node_modules/growl": { + "version": "1.10.5", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", + "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", + "dev": true + }, + "node_modules/growly": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", + "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", + "dev": true + }, + "node_modules/grunt": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.2.1.tgz", + "integrity": "sha512-zgJjn9N56tScvRt/y0+1QA+zDBnKTrkpyeSBqQPLcZvbqTD/oyGMrdZQXmm6I3828s+FmPvxc3Xv+lgKFtudOw==", + "dev": true, + "dependencies": { + "dateformat": "~3.0.3", + "eventemitter2": "~0.4.13", + "exit": "~0.1.2", + "findup-sync": "~0.3.0", + "glob": "~7.1.6", + "grunt-cli": "~1.3.2", + "grunt-known-options": "~1.1.0", + "grunt-legacy-log": "~2.0.0", + "grunt-legacy-util": "~1.1.1", + "iconv-lite": "~0.4.13", + "js-yaml": "~3.14.0", + "minimatch": "~3.0.4", + "mkdirp": "~1.0.4", + "nopt": "~3.0.6", + "rimraf": "~3.0.2" + } + }, + "node_modules/grunt-cli": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.3.2.tgz", + "integrity": "sha512-8OHDiZZkcptxVXtMfDxJvmN7MVJNE8L/yIcPb4HB7TlyFD1kDvjHrb62uhySsU14wJx9ORMnTuhRMQ40lH/orQ==", + "dev": true, + "dependencies": { + "grunt-known-options": "~1.1.0", + "interpret": "~1.1.0", + "liftoff": "~2.5.0", + "nopt": "~4.0.1", + "v8flags": "~3.1.1" + } + }, + "node_modules/grunt-cli/node_modules/nopt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz", + "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==", + "dev": true, + "dependencies": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "node_modules/grunt-contrib-clean": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/grunt-contrib-clean/-/grunt-contrib-clean-1.1.0.tgz", + "integrity": "sha1-Vkq/LQN4qYOhW54/MO51tzjEBjg=", + "dev": true, + "dependencies": { + "async": "^1.5.2", + "rimraf": "^2.5.1" + } + }, + "node_modules/grunt-contrib-clean/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + } + }, + "node_modules/grunt-contrib-connect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/grunt-contrib-connect/-/grunt-contrib-connect-1.0.2.tgz", + "integrity": "sha1-XPkzuRpnOGBEJzwLJERgPNmIebo=", + "dev": true, + "dependencies": { + "async": "^1.5.2", + "connect": "^3.4.0", + "connect-livereload": "^0.5.0", + "http2": "^3.3.4", + "morgan": "^1.6.1", + "opn": "^4.0.0", + "portscanner": "^1.0.0", + "serve-index": "^1.7.1", + "serve-static": "^1.10.0" + } + }, + "node_modules/grunt-contrib-copy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/grunt-contrib-copy/-/grunt-contrib-copy-1.0.0.tgz", + "integrity": "sha1-cGDGWB6QS4qw0A8HbgqPbj58NXM=", + "dev": true, + "dependencies": { + "chalk": "^1.1.1", + "file-sync-cmp": "^0.1.0" + } + }, + "node_modules/grunt-contrib-copy/node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "node_modules/grunt-contrib-copy/node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "node_modules/grunt-contrib-copy/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + }, + "node_modules/grunt-contrib-pug": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/grunt-contrib-pug/-/grunt-contrib-pug-1.0.0.tgz", + "integrity": "sha1-tSWlwK/wRiL3Vw4x+SQQbxb4G0Y=", + "dev": true, + "dependencies": { + "chalk": "^1.0.0", + "pug": "^2.0.0-alpha3" + } + }, + "node_modules/grunt-contrib-pug/node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "node_modules/grunt-contrib-pug/node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "node_modules/grunt-contrib-pug/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + }, + "node_modules/grunt-contrib-stylus": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/grunt-contrib-stylus/-/grunt-contrib-stylus-1.2.0.tgz", + "integrity": "sha1-R9RG7wVESW7/naQY0A9XdFQ0crs=", + "dev": true, + "dependencies": { + "async": "^1.5.2", + "chalk": "^1.0.0", + "lodash": "^4.0.0", + "nib": "^1.1.0", + "stylus": "^0.54.0" + } + }, + "node_modules/grunt-contrib-stylus/node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "node_modules/grunt-contrib-stylus/node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "node_modules/grunt-contrib-stylus/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + }, + "node_modules/grunt-contrib-watch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/grunt-contrib-watch/-/grunt-contrib-watch-1.1.0.tgz", + "integrity": "sha512-yGweN+0DW5yM+oo58fRu/XIRrPcn3r4tQx+nL7eMRwjpvk+rQY6R8o94BPK0i2UhTg9FN21hS+m8vR8v9vXfeg==", + "dev": true, + "dependencies": { + "async": "^2.6.0", + "gaze": "^1.1.0", + "lodash": "^4.17.10", + "tiny-lr": "^1.1.1" + } + }, + "node_modules/grunt-contrib-watch/node_modules/async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dev": true, + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/grunt-crx": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/grunt-crx/-/grunt-crx-1.0.5.tgz", + "integrity": "sha1-nU5QHO8WtyF3KmBBxNQdH5KFirU=", + "dev": true, + "dependencies": { + "crx": "^3.0.1", + "es6-promise": "^3.0.0", + "mkdirp": "^0.5.0", + "os-homedir": "^1.0.1", + "xtend": "^4.0.1" + } + }, + "node_modules/grunt-exec": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/grunt-exec/-/grunt-exec-3.0.0.tgz", + "integrity": "sha512-cgAlreXf3muSYS5LzW0Cc4xHK03BjFOYk0MqCQ/MZ3k1Xz2GU7D+IAJg4UKicxpO+XdONJdx/NJ6kpy2wI+uHg==", + "dev": true + }, + "node_modules/grunt-known-options": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.1.tgz", + "integrity": "sha512-cHwsLqoighpu7TuYj5RonnEuxGVFnztcUqTqp5rXFGYL4OuPFofwC4Ycg7n9fYwvK6F5WbYgeVOwph9Crs2fsQ==", + "dev": true + }, + "node_modules/grunt-legacy-log": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-2.0.0.tgz", + "integrity": "sha512-1m3+5QvDYfR1ltr8hjiaiNjddxGdQWcH0rw1iKKiQnF0+xtgTazirSTGu68RchPyh1OBng1bBUjLmX8q9NpoCw==", + "dev": true, + "dependencies": { + "colors": "~1.1.2", + "grunt-legacy-log-utils": "~2.0.0", + "hooker": "~0.2.3", + "lodash": "~4.17.5" + } + }, + "node_modules/grunt-legacy-log-utils": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.0.1.tgz", + "integrity": "sha512-o7uHyO/J+i2tXG8r2bZNlVk20vlIFJ9IEYyHMCQGfWYru8Jv3wTqKZzvV30YW9rWEjq0eP3cflQ1qWojIe9VFA==", + "dev": true, + "dependencies": { + "chalk": "~2.4.1", + "lodash": "~4.17.10" + } + }, + "node_modules/grunt-legacy-util": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-1.1.1.tgz", + "integrity": "sha512-9zyA29w/fBe6BIfjGENndwoe1Uy31BIXxTH3s8mga0Z5Bz2Sp4UCjkeyv2tI449ymkx3x26B+46FV4fXEddl5A==", + "dev": true, + "dependencies": { + "async": "~1.5.2", + "exit": "~0.1.1", + "getobject": "~0.1.0", + "hooker": "~0.2.3", + "lodash": "~4.17.10", + "underscore.string": "~3.3.4", + "which": "~1.3.0" + } + }, + "node_modules/grunt-mocha-test": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/grunt-mocha-test/-/grunt-mocha-test-0.13.3.tgz", + "integrity": "sha512-zQGEsi3d+ViPPi7/4jcj78afKKAKiAA5n61pknQYi25Ugik+aNOuRmiOkmb8mN2CeG8YxT+YdT1H1Q7B/eNkoQ==", + "dev": true, + "dependencies": { + "hooker": "^0.2.3", + "mkdirp": "^0.5.0" + } + }, + "node_modules/grunt-webpack": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/grunt-webpack/-/grunt-webpack-3.1.3.tgz", + "integrity": "sha512-SaZ8K8lG4iTxs7ClZxOWCf3kxqS2y+Eel8SbaEGgBKwhAp6e45beIu+vhBZRLX3vonKML2kjemKsQ21REaqNFQ==", + "dev": true, + "dependencies": { + "deep-for-each": "^2.0.2", + "lodash": "^4.7.0" + } + }, + "node_modules/grunt/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true + }, + "node_modules/har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true + }, + "node_modules/har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "dev": true, + "dependencies": { + "ajv": "^6.12.3", + "har-schema": "^2.0.0" + } + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1" + } + }, + "node_modules/has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + } + }, + "node_modules/has-color": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", + "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", + "dev": true + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "node_modules/has-symbols": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", + "dev": true + }, + "node_modules/has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dev": true, + "dependencies": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "node_modules/has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dev": true, + "dependencies": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + } + }, + "node_modules/has-values/node_modules/kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + } + }, + "node_modules/hasbin": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/hasbin/-/hasbin-1.2.3.tgz", + "integrity": "sha1-eMWSaJPIAhXCtWiuH9P8q3omlrA=", + "dev": true, + "dependencies": { + "async": "~1.5" + } + }, + "node_modules/hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + } + }, + "node_modules/hash-base/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/hash-base/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "node_modules/hash-base/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, + "node_modules/hash-base/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "node_modules/he": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", + "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", + "dev": true + }, + "node_modules/highlight.js": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.4.1.tgz", + "integrity": "sha512-yR5lWvNz7c85OhVAEAeFhVCc/GV4C30Fjzc/rCP0aCWzc1UUOPUk55dK/qdwTZHBvMZo+eZ2jpk62ndX/xMFlg==", + "dev": true + }, + "node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "dev": true, + "dependencies": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/home-or-tmp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", + "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", + "dev": true, + "dependencies": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.1" + } + }, + "node_modules/homedir-polyfill": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", + "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", + "dev": true, + "dependencies": { + "parse-passwd": "^1.0.0" + } + }, + "node_modules/hooker": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz", + "integrity": "sha1-uDT3I8xKJCqmWWNFnfbZhMXT2Vk=", + "dev": true + }, + "node_modules/hosted-git-info": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", + "dev": true + }, + "node_modules/htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "dev": true, + "dependencies": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + } + }, + "node_modules/htmlparser2/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "node_modules/htmlparser2/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, + "node_modules/htmlparser2/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/http-errors": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", + "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + } + }, + "node_modules/http-parser-js": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.2.tgz", + "integrity": "sha512-opCO9ASqg5Wy2FNo7A0sxy71yGbbkJJXLdgMK04Tcypw9jr2MgWbyubb0+WdmDmGnFflO7fRbqbaihh/ENDlRQ==", + "dev": true + }, + "node_modules/http-proxy-agent": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", + "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", + "dev": true, + "dependencies": { + "agent-base": "4", + "debug": "3.1.0" + } + }, + "node_modules/http-proxy-agent/node_modules/debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "node_modules/http2": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/http2/-/http2-3.3.7.tgz", + "integrity": "sha512-puSi8M8WNlFJm9Pk4c/Mbz9Gwparuj3gO9/RRO5zv6piQ0FY+9Qywp0PdWshYgsMJSalixFY7eC6oPu0zRxLAQ==", + "dev": true + }, + "node_modules/https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", + "dev": true + }, + "node_modules/https-proxy-agent": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", + "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==", + "dev": true, + "dependencies": { + "agent-base": "^4.3.0", + "debug": "^3.1.0" + } + }, + "node_modules/https-proxy-agent/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/https-proxy-agent/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "node_modules/ieee754": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", + "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", + "dev": true + }, + "node_modules/iferr": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "dev": true + }, + "node_modules/ignore": { + "version": "3.3.10", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", + "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", + "dev": true + }, + "node_modules/immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=", + "dev": true + }, + "node_modules/import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "dev": true + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "node_modules/infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "dev": true + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "node_modules/ini": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.7.tgz", + "integrity": "sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ==", + "dev": true + }, + "node_modules/inject-loader": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/inject-loader/-/inject-loader-3.0.1.tgz", + "integrity": "sha512-0Kd4NqMJUhknG4ECiJ/mgyHJBpfBBWZ3IKHl2BLNQiFtMO7/xiv9mmHl7mGvE0iKrBeQAZdMcQP3sMXZN0cqeg==", + "dev": true, + "dependencies": { + "babel-core": "~6" + } + }, + "node_modules/inquirer": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-5.2.0.tgz", + "integrity": "sha512-E9BmnJbAKLPGonz0HeWHtbKf+EeSP93paWO3ZYoUpq/aowXvYGjjCSuashhXPpzbArIjBbji39THkxTz9ZeEUQ==", + "dev": true, + "dependencies": { + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.0", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^2.1.0", + "figures": "^2.0.0", + "lodash": "^4.3.0", + "mute-stream": "0.0.7", + "run-async": "^2.2.0", + "rxjs": "^5.5.2", + "string-width": "^2.1.0", + "strip-ansi": "^4.0.0", + "through": "^2.3.6" + } + }, + "node_modules/inquirer/node_modules/ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "node_modules/inquirer/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "dependencies": { + "ansi-regex": "^3.0.0" + } + }, + "node_modules/interpret": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", + "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=", + "dev": true + }, + "node_modules/invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, + "dependencies": { + "loose-envify": "^1.0.0" + } + }, + "node_modules/invert-kv": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", + "dev": true + }, + "node_modules/ip": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", + "dev": true + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" + }, + "node_modules/is-absolute": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", + "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==", + "dev": true, + "dependencies": { + "is-relative": "^1.0.0", + "is-windows": "^1.0.1" + } + }, + "node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + } + }, + "node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + } + }, + "node_modules/is-arguments": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", + "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==", + "dev": true + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "node_modules/is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "dependencies": { + "binary-extensions": "^1.0.0" + } + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "node_modules/is-callable": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", + "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==", + "dev": true + }, + "node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + } + }, + "node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + } + }, + "node_modules/is-date-object": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", + "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", + "dev": true + }, + "node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "node_modules/is-descriptor/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + }, + "node_modules/is-expression": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-3.0.0.tgz", + "integrity": "sha1-Oayqa+f9HzRx3ELHQW5hwkMXrJ8=", + "dev": true, + "dependencies": { + "acorn": "~4.0.2", + "object-assign": "^4.0.1" + } + }, + "node_modules/is-expression/node_modules/acorn": { + "version": "4.0.13", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", + "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", + "dev": true + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "node_modules/is-finite": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", + "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", + "dev": true + }, + "node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "node_modules/is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.0" + } + }, + "node_modules/is-installed-globally": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", + "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", + "dev": true, + "dependencies": { + "global-dirs": "^0.1.0", + "is-path-inside": "^1.0.0" + } + }, + "node_modules/is-mergeable-object": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-mergeable-object/-/is-mergeable-object-1.1.0.tgz", + "integrity": "sha512-JfyDDwUdtS4yHCgUpxOyKB9dnfZ0gecufxB0eytX6BmSXSE+8dbxDGt+V7CNRIRJ9sYFV/WQt2KJG6hNob2sBw==", + "dev": true + }, + "node_modules/is-my-ip-valid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz", + "integrity": "sha512-gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==", + "dev": true + }, + "node_modules/is-my-json-valid": { + "version": "2.20.5", + "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.20.5.tgz", + "integrity": "sha512-VTPuvvGQtxvCeghwspQu1rBgjYUT6FGxPlvFKbYuFtgc4ADsX3U5ihZOYN0qyU6u+d4X9xXb0IT5O6QpXKt87A==", + "dev": true, + "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" + } + }, + "node_modules/is-npm": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", + "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", + "dev": true + }, + "node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + } + }, + "node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + } + }, + "node_modules/is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "dev": true + }, + "node_modules/is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "dev": true, + "dependencies": { + "path-is-inside": "^1.0.1" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + } + }, + "node_modules/is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", + "dev": true + }, + "node_modules/is-property": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", + "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=", + "dev": true + }, + "node_modules/is-redirect": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", + "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", + "dev": true + }, + "node_modules/is-regex": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz", + "integrity": "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.1" + } + }, + "node_modules/is-relative": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", + "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", + "dev": true, + "dependencies": { + "is-unc-path": "^1.0.0" + } + }, + "node_modules/is-resolvable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", + "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", + "dev": true + }, + "node_modules/is-retry-allowed": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", + "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==", + "dev": true + }, + "node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "node_modules/is-symbol": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", + "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.1" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "node_modules/is-unc-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", + "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", + "dev": true, + "dependencies": { + "unc-path-regex": "^0.1.2" + } + }, + "node_modules/is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true + }, + "node_modules/is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true + }, + "node_modules/is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "node_modules/isotope-layout": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/isotope-layout/-/isotope-layout-3.0.6.tgz", + "integrity": "sha512-z2ZKablhocXhoNyWwzJPFd7u7FWbYbVJA51Nvsqsod8jH2ExGc1SwDsSWKE54e3PhXzqf2yZPhFSq/c2MR1arw==", + "dev": true, + "dependencies": { + "desandro-matches-selector": "^2.0.0", + "fizzy-ui-utils": "^2.0.4", + "get-size": "^2.0.0", + "masonry-layout": "^4.1.0", + "outlayer": "^2.1.0" + } + }, + "node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "node_modules/jed": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/jed/-/jed-1.1.1.tgz", + "integrity": "sha1-elSbvZ/+FYWwzQoZHiAwVb7ldLQ=", + "dev": true + }, + "node_modules/jetpack-id": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/jetpack-id/-/jetpack-id-1.0.0.tgz", + "integrity": "sha1-LPn7rkbYB0/Ba33gBxyO/rykc6Y=", + "dev": true + }, + "node_modules/jquery": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.5.1.tgz", + "integrity": "sha512-XwIBPqcMn57FxfT+Go5pzySnm4KWkT1Tv7gjrpT1srtf8Weynl6R273VJ5GjkRb51IzMp5nbaPjJXMWeju2MKg==", + "dev": true + }, + "node_modules/js-select": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/js-select/-/js-select-0.6.0.tgz", + "integrity": "sha1-woTiKCTVknrsli3N8kcXSu+w0ZA=", + "dev": true, + "dependencies": { + "JSONSelect": "0.2.1", + "traverse": "0.4.x" + } + }, + "node_modules/js-stringify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", + "integrity": "sha1-Fzb939lyTyijaCrcYjCufk6Weds=", + "dev": true + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", + "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + }, + "node_modules/json-merge-patch": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-merge-patch/-/json-merge-patch-0.2.3.tgz", + "integrity": "sha1-+ixrWvh9p3uuKWalidUuI+2B/kA=", + "dev": true, + "dependencies": { + "deep-equal": "^1.0.0" + } + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "node_modules/json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stable-stringify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", + "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "dev": true, + "dependencies": { + "jsonify": "~0.0.0" + } + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "node_modules/json5": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", + "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5" + } + }, + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", + "dev": true + }, + "node_modules/jsonpointer": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.1.0.tgz", + "integrity": "sha512-CXcRvMyTlnR53xMcKnuMzfCA5i/nfblTnnr74CZb6C4vG39eu6w51t7nKmU5MfLfbTgGItliNyjO/ciNPDqClg==", + "dev": true + }, + "node_modules/jsonpointer.js": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/jsonpointer.js/-/jsonpointer.js-0.4.0.tgz", + "integrity": "sha1-ACyxI/dnqv3rAZYTLOXE+ZQcyro=", + "dev": true + }, + "node_modules/JSONSelect": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.2.1.tgz", + "integrity": "sha1-QVQYpSbTP+MddLTe+jyDbUhewgM=", + "dev": true + }, + "node_modules/jsonwebtoken": { + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.2.1.tgz", + "integrity": "sha512-l8rUBr0fqYYwPc8/ZGrue7GiW7vWdZtZqelxo4Sd5lMvuEeCK8/wS54sEo6tJhdZ6hqfutsj6COgC0d1XdbHGw==", + "dev": true, + "dependencies": { + "jws": "^3.1.4", + "lodash.includes": "^4.3.0", + "lodash.isboolean": "^3.0.3", + "lodash.isinteger": "^4.0.4", + "lodash.isnumber": "^3.0.3", + "lodash.isplainobject": "^4.0.6", + "lodash.isstring": "^4.0.1", + "lodash.once": "^4.0.0", + "ms": "^2.1.1", + "xtend": "^4.0.1" + } + }, + "node_modules/jsonwebtoken/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "node_modules/jstransformer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", + "integrity": "sha1-7Yvwkh4vPx7U1cGkT2hwntJHIsM=", + "dev": true, + "dependencies": { + "is-promise": "^2.0.0", + "promise": "^7.0.1" + } + }, + "node_modules/jstransformer-markdown-it": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/jstransformer-markdown-it/-/jstransformer-markdown-it-2.1.0.tgz", + "integrity": "sha1-aewwzkUYvtWZezjwJ2SOjChekvc=", + "dev": true, + "dependencies": { + "markdown-it": "^8.0.0" + } + }, + "node_modules/jszip": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.5.0.tgz", + "integrity": "sha512-WRtu7TPCmYePR1nazfrtuF216cIVon/3GWOvHS9QR5bIwSbnxtdpma6un3jyGGNhHsKCSzn5Ypk+EkDRvTGiFA==", + "dev": true, + "dependencies": { + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "set-immediate-shim": "~1.0.1" + } + }, + "node_modules/just-extend": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.1.0.tgz", + "integrity": "sha512-ApcjaOdVTJ7y4r08xI5wIqpvwS48Q0PBG4DJROcEkH1f8MdAiNFyFxz3xoL0LWAVwjrwPYZdVHHxhRHcx/uGLA==", + "dev": true + }, + "node_modules/jwa": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", + "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", + "dev": true, + "dependencies": { + "buffer-equal-constant-time": "1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/jws": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", + "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", + "dev": true, + "dependencies": { + "jwa": "^1.4.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true + }, + "node_modules/latest-version": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", + "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", + "dev": true, + "dependencies": { + "package-json": "^4.0.0" + } + }, + "node_modules/lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", + "dev": true + }, + "node_modules/lazystream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", + "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", + "dev": true, + "dependencies": { + "readable-stream": "^2.0.5" + } + }, + "node_modules/lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "dev": true, + "dependencies": { + "invert-kv": "^2.0.0" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true + }, + "node_modules/levenary": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/levenary/-/levenary-1.1.1.tgz", + "integrity": "sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ==", + "dev": true, + "dependencies": { + "leven": "^3.1.0" + } + }, + "node_modules/levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dev": true, + "dependencies": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "node_modules/lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "dev": true, + "dependencies": { + "immediate": "~3.0.5" + } + }, + "node_modules/liftoff": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.5.0.tgz", + "integrity": "sha1-IAkpG7Mc6oYbvxCnwVooyvdcMew=", + "dev": true, + "dependencies": { + "extend": "^3.0.0", + "findup-sync": "^2.0.0", + "fined": "^1.0.1", + "flagged-respawn": "^1.0.0", + "is-plain-object": "^2.0.4", + "object.map": "^1.0.0", + "rechoir": "^0.6.2", + "resolve": "^1.1.7" + } + }, + "node_modules/liftoff/node_modules/findup-sync": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", + "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", + "dev": true, + "dependencies": { + "detect-file": "^1.0.0", + "is-glob": "^3.1.0", + "micromatch": "^3.0.4", + "resolve-dir": "^1.0.1" + } + }, + "node_modules/linkify-it": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", + "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==", + "dev": true, + "dependencies": { + "uc.micro": "^1.0.1" + } + }, + "node_modules/livereload-js": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/livereload-js/-/livereload-js-2.4.0.tgz", + "integrity": "sha512-XPQH8Z2GDP/Hwz2PCDrh2mth4yFejwA1OZ/81Ti3LgKyhDcEjsSsqFWZojHG0va/duGd+WyosY7eXLDoOyqcPw==", + "dev": true + }, + "node_modules/load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + } + }, + "node_modules/load-json-file/node_modules/parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "dependencies": { + "error-ex": "^1.2.0" + } + }, + "node_modules/load-json-file/node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "node_modules/load-json-file/node_modules/strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "dependencies": { + "is-utf8": "^0.2.0" + } + }, + "node_modules/loader-runner": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", + "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", + "dev": true + }, + "node_modules/loader-utils": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + }, + "node_modules/loader-utils/node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + } + }, + "node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "node_modules/lodash": { + "version": "4.17.19", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", + "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==", + "dev": true + }, + "node_modules/lodash.assign": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", + "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=", + "dev": true + }, + "node_modules/lodash.assignin": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", + "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=", + "dev": true + }, + "node_modules/lodash.clone": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clone/-/lodash.clone-4.5.0.tgz", + "integrity": "sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y=", + "dev": true + }, + "node_modules/lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=" + }, + "node_modules/lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", + "dev": true + }, + "node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", + "dev": true + }, + "node_modules/lodash.includes": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", + "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8=", + "dev": true + }, + "node_modules/lodash.isboolean": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", + "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY=", + "dev": true + }, + "node_modules/lodash.isinteger": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", + "integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M=", + "dev": true + }, + "node_modules/lodash.isnumber": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", + "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w=", + "dev": true + }, + "node_modules/lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=", + "dev": true + }, + "node_modules/lodash.isstring": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", + "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=", + "dev": true + }, + "node_modules/lodash.once": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", + "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=", + "dev": true + }, + "node_modules/lodash.set": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz", + "integrity": "sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM=", + "dev": true + }, + "node_modules/lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", + "dev": true + }, + "node_modules/loglevel": { + "version": "1.6.8", + "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.8.tgz", + "integrity": "sha512-bsU7+gc9AJ2SqpzxwU3+1fedl8zAntbtC5XYlt3s2j1hJcn2PsXSmgN8TaLG/J1/2mod4+cE/3vNL70/c1RNCA==", + "dev": true + }, + "node_modules/lolex": { + "version": "2.7.5", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-2.7.5.tgz", + "integrity": "sha512-l9x0+1offnKKIzYVjyXU2SiwhXDLekRzKyhnbyldPHvC7BvLPVpdNUNR2KeMAiCN2D/kLNttZgQD5WjSxuBx3Q==", + "dev": true + }, + "node_modules/long": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", + "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==", + "dev": true + }, + "node_modules/longest": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", + "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", + "dev": true + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true + }, + "node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/macos-release": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/macos-release/-/macos-release-1.1.0.tgz", + "integrity": "sha512-mmLbumEYMi5nXReB9js3WGsB8UE6cDBWyIO62Z4DNx6GbRhDxHNjA1MlzSpJ2S2KM1wyiPRA0d19uHWYYvMHjA==", + "dev": true + }, + "node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "node_modules/make-iterator": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz", + "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.2" + } + }, + "node_modules/map-age-cleaner": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", + "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", + "dev": true, + "dependencies": { + "p-defer": "^1.0.0" + } + }, + "node_modules/map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "dev": true + }, + "node_modules/map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, + "dependencies": { + "object-visit": "^1.0.0" + } + }, + "node_modules/markdown-it": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz", + "integrity": "sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "entities": "~1.1.1", + "linkify-it": "^2.0.0", + "mdurl": "^1.0.1", + "uc.micro": "^1.0.5" + } + }, + "node_modules/masonry-layout": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/masonry-layout/-/masonry-layout-4.2.2.tgz", + "integrity": "sha512-iGtAlrpHNyxaR19CvKC3npnEcAwszXoyJiI8ARV2ePi7fmYhIud25MHK8Zx4P0LCC4d3TNO9+rFa1KoK1OEOaA==", + "dev": true, + "dependencies": { + "get-size": "^2.0.2", + "outlayer": "^2.1.0" + } + }, + "node_modules/md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dev": true, + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=", + "dev": true + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + }, + "node_modules/mem": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", + "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", + "dev": true, + "dependencies": { + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^2.0.0", + "p-is-promise": "^2.0.0" + } + }, + "node_modules/memory-fs": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", + "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "dev": true, + "dependencies": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + }, + "node_modules/micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.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.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "node_modules/miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, + "dependencies": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + } + }, + "node_modules/miller-rabin/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + }, + "node_modules/mime-db": { + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", + "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==" + }, + "node_modules/mime-types": { + "version": "2.1.27", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", + "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", + "dependencies": { + "mime-db": "1.44.0" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + }, + "node_modules/min-document": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", + "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", + "dev": true, + "dependencies": { + "dom-walk": "^0.1.0" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "node_modules/minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", + "dev": true + }, + "node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + } + }, + "node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "node_modules/mississippi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-2.0.0.tgz", + "integrity": "sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==", + "dev": true, + "dependencies": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^2.0.1", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + } + }, + "node_modules/mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "dev": true, + "dependencies": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + } + }, + "node_modules/mixin-deep/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + } + }, + "node_modules/mixin-object": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", + "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", + "dev": true, + "dependencies": { + "for-in": "^0.1.3", + "is-extendable": "^0.1.1" + } + }, + "node_modules/mixin-object/node_modules/for-in": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", + "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=", + "dev": true + }, + "node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5" + } + }, + "node_modules/mocha": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-5.2.0.tgz", + "integrity": "sha512-2IUgKDhc3J7Uug+FxMXuqIyYzH7gJjXECKe/w43IGgQHTSj3InJi+yAA7T24L9bQMRKiUEHxEX37G5JpVUGLcQ==", + "dev": true, + "dependencies": { + "browser-stdout": "1.3.1", + "commander": "2.15.1", + "debug": "3.1.0", + "diff": "3.5.0", + "escape-string-regexp": "1.0.5", + "glob": "7.1.2", + "growl": "1.10.5", + "he": "1.1.1", + "minimatch": "3.0.4", + "mkdirp": "0.5.1", + "supports-color": "5.4.0" + } + }, + "node_modules/mocha/node_modules/commander": { + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz", + "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==", + "dev": true + }, + "node_modules/mocha/node_modules/debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/mocha/node_modules/glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "node_modules/mocha/node_modules/minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "node_modules/mocha/node_modules/mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "dependencies": { + "minimist": "0.0.8" + } + }, + "node_modules/mocha/node_modules/supports-color": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", + "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + } + }, + "node_modules/moment": { + "version": "2.27.0", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.27.0.tgz", + "integrity": "sha512-al0MUK7cpIcglMv3YF13qSgdAIqxHTO7brRtaz3DlSULbqfazqkc5kEjNrLDOM7fsjshoFIihnU8snrP7zUvhQ==", + "dev": true + }, + "node_modules/morgan": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.10.0.tgz", + "integrity": "sha512-AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ==", + "dev": true, + "dependencies": { + "basic-auth": "~2.0.1", + "debug": "2.6.9", + "depd": "~2.0.0", + "on-finished": "~2.3.0", + "on-headers": "~1.0.2" + } + }, + "node_modules/morgan/node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true + }, + "node_modules/move-concurrently": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", + "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "dev": true, + "dependencies": { + "aproba": "^1.1.1", + "copy-concurrently": "^1.0.0", + "fs-write-stream-atomic": "^1.0.8", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.3" + } + }, + "node_modules/move-concurrently/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + } + }, + "node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/multimatch": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", + "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", + "dev": true, + "dependencies": { + "array-differ": "^1.0.0", + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "minimatch": "^3.0.0" + } + }, + "node_modules/mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "dev": true + }, + "node_modules/mv": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/mv/-/mv-2.1.1.tgz", + "integrity": "sha1-rmzg1vbV4KT32JN5jQPB6pVZtqI=", + "dev": true, + "optional": true, + "dependencies": { + "mkdirp": "~0.5.1", + "ncp": "~2.0.0", + "rimraf": "~2.4.0" + } + }, + "node_modules/mv/node_modules/glob": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz", + "integrity": "sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI=", + "dev": true, + "optional": true, + "dependencies": { + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "node_modules/mv/node_modules/rimraf": { + "version": "2.4.5", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.4.5.tgz", + "integrity": "sha1-7nEM5dk6j9uFb7Xqj/Di11k0sto=", + "dev": true, + "optional": true, + "dependencies": { + "glob": "^6.0.1" + } + }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "node_modules/nan": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz", + "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==", + "dev": true, + "optional": true + }, + "node_modules/nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dev": true, + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "node_modules/natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha1-F7CVgZiJef3a/gIB6TG6kzyWy7Q=", + "dev": true + }, + "node_modules/nconf": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/nconf/-/nconf-0.10.0.tgz", + "integrity": "sha512-fKiXMQrpP7CYWJQzKkPPx9hPgmq+YLDyxcG9N8RpiE9FoCkCbzD0NyW0YhE3xn3Aupe7nnDeIx4PFzYehpHT9Q==", + "dev": true, + "dependencies": { + "async": "^1.4.0", + "ini": "^1.3.0", + "secure-keys": "^1.0.0", + "yargs": "^3.19.0" + } + }, + "node_modules/nconf/node_modules/camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true + }, + "node_modules/nconf/node_modules/cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, + "dependencies": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" + } + }, + "node_modules/nconf/node_modules/invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "dev": true + }, + "node_modules/nconf/node_modules/is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "dependencies": { + "number-is-nan": "^1.0.0" + } + }, + "node_modules/nconf/node_modules/lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "dev": true, + "dependencies": { + "invert-kv": "^1.0.0" + } + }, + "node_modules/nconf/node_modules/os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "dev": true, + "dependencies": { + "lcid": "^1.0.0" + } + }, + "node_modules/nconf/node_modules/string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "node_modules/nconf/node_modules/window-size": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.4.tgz", + "integrity": "sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY=", + "dev": true + }, + "node_modules/nconf/node_modules/y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "dev": true + }, + "node_modules/nconf/node_modules/yargs": { + "version": "3.32.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.32.0.tgz", + "integrity": "sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU=", + "dev": true, + "dependencies": { + "camelcase": "^2.0.1", + "cliui": "^3.0.3", + "decamelize": "^1.1.1", + "os-locale": "^1.4.0", + "string-width": "^1.0.1", + "window-size": "^0.1.4", + "y18n": "^3.2.0" + } + }, + "node_modules/ncp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ncp/-/ncp-2.0.0.tgz", + "integrity": "sha1-GVoh1sRuNh0vsSgbo4uR6d9727M=", + "dev": true, + "optional": true + }, + "node_modules/needle": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-2.5.0.tgz", + "integrity": "sha512-o/qITSDR0JCyCKEQ1/1bnUXMmznxabbwi/Y4WwJElf+evwJNFNwIDMCCt5IigFVxgeGBJESLohGtIS9gEzo1fA==", + "dev": true, + "dependencies": { + "debug": "^3.2.6", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } + }, + "node_modules/needle/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/needle/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/needle/node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, + "node_modules/negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true + }, + "node_modules/netmask": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-1.0.6.tgz", + "integrity": "sha1-ICl+idhvb2QA8lDZ9Pa0wZRfzTU=", + "dev": true + }, + "node_modules/next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", + "dev": true + }, + "node_modules/nib": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/nib/-/nib-1.1.2.tgz", + "integrity": "sha1-amnt5AgblcDe+L4CSkyK4MLLtsc=", + "dev": true, + "dependencies": { + "stylus": "0.54.5" + } + }, + "node_modules/nib/node_modules/glob": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.6.tgz", + "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.2", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "node_modules/nib/node_modules/source-map": { + "version": "0.1.43", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "dev": true, + "dependencies": { + "amdefine": ">=0.0.4" + } + }, + "node_modules/nib/node_modules/stylus": { + "version": "0.54.5", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.5.tgz", + "integrity": "sha1-QrlWCTHKcJDOhRWnmLqeaqPW3Hk=", + "dev": true, + "dependencies": { + "css-parse": "1.7.x", + "debug": "*", + "glob": "7.0.x", + "mkdirp": "0.5.x", + "sax": "0.5.x", + "source-map": "0.1.x" + } + }, + "node_modules/nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "node_modules/nise": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.3.tgz", + "integrity": "sha512-Ymbac/94xeIrMf59REBPOv0thr+CJVFMhrlAkW/gjCIE58BGQdCj0x7KRCb3yz+Ga2Rz3E9XXSvUyyxqqhjQAQ==", + "dev": true, + "dependencies": { + "@sinonjs/formatio": "^3.2.1", + "@sinonjs/text-encoding": "^0.7.1", + "just-extend": "^4.0.2", + "lolex": "^5.0.1", + "path-to-regexp": "^1.7.0" + } + }, + "node_modules/nise/node_modules/@sinonjs/formatio": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.2.tgz", + "integrity": "sha512-B8SEsgd8gArBLMD6zpRw3juQ2FVSsmdd7qlevyDqzS9WTCtvF55/gAL+h6gue8ZvPYcdiPdvueM/qm//9XzyTQ==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^1", + "@sinonjs/samsam": "^3.1.0" + } + }, + "node_modules/nise/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "node_modules/nise/node_modules/lolex": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-5.1.2.tgz", + "integrity": "sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/nise/node_modules/path-to-regexp": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", + "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", + "dev": true, + "dependencies": { + "isarray": "0.0.1" + } + }, + "node_modules/node-fetch": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", + "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==", + "engines": { + "node": "4.x || >=6.0.0" + } + }, + "node_modules/node-forge": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.8.5.tgz", + "integrity": "sha512-vFMQIWt+J/7FLNyKouZ9TazT74PRV3wgv9UT4cRjC8BffxFbKXkgIWR42URCPSnHm/QDz6BOlb2Q0U4+VQT67Q==", + "dev": true + }, + "node_modules/node-jose": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/node-jose/-/node-jose-1.1.4.tgz", + "integrity": "sha512-L31IFwL3pWWcMHxxidCY51ezqrDXMkvlT/5pLTfNw5sXmmOLJuN6ug7txzF/iuZN55cRpyOmoJrotwBQIoo5Lw==", + "dev": true, + "dependencies": { + "base64url": "^3.0.1", + "browserify-zlib": "^0.2.0", + "buffer": "^5.5.0", + "es6-promise": "^4.2.8", + "lodash": "^4.17.15", + "long": "^4.0.0", + "node-forge": "^0.8.5", + "process": "^0.11.10", + "react-zlib-js": "^1.0.4", + "uuid": "^3.3.3" + } + }, + "node_modules/node-jose/node_modules/es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", + "dev": true + }, + "node_modules/node-libs-browser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", + "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", + "dev": true, + "dependencies": { + "assert": "^1.1.1", + "browserify-zlib": "^0.2.0", + "buffer": "^4.3.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.11.0", + "domain-browser": "^1.1.1", + "events": "^3.0.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "0.0.1", + "process": "^0.11.10", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.3.3", + "stream-browserify": "^2.0.1", + "stream-http": "^2.7.2", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", + "tty-browserify": "0.0.0", + "url": "^0.11.0", + "util": "^0.11.0", + "vm-browserify": "^1.0.1" + } + }, + "node_modules/node-libs-browser/node_modules/buffer": { + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", + "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", + "dev": true, + "dependencies": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, + "node_modules/node-libs-browser/node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "node_modules/node-libs-browser/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, + "node_modules/node-libs-browser/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/node-libs-browser/node_modules/util": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", + "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", + "dev": true, + "dependencies": { + "inherits": "2.0.3" + } + }, + "node_modules/node-modules-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", + "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", + "dev": true + }, + "node_modules/node-notifier": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-5.2.1.tgz", + "integrity": "sha512-MIBs+AAd6dJ2SklbbE8RUDRlIVhU8MaNLh1A9SUZDUHPiZkWLFde6UNwG41yQHZEToHgJMXqyVZ9UcS/ReOVTg==", + "dev": true, + "dependencies": { + "growly": "^1.3.0", + "semver": "^5.4.1", + "shellwords": "^0.1.1", + "which": "^1.3.0" + } + }, + "node_modules/node-releases": { + "version": "1.1.60", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.60.tgz", + "integrity": "sha512-gsO4vjEdQaTusZAEebUWp2a5d7dF5DYoIpDG7WySnk7BuZDW+GPpHXoXXuYawRBr/9t5q54tirPz79kFIWg4dA==", + "dev": true + }, + "node_modules/node-rsa": { + "version": "0.2.30", + "resolved": "https://registry.npmjs.org/node-rsa/-/node-rsa-0.2.30.tgz", + "integrity": "sha1-iRLiw7G2TM5sp4PKsa8oKzAK3uY=", + "dev": true, + "dependencies": { + "asn1": "0.2.3", + "lodash": "3.3.0" + } + }, + "node_modules/node-rsa/node_modules/lodash": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.3.0.tgz", + "integrity": "sha1-ARzlLQGxTmDq7qdqy5uLpCxwWBs=", + "dev": true + }, + "node_modules/nomnom": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz", + "integrity": "sha1-IVH3Ikcrp55Qp2/BJbuMjy5Nwqc=", + "dev": true, + "dependencies": { + "chalk": "~0.4.0", + "underscore": "~1.6.0" + } + }, + "node_modules/nomnom/node_modules/ansi-styles": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", + "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", + "dev": true + }, + "node_modules/nomnom/node_modules/chalk": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", + "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", + "dev": true, + "dependencies": { + "ansi-styles": "~1.0.0", + "has-color": "~0.1.0", + "strip-ansi": "~0.1.0" + } + }, + "node_modules/nomnom/node_modules/strip-ansi": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", + "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", + "dev": true + }, + "node_modules/nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "dev": true, + "dependencies": { + "abbrev": "1" + } + }, + "node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "dependencies": { + "remove-trailing-separator": "^1.0.1" + } + }, + "node_modules/npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "dependencies": { + "path-key": "^2.0.0" + } + }, + "node_modules/nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "dev": true, + "dependencies": { + "boolbase": "~1.0.0" + } + }, + "node_modules/number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true + }, + "node_modules/oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true + }, + "node_modules/object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, + "dependencies": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + } + }, + "node_modules/object-copy/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + } + }, + "node_modules/object-copy/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + } + }, + "node_modules/object-inspect": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.8.0.tgz", + "integrity": "sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==", + "dev": true + }, + "node_modules/object-is": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.2.tgz", + "integrity": "sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + }, + "node_modules/object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dev": true, + "dependencies": { + "isobject": "^3.0.0" + } + }, + "node_modules/object.assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", + "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.2", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "object-keys": "^1.0.11" + } + }, + "node_modules/object.defaults": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", + "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=", + "dev": true, + "dependencies": { + "array-each": "^1.0.1", + "array-slice": "^1.0.0", + "for-own": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "node_modules/object.map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", + "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=", + "dev": true, + "dependencies": { + "for-own": "^1.0.0", + "make-iterator": "^1.0.0" + } + }, + "node_modules/object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + } + }, + "node_modules/octokit": { + "version": "1.0.0-hello-world", + "resolved": "https://registry.npmjs.org/octokit/-/octokit-1.0.0-hello-world.tgz", + "integrity": "sha1-mX8irutd/iiB54xpQYxJKBqt+Y8=" + }, + "node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dependencies": { + "ee-first": "1.1.1" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "dev": true + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "dependencies": { + "mimic-fn": "^1.0.0" + } + }, + "node_modules/onetime/node_modules/mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + }, + "node_modules/opn": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/opn/-/opn-4.0.2.tgz", + "integrity": "sha1-erwi5kTf9jsKltWrfyeQwPAavJU=", + "dev": true, + "dependencies": { + "object-assign": "^4.0.1", + "pinkie-promise": "^2.0.0" + } + }, + "node_modules/optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "dev": true, + "dependencies": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" + } + }, + "node_modules/os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", + "dev": true + }, + "node_modules/os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, + "node_modules/os-locale": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.0.1.tgz", + "integrity": "sha512-7g5e7dmXPtzcP4bgsZ8ixDVqA7oWYuEz4lOSujeWyliPai4gfVDiFIcwBg3aGCPnmSGfzOKTK3ccPn0CKv3DBw==", + "dev": true, + "dependencies": { + "execa": "^0.10.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + } + }, + "node_modules/os-name": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/os-name/-/os-name-2.0.1.tgz", + "integrity": "sha1-uaOGNhwXrjohc27wWZQFyajF3F4=", + "dev": true, + "dependencies": { + "macos-release": "^1.0.0", + "win-release": "^1.0.0" + } + }, + "node_modules/os-shim": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/os-shim/-/os-shim-0.1.3.tgz", + "integrity": "sha1-a2LDeRz3kJ6jXtRuF2WLtBfLORc=", + "dev": true + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, + "node_modules/osenv": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "dev": true, + "dependencies": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "node_modules/outlayer": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/outlayer/-/outlayer-2.1.1.tgz", + "integrity": "sha1-KYY7beEOpdrf/8rfoNcokHOH6aI=", + "dev": true, + "dependencies": { + "ev-emitter": "^1.0.0", + "fizzy-ui-utils": "^2.0.0", + "get-size": "^2.0.2" + } + }, + "node_modules/p-defer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", + "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "dev": true + }, + "node_modules/p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "node_modules/p-is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", + "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", + "dev": true + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + } + }, + "node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "dependencies": { + "p-limit": "^2.0.0" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "node_modules/pac-proxy-agent": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-2.0.2.tgz", + "integrity": "sha512-cDNAN1Ehjbf5EHkNY5qnRhGPUCp6SnpyVof5fRzN800QV1Y2OkzbH9rmjZkbBRa8igof903yOnjIl6z0SlAhxA==", + "dev": true, + "dependencies": { + "agent-base": "^4.2.0", + "debug": "^3.1.0", + "get-uri": "^2.0.0", + "http-proxy-agent": "^2.1.0", + "https-proxy-agent": "^2.2.1", + "pac-resolver": "^3.0.0", + "raw-body": "^2.2.0", + "socks-proxy-agent": "^3.0.0" + } + }, + "node_modules/pac-proxy-agent/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/pac-proxy-agent/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/pac-resolver": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-3.0.0.tgz", + "integrity": "sha512-tcc38bsjuE3XZ5+4vP96OfhOugrX+JcnpUbhfuc4LuXBLQhoTthOstZeoQJBDnQUDYzYmdImKsbz0xSl1/9qeA==", + "dev": true, + "dependencies": { + "co": "^4.6.0", + "degenerator": "^1.0.4", + "ip": "^1.1.5", + "netmask": "^1.0.6", + "thunkify": "^2.1.2" + } + }, + "node_modules/package-json": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", + "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", + "dev": true, + "dependencies": { + "got": "^6.7.1", + "registry-auth-token": "^3.0.1", + "registry-url": "^3.0.3", + "semver": "^5.1.0" + } + }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true + }, + "node_modules/parallel-transform": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", + "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", + "dev": true, + "dependencies": { + "cyclist": "^1.0.1", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" + } + }, + "node_modules/parse-asn1": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", + "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", + "dev": true, + "dependencies": { + "asn1.js": "^4.0.0", + "browserify-aes": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/parse-filepath": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", + "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=", + "dev": true, + "dependencies": { + "is-absolute": "^1.0.0", + "map-cache": "^0.2.0", + "path-root": "^0.1.1" + } + }, + "node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "node_modules/parse-passwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", + "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", + "dev": true + }, + "node_modules/parse5": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-3.0.3.tgz", + "integrity": "sha512-rgO9Zg5LLLkfJF9E6CCmXlSE4UVceloys8JrFqCcHloC3usd/kJCyPDwH2SOlzix2j3xaP9sUX3e8+kvkuleAA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" + }, + "node_modules/pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "dev": true + }, + "node_modules/path": { + "version": "0.12.7", + "resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz", + "integrity": "sha1-1NwqUGxM4hl+tIHr/NWzbAFAsQ8=", + "dev": true, + "dependencies": { + "process": "^0.11.1", + "util": "^0.10.3" + } + }, + "node_modules/path-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", + "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", + "dev": true + }, + "node_modules/path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "dev": true + }, + "node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "node_modules/path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "dev": true + }, + "node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "node_modules/path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "node_modules/path-root": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", + "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=", + "dev": true, + "dependencies": { + "path-root-regex": "^0.1.0" + } + }, + "node_modules/path-root-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", + "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=", + "dev": true + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + }, + "node_modules/path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "node_modules/path-type/node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "node_modules/pathval": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz", + "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=", + "dev": true + }, + "node_modules/pbkdf2": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.1.tgz", + "integrity": "sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==", + "dev": true, + "dependencies": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", + "dev": true + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", + "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", + "dev": true, + "optional": true + }, + "node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, + "node_modules/pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "node_modules/pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "dependencies": { + "pinkie": "^2.0.0" + } + }, + "node_modules/pino": { + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/pino/-/pino-5.9.0.tgz", + "integrity": "sha512-6sHy38gWsZbrmYq6vk343VCThy93ZdVfmLsHDVzbl/j621SjSaxCcS/ySmxK/hRmq8jpQb3n44dNRIeqbbQw6A==", + "dev": true, + "dependencies": { + "fast-json-parse": "^1.0.3", + "fast-redact": "^1.4.0", + "fast-safe-stringify": "^2.0.6", + "flatstr": "^1.0.5", + "pino-std-serializers": "^2.3.0", + "pump": "^3.0.0", + "quick-format-unescaped": "^3.0.0", + "sonic-boom": "^0.6.3" + } + }, + "node_modules/pino-std-serializers": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-2.4.2.tgz", + "integrity": "sha512-WaL504dO8eGs+vrK+j4BuQQq6GLKeCCcHaMB2ItygzVURcL1CycwNEUHTD/lHFHs/NL5qAz2UKrjYWXKSf4aMQ==", + "dev": true + }, + "node_modules/pino/node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/pirates": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", + "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", + "dev": true, + "dependencies": { + "node-modules-regexp": "^1.0.0" + } + }, + "node_modules/pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "dependencies": { + "find-up": "^3.0.0" + } + }, + "node_modules/pluralize": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", + "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", + "dev": true + }, + "node_modules/po2json": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/po2json/-/po2json-0.4.5.tgz", + "integrity": "sha1-R7spUtoy1Yob4vJWpZjuvAt0URg=", + "dev": true, + "dependencies": { + "gettext-parser": "1.1.0", + "nomnom": "1.8.1" + } + }, + "node_modules/popper.js": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", + "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", + "dev": true + }, + "node_modules/portscanner": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/portscanner/-/portscanner-1.2.0.tgz", + "integrity": "sha1-sUu9olfRTDEPqcwJaCrwLUCWGAI=", + "dev": true, + "dependencies": { + "async": "1.5.2" + } + }, + "node_modules/posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "dev": true + }, + "node_modules/postcss": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.6.tgz", + "integrity": "sha512-Nq/rNjnHFcKgCDDZYO0lNsl6YWe6U7tTy+ESN+PnLxebL8uBtYX59HZqvrj7YLK5UCyll2hqDsJOo3ndzEW8Ug==", + "dev": true, + "dependencies": { + "chalk": "^2.4.1", + "source-map": "^0.6.1", + "supports-color": "^5.5.0" + } + }, + "node_modules/postcss/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "node_modules/prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "dev": true + }, + "node_modules/prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "dev": true + }, + "node_modules/private": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", + "dev": true + }, + "node_modules/probe-image-size": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/probe-image-size/-/probe-image-size-4.0.0.tgz", + "integrity": "sha512-nm7RvWUxps+2+jZKNLkd04mNapXNariS6G5WIEVzvAqjx7EUuKcY1Dp3e6oUK7GLwzJ+3gbSbPLFAASHFQrPcQ==", + "dev": true, + "dependencies": { + "any-promise": "^1.3.0", + "deepmerge": "^2.0.1", + "inherits": "^2.0.3", + "next-tick": "^1.0.0", + "request": "^2.83.0", + "stream-parser": "~0.3.1" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "dev": true + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true + }, + "node_modules/promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "dev": true, + "dependencies": { + "asap": "~2.0.3" + } + }, + "node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true + }, + "node_modules/promise.any": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/promise.any/-/promise.any-0.1.1.tgz", + "integrity": "sha1-Fg+JisPHW1y7cw/yOgyi8XQHvzo=", + "dev": true + }, + "node_modules/proxy-addr": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", + "integrity": "sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==", + "dependencies": { + "forwarded": "~0.1.2", + "ipaddr.js": "1.9.1" + } + }, + "node_modules/proxy-agent": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-2.3.1.tgz", + "integrity": "sha512-CNKuhC1jVtm8KJYFTS2ZRO71VCBx3QSA92So/e6NrY6GoJonkx3Irnk4047EsCcswczwqAekRj3s8qLRGahSKg==", + "dev": true, + "dependencies": { + "agent-base": "^4.2.0", + "debug": "^3.1.0", + "http-proxy-agent": "^2.1.0", + "https-proxy-agent": "^2.2.1", + "lru-cache": "^4.1.2", + "pac-proxy-agent": "^2.0.1", + "proxy-from-env": "^1.0.0", + "socks-proxy-agent": "^3.0.0" + } + }, + "node_modules/proxy-agent/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/proxy-agent/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "dev": true + }, + "node_modules/prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "dev": true + }, + "node_modules/pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "node_modules/psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", + "dev": true + }, + "node_modules/public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dev": true, + "dependencies": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/public-encrypt/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/pug": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pug/-/pug-2.0.4.tgz", + "integrity": "sha512-XhoaDlvi6NIzL49nu094R2NA6P37ijtgMDuWE+ofekDChvfKnzFal60bhSdiy8y2PBO6fmz3oMEIcfpBVRUdvw==", + "dev": true, + "dependencies": { + "pug-code-gen": "^2.0.2", + "pug-filters": "^3.1.1", + "pug-lexer": "^4.1.0", + "pug-linker": "^3.0.6", + "pug-load": "^2.0.12", + "pug-parser": "^5.0.1", + "pug-runtime": "^2.0.5", + "pug-strip-comments": "^1.0.4" + } + }, + "node_modules/pug-attrs": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-2.0.4.tgz", + "integrity": "sha512-TaZ4Z2TWUPDJcV3wjU3RtUXMrd3kM4Wzjbe3EWnSsZPsJ3LDI0F3yCnf2/W7PPFF+edUFQ0HgDL1IoxSz5K8EQ==", + "dev": true, + "dependencies": { + "constantinople": "^3.0.1", + "js-stringify": "^1.0.1", + "pug-runtime": "^2.0.5" + } + }, + "node_modules/pug-code-gen": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-2.0.2.tgz", + "integrity": "sha512-kROFWv/AHx/9CRgoGJeRSm+4mLWchbgpRzTEn8XCiwwOy6Vh0gAClS8Vh5TEJ9DBjaP8wCjS3J6HKsEsYdvaCw==", + "dev": true, + "dependencies": { + "constantinople": "^3.1.2", + "doctypes": "^1.1.0", + "js-stringify": "^1.0.1", + "pug-attrs": "^2.0.4", + "pug-error": "^1.3.3", + "pug-runtime": "^2.0.5", + "void-elements": "^2.0.1", + "with": "^5.0.0" + } + }, + "node_modules/pug-error": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-1.3.3.tgz", + "integrity": "sha512-qE3YhESP2mRAWMFJgKdtT5D7ckThRScXRwkfo+Erqga7dyJdY3ZquspprMCj/9sJ2ijm5hXFWQE/A3l4poMWiQ==", + "dev": true + }, + "node_modules/pug-filters": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-3.1.1.tgz", + "integrity": "sha512-lFfjNyGEyVWC4BwX0WyvkoWLapI5xHSM3xZJFUhx4JM4XyyRdO8Aucc6pCygnqV2uSgJFaJWW3Ft1wCWSoQkQg==", + "dev": true, + "dependencies": { + "clean-css": "^4.1.11", + "constantinople": "^3.0.1", + "jstransformer": "1.0.0", + "pug-error": "^1.3.3", + "pug-walk": "^1.1.8", + "resolve": "^1.1.6", + "uglify-js": "^2.6.1" + } + }, + "node_modules/pug-lexer": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-4.1.0.tgz", + "integrity": "sha512-i55yzEBtjm0mlplW4LoANq7k3S8gDdfC6+LThGEvsK4FuobcKfDAwt6V4jKPH9RtiE3a2Akfg5UpafZ1OksaPA==", + "dev": true, + "dependencies": { + "character-parser": "^2.1.1", + "is-expression": "^3.0.0", + "pug-error": "^1.3.3" + } + }, + "node_modules/pug-linker": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-3.0.6.tgz", + "integrity": "sha512-bagfuHttfQOpANGy1Y6NJ+0mNb7dD2MswFG2ZKj22s8g0wVsojpRlqveEQHmgXXcfROB2RT6oqbPYr9EN2ZWzg==", + "dev": true, + "dependencies": { + "pug-error": "^1.3.3", + "pug-walk": "^1.1.8" + } + }, + "node_modules/pug-load": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-2.0.12.tgz", + "integrity": "sha512-UqpgGpyyXRYgJs/X60sE6SIf8UBsmcHYKNaOccyVLEuT6OPBIMo6xMPhoJnqtB3Q3BbO4Z3Bjz5qDsUWh4rXsg==", + "dev": true, + "dependencies": { + "object-assign": "^4.1.0", + "pug-walk": "^1.1.8" + } + }, + "node_modules/pug-parser": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-5.0.1.tgz", + "integrity": "sha512-nGHqK+w07p5/PsPIyzkTQfzlYfuqoiGjaoqHv1LjOv2ZLXmGX1O+4Vcvps+P4LhxZ3drYSljjq4b+Naid126wA==", + "dev": true, + "dependencies": { + "pug-error": "^1.3.3", + "token-stream": "0.0.1" + } + }, + "node_modules/pug-runtime": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-2.0.5.tgz", + "integrity": "sha512-P+rXKn9un4fQY77wtpcuFyvFaBww7/91f3jHa154qU26qFAnOe6SW1CbIDcxiG5lLK9HazYrMCCuDvNgDQNptw==", + "dev": true + }, + "node_modules/pug-strip-comments": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-1.0.4.tgz", + "integrity": "sha512-i5j/9CS4yFhSxHp5iKPHwigaig/VV9g+FgReLJWWHEHbvKsbqL0oP/K5ubuLco6Wu3Kan5p7u7qk8A4oLLh6vw==", + "dev": true, + "dependencies": { + "pug-error": "^1.3.3" + } + }, + "node_modules/pug-walk": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-1.1.8.tgz", + "integrity": "sha512-GMu3M5nUL3fju4/egXwZO0XLi6fW/K3T3VTgFQ14GxNi8btlxgT5qZL//JwZFm/2Fa64J/PNS8AZeys3wiMkVA==", + "dev": true + }, + "node_modules/pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/pumpify": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "dev": true, + "dependencies": { + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "node_modules/puppeteer": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-1.20.0.tgz", + "integrity": "sha512-bt48RDBy2eIwZPrkgbcwHtb51mj2nKvHOPMaSH2IsWiv7lOG9k9zhaRzpDZafrk05ajMc3cu+lSQYYOfH2DkVQ==", + "dev": true, + "dependencies": { + "debug": "^4.1.0", + "extract-zip": "^1.6.6", + "https-proxy-agent": "^2.2.1", + "mime": "^2.0.3", + "progress": "^2.0.1", + "proxy-from-env": "^1.0.0", + "rimraf": "^2.6.1", + "ws": "^6.1.0" + } + }, + "node_modules/puppeteer/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/puppeteer/node_modules/mime": { + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", + "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==", + "dev": true + }, + "node_modules/puppeteer/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/puppeteer/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + } + }, + "node_modules/qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" + }, + "node_modules/querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=" + }, + "node_modules/querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", + "dev": true + }, + "node_modules/quick-format-unescaped": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-3.0.3.tgz", + "integrity": "sha512-dy1yjycmn9blucmJLXOfZDx1ikZJUi6E8bBZLnhPG5gBrVhHXx2xVyqqgKBubVNEXmx51dBACMHpoMQK/N/AXQ==", + "dev": true + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, + "dependencies": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" + }, + "node_modules/raw-body": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", + "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", + "dependencies": { + "bytes": "3.1.0", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + } + }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + } + }, + "node_modules/react-zlib-js": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/react-zlib-js/-/react-zlib-js-1.0.5.tgz", + "integrity": "sha512-TLcPdmqhIl+ylwOwlfm1WUuI7NVvhAv3L74d1AabhjyaAbmLOROTA/Q4EQ/UMCFCOjIkVim9fT3UZOQSFk/mlA==", + "dev": true + }, + "node_modules/read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "dependencies": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + } + }, + "node_modules/read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "dependencies": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + } + }, + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "dependencies": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "node_modules/read-pkg-up/node_modules/path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "dependencies": { + "pinkie-promise": "^2.0.0" + } + }, + "node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/readable-stream/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "node_modules/readline2": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/readline2/-/readline2-1.0.1.tgz", + "integrity": "sha1-QQWWCP/BVHV7cV2ZidGZ/783LjU=", + "dev": true, + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "mute-stream": "0.0.5" + } + }, + "node_modules/readline2/node_modules/is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "dependencies": { + "number-is-nan": "^1.0.0" + } + }, + "node_modules/readline2/node_modules/mute-stream": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.5.tgz", + "integrity": "sha1-j7+rsKmKJT0xhDMfno3rc3L6xsA=", + "dev": true + }, + "node_modules/rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", + "dev": true, + "dependencies": { + "resolve": "^1.1.6" + } + }, + "node_modules/recursive-readdir": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz", + "integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==", + "dev": true, + "dependencies": { + "minimatch": "3.0.4" + } + }, + "node_modules/regenerate": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.1.tgz", + "integrity": "sha512-j2+C8+NtXQgEKWk49MMP5P/u2GhnahTtVkRIHr5R5lVRlbKvmQ+oS+A5aLKWp2ma5VkT8sh6v+v4hbH0YHR66A==", + "dev": true + }, + "node_modules/regenerate-unicode-properties": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz", + "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.0" + } + }, + "node_modules/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==", + "dev": true + }, + "node_modules/regenerator-transform": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz", + "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dev": true, + "dependencies": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", + "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" + } + }, + "node_modules/regexpp": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-1.1.0.tgz", + "integrity": "sha512-LOPw8FpgdQF9etWMaAfG/WRthIdXJGYp4mJ2Jgn/2lpkbod9jPn0t9UqN7AxBOKNfzRbYyVfgc7Vk4t/MpnXgw==", + "dev": true + }, + "node_modules/regexpu-core": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.0.tgz", + "integrity": "sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.0", + "regenerate-unicode-properties": "^8.2.0", + "regjsgen": "^0.5.1", + "regjsparser": "^0.6.4", + "unicode-match-property-ecmascript": "^1.0.4", + "unicode-match-property-value-ecmascript": "^1.2.0" + } + }, + "node_modules/registry-auth-token": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.4.0.tgz", + "integrity": "sha512-4LM6Fw8eBQdwMYcES4yTnn2TqIasbXuwDx3um+QRs7S55aMKCBKBxvPXl2RiUjHwuJLTyYfxSpmfSAjQpcuP+A==", + "dev": true, + "dependencies": { + "rc": "^1.1.6", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/registry-url": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", + "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", + "dev": true, + "dependencies": { + "rc": "^1.0.1" + } + }, + "node_modules/regjsgen": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz", + "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==", + "dev": true + }, + "node_modules/regjsparser": { + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz", + "integrity": "sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw==", + "dev": true, + "dependencies": { + "jsesc": "~0.5.0" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + }, + "node_modules/relaxed-json": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/relaxed-json/-/relaxed-json-1.0.1.tgz", + "integrity": "sha1-fI1KovCVcEzQIOMugJm8rhA/C9Q=", + "dev": true, + "dependencies": { + "chalk": "^1.0.0", + "commander": "^2.6.0" + } + }, + "node_modules/relaxed-json/node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "node_modules/relaxed-json/node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "node_modules/relaxed-json/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + }, + "node_modules/remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true + }, + "node_modules/repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "dev": true + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true + }, + "node_modules/repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true, + "dependencies": { + "is-finite": "^1.0.0" + } + }, + "node_modules/request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "dev": true, + "dependencies": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + } + }, + "node_modules/request-promise-core": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.4.tgz", + "integrity": "sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==", + "dev": true, + "dependencies": { + "lodash": "^4.17.19" + } + }, + "node_modules/request-promise-native": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.9.tgz", + "integrity": "sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==", + "dev": true, + "dependencies": { + "request-promise-core": "1.1.4", + "stealthy-require": "^1.1.1", + "tough-cookie": "^2.3.3" + } + }, + "node_modules/request/node_modules/qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "node_modules/require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "node_modules/require-uncached": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", + "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", + "dev": true, + "dependencies": { + "caller-path": "^0.1.0", + "resolve-from": "^1.0.0" + } + }, + "node_modules/resolve": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", + "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", + "dev": true, + "dependencies": { + "path-parse": "^1.0.6" + } + }, + "node_modules/resolve-dir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", + "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", + "dev": true, + "dependencies": { + "expand-tilde": "^2.0.0", + "global-modules": "^1.0.0" + } + }, + "node_modules/resolve-from": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz", + "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=", + "dev": true + }, + "node_modules/resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "dev": true + }, + "node_modules/restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "dependencies": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + } + }, + "node_modules/ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "dev": true + }, + "node_modules/right-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", + "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", + "dev": true, + "dependencies": { + "align-text": "^0.1.1" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + } + }, + "node_modules/ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true + }, + "node_modules/run-queue": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", + "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "dev": true, + "dependencies": { + "aproba": "^1.1.1" + } + }, + "node_modules/rx-lite": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-3.1.2.tgz", + "integrity": "sha1-Gc5QLKVyZl87ZHsQk5+X/RYV8QI=", + "dev": true + }, + "node_modules/rx-lite-aggregates": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", + "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", + "dev": true, + "dependencies": { + "rx-lite": "*" + } + }, + "node_modules/rxjs": { + "version": "5.5.12", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz", + "integrity": "sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==", + "dev": true, + "dependencies": { + "symbol-observable": "1.0.1" + } + }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/safe-json-parse": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/safe-json-parse/-/safe-json-parse-1.0.1.tgz", + "integrity": "sha1-PnZyPjjf3aE8mx0poeB//uSzC1c=", + "dev": true + }, + "node_modules/safe-json-stringify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz", + "integrity": "sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg==", + "dev": true, + "optional": true + }, + "node_modules/safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "dev": true, + "dependencies": { + "ret": "~0.1.10" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/samsam": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/samsam/-/samsam-1.3.0.tgz", + "integrity": "sha512-1HwIYD/8UlOtFS3QO3w7ey+SdSDFE4HRNLZoZRYVQefrOY3l17epswImeB1ijgJFQJodIaHcwkp3r/myBjFVbg==", + "dev": true + }, + "node_modules/sax": { + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/sax/-/sax-0.5.8.tgz", + "integrity": "sha1-1HLbIo6zMcJQaw6MFVJK25OdEsE=", + "dev": true + }, + "node_modules/schema-utils": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", + "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.4", + "ajv": "^6.12.2", + "ajv-keywords": "^3.4.1" + } + }, + "node_modules/secure-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/secure-keys/-/secure-keys-1.0.0.tgz", + "integrity": "sha1-8MgtmKOxOah3aogIBQuCRDEIf8o=", + "dev": true + }, + "node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, + "node_modules/semver-diff": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", + "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", + "dev": true, + "dependencies": { + "semver": "^5.0.3" + } + }, + "node_modules/send": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", + "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", + "dependencies": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "~1.7.2", + "mime": "1.6.0", + "ms": "2.1.1", + "on-finished": "~2.3.0", + "range-parser": "~1.2.1", + "statuses": "~1.5.0" + } + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" + }, + "node_modules/serialize-javascript": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.9.1.tgz", + "integrity": "sha512-0Vb/54WJ6k5v8sSWN09S0ora+Hnr+cX40r9F170nT+mSkaxltoE/7R3OrIdBSUv1OoiobH1QoWQbCnAO+e8J1A==", + "dev": true + }, + "node_modules/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", + "dev": true, + "dependencies": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + } + }, + "node_modules/serve-index/node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + } + }, + "node_modules/serve-index/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + }, + "node_modules/serve-static": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", + "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.17.1" + } + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, + "node_modules/set-immediate-shim": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", + "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", + "dev": true + }, + "node_modules/set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "dev": true, + "dependencies": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + } + }, + "node_modules/set-value/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + } + }, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "dev": true + }, + "node_modules/setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" + }, + "node_modules/sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/shallow-clone": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-0.1.2.tgz", + "integrity": "sha1-WQnodLp3EG1zrEFM/sH/yofZcGA=", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.1", + "kind-of": "^2.0.1", + "lazy-cache": "^0.2.3", + "mixin-object": "^2.0.1" + } + }, + "node_modules/shallow-clone/node_modules/kind-of": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-2.0.1.tgz", + "integrity": "sha1-AY7HpM5+OobLkUG+UZ0kyPqpgbU=", + "dev": true, + "dependencies": { + "is-buffer": "^1.0.2" + } + }, + "node_modules/shallow-clone/node_modules/lazy-cache": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-0.2.7.tgz", + "integrity": "sha1-f+3fLctu23fRHvHRF6tf/fCrG2U=", + "dev": true + }, + "node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "dependencies": { + "shebang-regex": "^1.0.0" + } + }, + "node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "node_modules/shell-quote": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz", + "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=", + "dev": true, + "dependencies": { + "array-filter": "~0.0.0", + "array-map": "~0.0.0", + "array-reduce": "~0.0.0", + "jsonify": "~0.0.0" + } + }, + "node_modules/shelljs": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.3.tgz", + "integrity": "sha512-fc0BKlAWiLpwZljmOvAOTE/gXawtCoNrP5oaY7KIaQbbyHeQVg01pSEuEGvGh3HEdBU4baCD7wQBwADmM/7f7A==", + "dev": true, + "dependencies": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + } + }, + "node_modules/shellwords": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", + "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", + "dev": true + }, + "node_modules/sign-addon": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/sign-addon/-/sign-addon-0.3.1.tgz", + "integrity": "sha512-feaoG7+8IXr9SymOEd8VTZCSlVZArWcBDZ33IIdfXlU5NWWzXdCxCjPDqAkLQplFa7RRZr1S4lSmgMPn80Ze1A==", + "dev": true, + "dependencies": { + "babel-polyfill": "6.16.0", + "deepcopy": "0.6.3", + "es6-error": "4.0.0", + "es6-promisify": "5.0.0", + "jsonwebtoken": "8.2.1", + "mz": "2.5.0", + "request": "2.87.0", + "source-map-support": "0.4.6", + "stream-to-promise": "2.2.0", + "when": "3.7.7" + } + }, + "node_modules/sign-addon/node_modules/ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "dev": true, + "dependencies": { + "co": "^4.6.0", + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0" + } + }, + "node_modules/sign-addon/node_modules/babel-polyfill": { + "version": "6.16.0", + "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.16.0.tgz", + "integrity": "sha1-LUUCHfh+JqN0ttTRqcZZZNF/JCI=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.9.1", + "core-js": "^2.4.0", + "regenerator-runtime": "^0.9.5" + } + }, + "node_modules/sign-addon/node_modules/es6-error": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.0.0.tgz", + "integrity": "sha1-8JTHBB9mJZm7EnINoFnWucf/D0A=", + "dev": true + }, + "node_modules/sign-addon/node_modules/fast-deep-equal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", + "dev": true + }, + "node_modules/sign-addon/node_modules/har-validator": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", + "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", + "dev": true, + "dependencies": { + "ajv": "^5.1.0", + "har-schema": "^2.0.0" + } + }, + "node_modules/sign-addon/node_modules/json-schema-traverse": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", + "dev": true + }, + "node_modules/sign-addon/node_modules/mz": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.5.0.tgz", + "integrity": "sha1-KFkCXfA9RrV7sxcXSxlkd85kzsE=", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "node_modules/sign-addon/node_modules/oauth-sign": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", + "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", + "dev": true + }, + "node_modules/sign-addon/node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "node_modules/sign-addon/node_modules/qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true + }, + "node_modules/sign-addon/node_modules/regenerator-runtime": { + "version": "0.9.6", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.9.6.tgz", + "integrity": "sha1-0z65XQ0gAaS+OWWXB8UbDLcc4Ck=", + "dev": true + }, + "node_modules/sign-addon/node_modules/request": { + "version": "2.87.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", + "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", + "dev": true, + "dependencies": { + "aws-sign2": "~0.7.0", + "aws4": "^1.6.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.5", + "extend": "~3.0.1", + "forever-agent": "~0.6.1", + "form-data": "~2.3.1", + "har-validator": "~5.0.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.17", + "oauth-sign": "~0.8.2", + "performance-now": "^2.1.0", + "qs": "~6.5.1", + "safe-buffer": "^5.1.1", + "tough-cookie": "~2.3.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.1.0" + } + }, + "node_modules/sign-addon/node_modules/source-map-support": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.6.tgz", + "integrity": "sha1-MlUqpktFg5KoXqs7C17mFScWeus=", + "dev": true, + "dependencies": { + "source-map": "^0.5.3" + } + }, + "node_modules/sign-addon/node_modules/tough-cookie": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", + "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", + "dev": true, + "dependencies": { + "punycode": "^1.4.1" + } + }, + "node_modules/signal-exit": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", + "dev": true + }, + "node_modules/sinon": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-4.5.0.tgz", + "integrity": "sha512-trdx+mB0VBBgoYucy6a9L7/jfQOmvGeaKZT4OOJ+lPAtI8623xyGr8wLiE4eojzBS8G9yXbhx42GHUOVLr4X2w==", + "dev": true, + "dependencies": { + "@sinonjs/formatio": "^2.0.0", + "diff": "^3.1.0", + "lodash.get": "^4.4.2", + "lolex": "^2.2.0", + "nise": "^1.2.0", + "supports-color": "^5.1.0", + "type-detect": "^4.0.5" + } + }, + "node_modules/sinon-chai": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-2.14.0.tgz", + "integrity": "sha512-9stIF1utB0ywNHNT7RgiXbdmen8QDCRsrTjw+G9TgKt1Yexjiv8TOWZ6WHsTPz57Yky3DIswZvEqX8fpuHNDtQ==", + "dev": true + }, + "node_modules/slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "dev": true + }, + "node_modules/slice-ansi": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", + "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", + "dev": true, + "dependencies": { + "is-fullwidth-code-point": "^2.0.0" + } + }, + "node_modules/smart-buffer": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-1.1.15.tgz", + "integrity": "sha1-fxFLW2X6s+KjWqd1uxLw0cZJvxY=", + "dev": true + }, + "node_modules/snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, + "dependencies": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + } + }, + "node_modules/snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, + "dependencies": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + } + }, + "node_modules/snapdragon-node/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "dependencies": { + "is-descriptor": "^1.0.0" + } + }, + "node_modules/snapdragon-node/node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + } + }, + "node_modules/snapdragon-node/node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + } + }, + "node_modules/snapdragon-node/node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "node_modules/snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, + "dependencies": { + "kind-of": "^3.2.0" + } + }, + "node_modules/snapdragon-util/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + } + }, + "node_modules/snapdragon/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + } + }, + "node_modules/snapdragon/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + } + }, + "node_modules/snyk": { + "version": "1.110.2", + "resolved": "https://registry.npmjs.org/snyk/-/snyk-1.110.2.tgz", + "integrity": "sha512-SQE4sudrscd48EoRJqy5h5S6c8YBiOw0r0Se3rfg1l6ElJGgCB9je6XEzfe+UmfES06D7ueFYepiQPxTwH4Qww==", + "dev": true, + "dependencies": { + "abbrev": "^1.1.1", + "ansi-escapes": "^3.1.0", + "chalk": "^2.4.1", + "configstore": "^3.1.2", + "debug": "^3.1.0", + "hasbin": "^1.2.3", + "inquirer": "^3.0.0", + "lodash": "^4.17.5", + "needle": "^2.2.4", + "opn": "^5.2.0", + "os-name": "^2.0.1", + "proxy-agent": "^2.0.0", + "proxy-from-env": "^1.0.0", + "recursive-readdir": "^2.2.2", + "semver": "^5.5.0", + "snyk-config": "2.2.0", + "snyk-docker-plugin": "1.12.3", + "snyk-go-plugin": "1.6.0", + "snyk-gradle-plugin": "2.1.1", + "snyk-module": "1.9.1", + "snyk-mvn-plugin": "2.0.0", + "snyk-nodejs-lockfile-parser": "1.7.1", + "snyk-nuget-plugin": "1.6.5", + "snyk-php-plugin": "1.5.1", + "snyk-policy": "1.13.1", + "snyk-python-plugin": "1.9.0", + "snyk-resolve": "1.0.1", + "snyk-resolve-deps": "4.0.2", + "snyk-sbt-plugin": "2.0.0", + "snyk-tree": "^1.0.0", + "snyk-try-require": "1.3.1", + "source-map-support": "^0.5.9", + "tempfile": "^2.0.0", + "then-fs": "^2.0.0", + "undefsafe": "^2.0.0", + "uuid": "^3.2.1" + } + }, + "node_modules/snyk-config": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/snyk-config/-/snyk-config-2.2.0.tgz", + "integrity": "sha512-mq0wbP/AgjcmRq5i5jg2akVVV3iSYUPTowZwKn7DChRLDL8ySOzWAwan+ImXiyNbrWo87FNI/15O6MpOnTxOIg==", + "dev": true, + "dependencies": { + "debug": "^3.1.0", + "lodash": "^4.17.5", + "nconf": "^0.10.0" + } + }, + "node_modules/snyk-config/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk-config/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk-docker-plugin": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-1.12.3.tgz", + "integrity": "sha512-ZbvaFCPCd0wxhqxjzU/iyf39tKlq2nvI9nPW32uZV3RGdHrkQH55BzCtBCF9d0dapxX+PKgae/4u2BKNw8hd9Q==", + "dev": true, + "dependencies": { + "debug": "^3", + "dockerfile-ast": "0.0.12", + "tslib": "^1" + } + }, + "node_modules/snyk-docker-plugin/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk-docker-plugin/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk-go-plugin": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/snyk-go-plugin/-/snyk-go-plugin-1.6.0.tgz", + "integrity": "sha512-E6aYw7XAXSs2wJR3fU+vGQ1lVyjAw8PHIQYQwBwMkTHByhJIWPcu6Hy/jT5LcjJHlhYXlpOuk53HeLVK+kcXrQ==", + "dev": true, + "dependencies": { + "graphlib": "^2.1.1", + "tmp": "0.0.33", + "toml": "^2.3.2" + } + }, + "node_modules/snyk-gradle-plugin": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snyk-gradle-plugin/-/snyk-gradle-plugin-2.1.1.tgz", + "integrity": "sha512-aFeVC5y3XkJ5BxknHhtYo76as3xJbzSQlXACGZrQZGQ/w/UhNdM8VI1QB6Eq4uEzexleB/hcJwYxNmhI2CNCeA==", + "dev": true, + "dependencies": { + "clone-deep": "^0.3.0" + } + }, + "node_modules/snyk-module": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/snyk-module/-/snyk-module-1.9.1.tgz", + "integrity": "sha512-A+CCyBSa4IKok5uEhqT+hV/35RO6APFNLqk9DRRHg7xW2/j//nPX8wTSZUPF8QeRNEk/sX+6df7M1y6PBHGSHA==", + "dev": true, + "dependencies": { + "debug": "^3.1.0", + "hosted-git-info": "^2.7.1" + } + }, + "node_modules/snyk-module/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk-module/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk-mvn-plugin": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/snyk-mvn-plugin/-/snyk-mvn-plugin-2.0.0.tgz", + "integrity": "sha512-9jAhZhv+7YcqtoQYCYlgMoxK+dWBKlk+wkX27Ebg3vNddNop9q5jZitRXTjsXwfSUZHRt+Ptw1f8vei9kjzZVg==", + "dev": true + }, + "node_modules/snyk-nodejs-lockfile-parser": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.7.1.tgz", + "integrity": "sha512-0gHELqMhzUxb/t3Tg6d6G9LTDioOXCrEMt9aetOeV8wD/ZRL5VFNjwcdrm8qILLqzDFaFjFIyMc66c0OL4zFAQ==", + "dev": true, + "dependencies": { + "@yarnpkg/lockfile": "^1.0.2", + "graphlib": "^2.1.5", + "lodash": "4.17.10", + "source-map-support": "^0.5.7", + "tslib": "^1.9.3", + "uuid": "^3.3.2" + } + }, + "node_modules/snyk-nodejs-lockfile-parser/node_modules/lodash": { + "version": "4.17.10", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", + "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", + "dev": true + }, + "node_modules/snyk-nuget-plugin": { + "version": "1.6.5", + "resolved": "https://registry.npmjs.org/snyk-nuget-plugin/-/snyk-nuget-plugin-1.6.5.tgz", + "integrity": "sha512-3qIndzkxCxiaGvAwMkqChbChGdwhNePPyfi0WjhC/nJGwecqU3Fb/NeTW7lgyT+xoq/dFnzW0DgBJ4+AyNA2gA==", + "dev": true, + "dependencies": { + "debug": "^3.1.0", + "jszip": "^3.1.5", + "lodash": "^4.17.10", + "xml2js": "^0.4.17" + } + }, + "node_modules/snyk-nuget-plugin/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk-nuget-plugin/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk-php-plugin": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/snyk-php-plugin/-/snyk-php-plugin-1.5.1.tgz", + "integrity": "sha512-g5QSHBsRJ2O4cNxKC4zlWwnQYiSgQ77Y6QgGmo3ihPX3VLZrc1amaZIpPsNe1jwXirnGj2rvR5Xw+jDjbzvHFw==", + "dev": true, + "dependencies": { + "debug": "^3.1.0", + "lodash": "^4.17.5", + "path": "0.12.7" + } + }, + "node_modules/snyk-php-plugin/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk-php-plugin/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk-policy": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/snyk-policy/-/snyk-policy-1.13.1.tgz", + "integrity": "sha512-l9evS3Yk70xyvajjg+I6Ij7fr7gxpVRMZl0J1xNpWps/IVu4DSGih3aMmXi47VJozr4A/eFyj7R1lIr2GhqJCA==", + "dev": true, + "dependencies": { + "debug": "^3.1.0", + "email-validator": "^2.0.4", + "js-yaml": "^3.12.0", + "lodash.clonedeep": "^4.5.0", + "semver": "^5.6.0", + "snyk-module": "^1.9.1", + "snyk-resolve": "^1.0.1", + "snyk-try-require": "^1.3.1", + "then-fs": "^2.0.0" + } + }, + "node_modules/snyk-policy/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk-policy/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk-python-plugin": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/snyk-python-plugin/-/snyk-python-plugin-1.9.0.tgz", + "integrity": "sha512-zlyOHoCpmyVym9AwkboeepzEGrY3gHsM7eWP/nJ85TgCnQO5H5orKm3RL57PNbWRY+BnDmoQQ+udQgjym2+3sg==", + "dev": true, + "dependencies": { + "tmp": "0.0.33" + } + }, + "node_modules/snyk-resolve": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/snyk-resolve/-/snyk-resolve-1.0.1.tgz", + "integrity": "sha512-7+i+LLhtBo1Pkth01xv+RYJU8a67zmJ8WFFPvSxyCjdlKIcsps4hPQFebhz+0gC5rMemlaeIV6cqwqUf9PEDpw==", + "dev": true, + "dependencies": { + "debug": "^3.1.0", + "then-fs": "^2.0.0" + } + }, + "node_modules/snyk-resolve-deps": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/snyk-resolve-deps/-/snyk-resolve-deps-4.0.2.tgz", + "integrity": "sha512-nlw62wiWhGOTw3BD3jVIwrUkRR4iNxEkkO4Y/PWs8BsUWseGu1H6QgLesFXJb3qx7ANJ5UbUCJMgV+eL0Lf9cA==", + "dev": true, + "dependencies": { + "ansicolors": "^0.3.2", + "debug": "^3.2.5", + "lodash.assign": "^4.2.0", + "lodash.assignin": "^4.2.0", + "lodash.clone": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.get": "^4.4.2", + "lodash.set": "^4.3.2", + "lru-cache": "^4.0.0", + "semver": "^5.5.1", + "snyk-module": "^1.6.0", + "snyk-resolve": "^1.0.0", + "snyk-tree": "^1.0.0", + "snyk-try-require": "^1.1.1", + "then-fs": "^2.0.0" + } + }, + "node_modules/snyk-resolve-deps/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk-resolve-deps/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk-resolve/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk-resolve/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk-sbt-plugin": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/snyk-sbt-plugin/-/snyk-sbt-plugin-2.0.0.tgz", + "integrity": "sha512-bOUqsQ1Lysnwfnvf4QQIBfC0M0ZVuhlshTKd7pNwgAJ41YEPJNrPEpzOePl/HfKtwilEEwHh5YHvjYGegEKx0A==", + "dev": true + }, + "node_modules/snyk-tree": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/snyk-tree/-/snyk-tree-1.0.0.tgz", + "integrity": "sha1-D7cxdtvzLngvGRAClBYESPkRHMg=", + "dev": true, + "dependencies": { + "archy": "^1.0.0" + } + }, + "node_modules/snyk-try-require": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/snyk-try-require/-/snyk-try-require-1.3.1.tgz", + "integrity": "sha1-bgJvkuZK9/zM6h7lPVJIQeQYohI=", + "dev": true, + "dependencies": { + "debug": "^3.1.0", + "lodash.clonedeep": "^4.3.0", + "lru-cache": "^4.0.0", + "then-fs": "^2.0.0" + } + }, + "node_modules/snyk-try-require/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk-try-require/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk/node_modules/ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "node_modules/snyk/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk/node_modules/inquirer": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", + "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", + "dev": true, + "dependencies": { + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.0", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^2.0.4", + "figures": "^2.0.0", + "lodash": "^4.3.0", + "mute-stream": "0.0.7", + "run-async": "^2.2.0", + "rx-lite": "^4.0.8", + "rx-lite-aggregates": "^4.0.8", + "string-width": "^2.1.0", + "strip-ansi": "^4.0.0", + "through": "^2.3.6" + } + }, + "node_modules/snyk/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk/node_modules/opn": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", + "integrity": "sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==", + "dev": true, + "dependencies": { + "is-wsl": "^1.1.0" + } + }, + "node_modules/snyk/node_modules/rx-lite": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", + "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", + "dev": true + }, + "node_modules/snyk/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "dependencies": { + "ansi-regex": "^3.0.0" + } + }, + "node_modules/socks": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/socks/-/socks-1.1.10.tgz", + "integrity": "sha1-W4t/x8jzQcU+0FbpKbe/Tei6e1o=", + "dev": true, + "dependencies": { + "ip": "^1.1.4", + "smart-buffer": "^1.0.13" + } + }, + "node_modules/socks-proxy-agent": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-3.0.1.tgz", + "integrity": "sha512-ZwEDymm204mTzvdqyUqOdovVr2YRd2NYskrYrF2LXyZ9qDiMAoFESGK8CRphiO7rtbo2Y757k2Nia3x2hGtalA==", + "dev": true, + "dependencies": { + "agent-base": "^4.1.0", + "socks": "^1.1.10" + } + }, + "node_modules/sonic-boom": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-0.6.3.tgz", + "integrity": "sha512-TMhj6kDJk9LLzCTTL8+HPCfFn4MwkE4P6k2Up89Rz949+DSRw90V62upRKC99rJEOmu4E9ljH5Otu2JSRmx+bg==", + "dev": true, + "dependencies": { + "flatstr": "^1.0.8" + } + }, + "node_modules/source-list-map": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", + "dev": true + }, + "node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "node_modules/source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "dev": true, + "dependencies": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "node_modules/source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", + "dev": true + }, + "node_modules/spawn-sync": { + "version": "1.0.15", + "resolved": "https://registry.npmjs.org/spawn-sync/-/spawn-sync-1.0.15.tgz", + "integrity": "sha1-sAeZVX63+wyDdsKdROih6mfldHY=", + "dev": true, + "dependencies": { + "concat-stream": "^1.4.7", + "os-shim": "^0.1.2" + } + }, + "node_modules/spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dev": true, + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", + "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", + "dev": true + }, + "node_modules/split": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/split/-/split-0.3.3.tgz", + "integrity": "sha1-zQ7qXmOiEd//frDwkcQTPi0N0o8=", + "dev": true, + "dependencies": { + "through": "2" + } + }, + "node_modules/split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, + "dependencies": { + "extend-shallow": "^3.0.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", + "dev": true + }, + "node_modules/sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "dev": true, + "dependencies": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "node_modules/ssri": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-5.3.0.tgz", + "integrity": "sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.1.1" + } + }, + "node_modules/static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dev": true, + "dependencies": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + } + }, + "node_modules/static-extend/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + } + }, + "node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" + }, + "node_modules/stealthy-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", + "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", + "dev": true + }, + "node_modules/stream-browserify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", + "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", + "dev": true, + "dependencies": { + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" + } + }, + "node_modules/stream-each": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", + "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" + } + }, + "node_modules/stream-http": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "dev": true, + "dependencies": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" + } + }, + "node_modules/stream-parser": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/stream-parser/-/stream-parser-0.3.1.tgz", + "integrity": "sha1-FhhUhpRCACGhGC/wrxkRwSl2F3M=", + "dev": true, + "dependencies": { + "debug": "2" + } + }, + "node_modules/stream-shift": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", + "dev": true + }, + "node_modules/stream-to-array": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/stream-to-array/-/stream-to-array-2.3.0.tgz", + "integrity": "sha1-u/azn19D7DC8cbq8s3VXrOzzQ1M=", + "dev": true, + "dependencies": { + "any-promise": "^1.1.0" + } + }, + "node_modules/stream-to-promise": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/stream-to-promise/-/stream-to-promise-2.2.0.tgz", + "integrity": "sha1-se2y4cjLESidG1A8CNPyrvUeZQ8=", + "dev": true, + "dependencies": { + "any-promise": "~1.3.0", + "end-of-stream": "~1.1.0", + "stream-to-array": "~2.3.0" + } + }, + "node_modules/stream-to-promise/node_modules/end-of-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.1.0.tgz", + "integrity": "sha1-6TUyWLqpEIll78QcsO+K3i88+wc=", + "dev": true, + "dependencies": { + "once": "~1.3.0" + } + }, + "node_modules/stream-to-promise/node_modules/once": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", + "integrity": "sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA=", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, + "node_modules/string-template": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz", + "integrity": "sha1-QpMuWYo1LQH8IuwzZ9nYTuxsmt0=", + "dev": true + }, + "node_modules/string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "dependencies": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "node_modules/string-width/node_modules/ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "dependencies": { + "ansi-regex": "^3.0.0" + } + }, + "node_modules/string.prototype.matchall": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-2.0.0.tgz", + "integrity": "sha512-WoZ+B2ypng1dp4iFLF2kmZlwwlE19gmjgKuhL1FJfDgCREWb3ye3SDVHSzLH6bxfnvYmkCxbzkmWcQZHA4P//Q==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.2", + "es-abstract": "^1.10.0", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "regexp.prototype.flags": "^1.2.0" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", + "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", + "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "node_modules/strip-bom-buf": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-1.0.0.tgz", + "integrity": "sha1-HLRar1dTD0yvhsf3UXnSyaUd1XI=", + "dev": true, + "dependencies": { + "is-utf8": "^0.2.1" + } + }, + "node_modules/strip-bom-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-3.0.0.tgz", + "integrity": "sha1-lWvMXYRDD2klapDtgjdlzYWOFZw=", + "dev": true, + "dependencies": { + "first-chunk-stream": "^2.0.0", + "strip-bom-buf": "^1.0.0" + } + }, + "node_modules/strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true + }, + "node_modules/stylus": { + "version": "0.54.8", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.8.tgz", + "integrity": "sha512-vr54Or4BZ7pJafo2mpf0ZcwA74rpuYCZbxrHBsH8kbcXOwSfvBFwsRfpGO5OD5fhG5HDCFW737PKaawI7OqEAg==", + "dev": true, + "dependencies": { + "css-parse": "~2.0.0", + "debug": "~3.1.0", + "glob": "^7.1.6", + "mkdirp": "~1.0.4", + "safer-buffer": "^2.1.2", + "sax": "~1.2.4", + "semver": "^6.3.0", + "source-map": "^0.7.3" + } + }, + "node_modules/stylus/node_modules/css-parse": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-2.0.0.tgz", + "integrity": "sha1-pGjuZnwW2BzPBcWMONKpfHgNv9Q=", + "dev": true, + "dependencies": { + "css": "^2.0.0" + } + }, + "node_modules/stylus/node_modules/debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/stylus/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true + }, + "node_modules/stylus/node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, + "node_modules/stylus/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + }, + "node_modules/stylus/node_modules/source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + } + }, + "node_modules/symbol-observable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", + "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=", + "dev": true + }, + "node_modules/table": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/table/-/table-4.0.3.tgz", + "integrity": "sha512-S7rnFITmBH1EnyKcvxBh1LjYeQMmnZtCXSEbHcH6S0NoKit24ZuFO/T1vDcLdYsLQkM188PVVhQmzKIuThNkKg==", + "dev": true, + "dependencies": { + "ajv": "^6.0.1", + "ajv-keywords": "^3.0.0", + "chalk": "^2.1.0", + "lodash": "^4.17.4", + "slice-ansi": "1.0.0", + "string-width": "^2.1.1" + } + }, + "node_modules/tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "dev": true + }, + "node_modules/tar-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", + "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", + "dev": true, + "dependencies": { + "bl": "^1.0.0", + "buffer-alloc": "^1.2.0", + "end-of-stream": "^1.0.0", + "fs-constants": "^1.0.0", + "readable-stream": "^2.3.0", + "to-buffer": "^1.1.1", + "xtend": "^4.0.0" + } + }, + "node_modules/temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", + "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "dev": true + }, + "node_modules/tempfile": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-2.0.0.tgz", + "integrity": "sha1-awRGhWqbERTRhW/8vlCczLCXcmU=", + "dev": true, + "dependencies": { + "temp-dir": "^1.0.0", + "uuid": "^3.0.1" + } + }, + "node_modules/term-size": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", + "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", + "dev": true, + "dependencies": { + "execa": "^0.7.0" + } + }, + "node_modules/term-size/node_modules/cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true, + "dependencies": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "node_modules/term-size/node_modules/execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "dev": true, + "dependencies": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "node_modules/terser": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", + "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", + "dev": true, + "dependencies": { + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.4.tgz", + "integrity": "sha512-U4mACBHIegmfoEe5fdongHESNJWqsGU+W0S/9+BmYGVQDw1+c2Ow05TpMhxjPK1sRb7cuYq1BPl1e5YHJMTCqA==", + "dev": true, + "dependencies": { + "cacache": "^12.0.2", + "find-cache-dir": "^2.1.0", + "is-wsl": "^1.1.0", + "schema-utils": "^1.0.0", + "serialize-javascript": "^3.1.0", + "source-map": "^0.6.1", + "terser": "^4.1.2", + "webpack-sources": "^1.4.0", + "worker-farm": "^1.7.0" + } + }, + "node_modules/terser-webpack-plugin/node_modules/cacache": { + "version": "12.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", + "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", + "dev": true, + "dependencies": { + "bluebird": "^3.5.5", + "chownr": "^1.1.1", + "figgy-pudding": "^3.5.1", + "glob": "^7.1.4", + "graceful-fs": "^4.1.15", + "infer-owner": "^1.0.3", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.3", + "ssri": "^6.0.1", + "unique-filename": "^1.1.1", + "y18n": "^4.0.0" + } + }, + "node_modules/terser-webpack-plugin/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/terser-webpack-plugin/node_modules/mississippi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "dev": true, + "dependencies": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^3.0.0", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + } + }, + "node_modules/terser-webpack-plugin/node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/terser-webpack-plugin/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + } + }, + "node_modules/terser-webpack-plugin/node_modules/schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dev": true, + "dependencies": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + }, + "node_modules/terser-webpack-plugin/node_modules/serialize-javascript": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-3.1.0.tgz", + "integrity": "sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg==", + "dev": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/terser-webpack-plugin/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "node_modules/terser-webpack-plugin/node_modules/ssri": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", + "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "dev": true, + "dependencies": { + "figgy-pudding": "^3.5.1" + } + }, + "node_modules/terser-webpack-plugin/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/terser/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "node_modules/then-fs": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/then-fs/-/then-fs-2.0.0.tgz", + "integrity": "sha1-cveS3Z0xcFqRrhnr/Piz+WjIHaI=", + "dev": true, + "dependencies": { + "promise": ">=3.2 <8" + } + }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY=", + "dev": true, + "dependencies": { + "thenify": ">= 3.1.0 < 4" + } + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "dependencies": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "node_modules/thunkify": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/thunkify/-/thunkify-2.1.2.tgz", + "integrity": "sha1-+qDp0jDFGsyVyhOjYawFyn4EVT0=", + "dev": true + }, + "node_modules/timed-out": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", + "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", + "dev": true + }, + "node_modules/timers-browserify": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", + "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", + "dev": true, + "dependencies": { + "setimmediate": "^1.0.4" + } + }, + "node_modules/tiny-lr": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/tiny-lr/-/tiny-lr-1.1.1.tgz", + "integrity": "sha512-44yhA3tsaRoMOjQQ+5v5mVdqef+kH6Qze9jTpqtVufgYjYt08zyZAwNwwVBj3i1rJMnR52IxOW0LK0vBzgAkuA==", + "dev": true, + "dependencies": { + "body": "^5.1.0", + "debug": "^3.1.0", + "faye-websocket": "~0.10.0", + "livereload-js": "^2.3.0", + "object-assign": "^4.1.0", + "qs": "^6.4.0" + } + }, + "node_modules/tiny-lr/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/tiny-lr/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/tippy.js": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/tippy.js/-/tippy.js-2.6.0.tgz", + "integrity": "sha512-hBcy6UXK3epiFwpkycy7Pn1SSLofUmawpPnlYg5ginbXMc/3EX2ivjzHfjvr/WPEpUg71/7ssiovhxDtCWvL2A==", + "dev": true, + "dependencies": { + "popper.js": "^1.14.3" + } + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "dependencies": { + "os-tmpdir": "~1.0.2" + } + }, + "node_modules/to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", + "dev": true + }, + "node_modules/to-buffer": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", + "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==", + "dev": true + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + }, + "node_modules/to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + } + }, + "node_modules/to-object-path/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + } + }, + "node_modules/to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dev": true, + "dependencies": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } + }, + "node_modules/to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + }, + "node_modules/toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" + }, + "node_modules/token-stream": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-0.0.1.tgz", + "integrity": "sha1-zu78cXp2xDFvEm0LnbqlXX598Bo=", + "dev": true + }, + "node_modules/toml": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/toml/-/toml-2.3.6.tgz", + "integrity": "sha512-gVweAectJU3ebq//Ferr2JUY4WKSDe5N+z0FvjDncLGyHmIDoxgY/2Ie4qfEIDm4IS7OA6Rmdm7pdEEdMcV/xQ==", + "dev": true + }, + "node_modules/tosource": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/tosource/-/tosource-1.0.0.tgz", + "integrity": "sha1-QtiN0RZhi88A1hBt1URvNCeQL/E=", + "dev": true + }, + "node_modules/tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "dependencies": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + } + }, + "node_modules/tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/traverse": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.4.6.tgz", + "integrity": "sha1-0EsigOTHkqWBVCnve4tgxkyczDQ=", + "dev": true + }, + "node_modules/trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "dev": true + }, + "node_modules/tslib": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", + "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", + "dev": true + }, + "node_modules/tty-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", + "dev": true + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/tv4": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/tv4/-/tv4-1.3.0.tgz", + "integrity": "sha1-0CDIRvrdUMhVq7JeuuzGj8EPeWM=", + "dev": true + }, + "node_modules/tv4-formats": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/tv4-formats/-/tv4-formats-3.0.3.tgz", + "integrity": "sha1-a3l43S3IqjnQrCWU3dtvbAy/2SE=", + "dev": true, + "dependencies": { + "moment": "^2.10.6", + "validator": "^8.2.0" + } + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true + }, + "node_modules/type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==", + "dev": true + }, + "node_modules/type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dev": true, + "dependencies": { + "prelude-ls": "~1.1.2" + } + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } + }, + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true + }, + "node_modules/uc.micro": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", + "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==", + "dev": true + }, + "node_modules/uglify-js": { + "version": "2.8.29", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", + "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", + "dev": true, + "dependencies": { + "source-map": "~0.5.1", + "uglify-to-browserify": "~1.0.0", + "yargs": "~3.10.0" + }, + "optionalDependencies": { + "uglify-to-browserify": "~1.0.0" + } + }, + "node_modules/uglify-to-browserify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", + "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", + "dev": true, + "optional": true + }, + "node_modules/uglifyjs-webpack-plugin": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.3.0.tgz", + "integrity": "sha512-ovHIch0AMlxjD/97j9AYovZxG5wnHOPkL7T1GKochBADp/Zwc44pEWNqpKl1Loupp1WhFg7SlYmHZRUfdAacgw==", + "dev": true, + "dependencies": { + "cacache": "^10.0.4", + "find-cache-dir": "^1.0.0", + "schema-utils": "^0.4.5", + "serialize-javascript": "^1.4.0", + "source-map": "^0.6.1", + "uglify-es": "^3.3.4", + "webpack-sources": "^1.1.0", + "worker-farm": "^1.5.2" + } + }, + "node_modules/uglifyjs-webpack-plugin/node_modules/commander": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", + "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==", + "dev": true + }, + "node_modules/uglifyjs-webpack-plugin/node_modules/find-cache-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", + "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "dev": true, + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^2.0.0" + } + }, + "node_modules/uglifyjs-webpack-plugin/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "dependencies": { + "locate-path": "^2.0.0" + } + }, + "node_modules/uglifyjs-webpack-plugin/node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "node_modules/uglifyjs-webpack-plugin/node_modules/make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "dependencies": { + "pify": "^3.0.0" + } + }, + "node_modules/uglifyjs-webpack-plugin/node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "dependencies": { + "p-try": "^1.0.0" + } + }, + "node_modules/uglifyjs-webpack-plugin/node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "dependencies": { + "p-limit": "^1.1.0" + } + }, + "node_modules/uglifyjs-webpack-plugin/node_modules/p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "node_modules/uglifyjs-webpack-plugin/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "node_modules/uglifyjs-webpack-plugin/node_modules/pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "dependencies": { + "find-up": "^2.1.0" + } + }, + "node_modules/uglifyjs-webpack-plugin/node_modules/schema-utils": { + "version": "0.4.7", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", + "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", + "dev": true, + "dependencies": { + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0" + } + }, + "node_modules/uglifyjs-webpack-plugin/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "node_modules/uglifyjs-webpack-plugin/node_modules/uglify-es": { + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", + "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "dev": true, + "dependencies": { + "commander": "~2.13.0", + "source-map": "~0.6.1" + } + }, + "node_modules/unc-path-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", + "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=", + "dev": true + }, + "node_modules/undefsafe": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.3.tgz", + "integrity": "sha512-nrXZwwXrD/T/JXeygJqdCO6NZZ1L66HrxM/Z7mIq2oPanoN0F1nLx3lwJMu6AwJY69hdixaFQOuoYsMjE5/C2A==", + "dev": true, + "dependencies": { + "debug": "^2.2.0" + } + }, + "node_modules/underscore": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", + "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=", + "dev": true + }, + "node_modules/underscore.string": { + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.5.tgz", + "integrity": "sha512-g+dpmgn+XBneLmXXo+sGlW5xQEt4ErkS3mgeN2GFbremYeMBSJKr9Wf2KJplQVaiPY/f7FN6atosWYNm9ovrYg==", + "dev": true, + "dependencies": { + "sprintf-js": "^1.0.3", + "util-deprecate": "^1.0.2" + } + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", + "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", + "dev": true + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", + "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", + "dev": true, + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^1.0.4", + "unicode-property-aliases-ecmascript": "^1.0.4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", + "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==", + "dev": true + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", + "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", + "dev": true + }, + "node_modules/union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dev": true, + "dependencies": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + } + }, + "node_modules/unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "dependencies": { + "unique-slug": "^2.0.0" + } + }, + "node_modules/unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4" + } + }, + "node_modules/unique-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", + "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", + "dev": true, + "dependencies": { + "crypto-random-string": "^1.0.0" + } + }, + "node_modules/universal-user-agent": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", + "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==" + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + }, + "node_modules/unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dev": true, + "dependencies": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + } + }, + "node_modules/unset-value/node_modules/has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dev": true, + "dependencies": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + } + }, + "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "dependencies": { + "isarray": "1.0.0" + } + }, + "node_modules/unset-value/node_modules/has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "dev": true + }, + "node_modules/unzip-response": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", + "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", + "dev": true + }, + "node_modules/upath": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.0.tgz", + "integrity": "sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==", + "dev": true + }, + "node_modules/update-notifier": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.3.0.tgz", + "integrity": "sha1-TognpruRUUCrCTVZ1wFOPruDdFE=", + "dev": true, + "dependencies": { + "boxen": "^1.2.1", + "chalk": "^2.0.1", + "configstore": "^3.0.0", + "import-lazy": "^2.1.0", + "is-installed-globally": "^0.1.0", + "is-npm": "^1.0.0", + "latest-version": "^3.0.0", + "semver-diff": "^2.0.0", + "xdg-basedir": "^3.0.0" + } + }, + "node_modules/uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "dev": true + }, + "node_modules/url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dev": true, + "dependencies": { + "punycode": "1.3.2", + "querystring": "0.2.0" + } + }, + "node_modules/url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "dev": true, + "dependencies": { + "prepend-http": "^1.0.1" + } + }, + "node_modules/url/node_modules/punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + }, + "node_modules/use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true + }, + "node_modules/user-home": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/user-home/-/user-home-2.0.0.tgz", + "integrity": "sha1-nHC/2Babwdy/SGBODwS4tJzenp8=", + "dev": true, + "dependencies": { + "os-homedir": "^1.0.0" + } + }, + "node_modules/util": { + "version": "0.10.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", + "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", + "dev": true, + "dependencies": { + "inherits": "2.0.3" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + }, + "node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "dev": true + }, + "node_modules/v8flags": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.1.3.tgz", + "integrity": "sha512-amh9CCg3ZxkzQ48Mhcb8iX7xpAfYJgePHxWMQCBWECpOSqJUXgY26ncA61UTV0BkPqfhcy6mzwCIoP4ygxpW8w==", + "dev": true, + "dependencies": { + "homedir-polyfill": "^1.0.1" + } + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/validator": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-8.2.0.tgz", + "integrity": "sha512-Yw5wW34fSv5spzTXNkokD6S6/Oq92d8q/t14TqsS3fAiA1RYnxSFSIZ+CY3n6PGGRCq5HhJTSepQvFUS2QUDxA==", + "dev": true + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + }, + "node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "node_modules/vm-browserify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", + "dev": true + }, + "node_modules/void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", + "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", + "dev": true + }, + "node_modules/vscode-languageserver-types": { + "version": "3.15.1", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.15.1.tgz", + "integrity": "sha512-+a9MPUQrNGRrGU630OGbYVQ+11iOIovjCkqxajPa9w57Sd5ruK8WQNsslzpa0x/QJqC8kRc2DUxWjIFwoNm4ZQ==", + "dev": true + }, + "node_modules/walkdir": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/walkdir/-/walkdir-0.0.11.tgz", + "integrity": "sha1-oW0CXrkxvQO1LzCMrtD0D86+lTI=", + "dev": true + }, + "node_modules/watchpack": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.5.0.tgz", + "integrity": "sha512-RSlipNQB1u48cq0wH/BNfCu1tD/cJ8ydFIkNYhp9o+3d+8unClkIovpW5qpFPgmL9OE48wfAnlZydXByWP82AA==", + "dev": true, + "dependencies": { + "chokidar": "^2.0.2", + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0" + } + }, + "node_modules/watchpack-chokidar2": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz", + "integrity": "sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA==", + "dev": true, + "optional": true, + "dependencies": { + "chokidar": "^2.1.8" + } + }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "dev": true, + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/web-ext": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/web-ext/-/web-ext-2.9.3.tgz", + "integrity": "sha512-aZnlxuYOMUUBS5C8NBhhAj7T0ouJexlW5Cx5ObtOheoguG3fqXUl+KTY19L1Am/bJoyHC8otGTgew9Z0WHeTtg==", + "dev": true, + "dependencies": { + "@cliqz-oss/firefox-client": "0.3.1", + "@cliqz-oss/node-firefox-connect": "1.2.1", + "adbkit": "2.11.0", + "addons-linter": "1.4.1", + "babel-polyfill": "6.26.0", + "babel-runtime": "6.26.0", + "bunyan": "1.8.12", + "camelcase": "4.1.0", + "debounce": "1.1.0", + "decamelize": "2.0.0", + "es6-error": "4.1.1", + "es6-promisify": "5.0.0", + "event-to-promise": "0.8.0", + "firefox-profile": "1.2.0", + "fx-runner": "1.0.9", + "git-rev-sync": "1.9.1", + "mkdirp": "0.5.1", + "multimatch": "2.1.0", + "mz": "2.7.0", + "node-notifier": "5.2.1", + "opn": "5.3.0", + "parse-json": "4.0.0", + "regenerator-runtime": "0.11.1", + "require-uncached": "1.0.3", + "sign-addon": "0.3.1", + "source-map-support": "0.5.3", + "stream-to-promise": "2.2.0", + "strip-json-comments": "2.0.1", + "tmp": "0.0.33", + "update-notifier": "2.3.0", + "watchpack": "1.5.0", + "yargs": "6.6.0", + "zip-dir": "1.0.2" + } + }, + "node_modules/web-ext/node_modules/camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "node_modules/web-ext/node_modules/cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, + "dependencies": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" + } + }, + "node_modules/web-ext/node_modules/decamelize": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", + "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", + "dev": true, + "dependencies": { + "xregexp": "4.0.0" + } + }, + "node_modules/web-ext/node_modules/invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "dev": true + }, + "node_modules/web-ext/node_modules/is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "dependencies": { + "number-is-nan": "^1.0.0" + } + }, + "node_modules/web-ext/node_modules/lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "dev": true, + "dependencies": { + "invert-kv": "^1.0.0" + } + }, + "node_modules/web-ext/node_modules/minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "node_modules/web-ext/node_modules/mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "dependencies": { + "minimist": "0.0.8" + } + }, + "node_modules/web-ext/node_modules/opn": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.3.0.tgz", + "integrity": "sha512-bYJHo/LOmoTd+pfiYhfZDnf9zekVJrY+cnS2a5F2x+w5ppvTqObojTP7WiFG+kVZs9Inw+qQ/lw7TroWwhdd2g==", + "dev": true, + "dependencies": { + "is-wsl": "^1.1.0" + } + }, + "node_modules/web-ext/node_modules/os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "dev": true, + "dependencies": { + "lcid": "^1.0.0" + } + }, + "node_modules/web-ext/node_modules/regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + }, + "node_modules/web-ext/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "node_modules/web-ext/node_modules/source-map-support": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.3.tgz", + "integrity": "sha512-eKkTgWYeBOQqFGXRfKabMFdnWepo51vWqEdoeikaEPFiJC7MCU5j2h4+6Q8npkZTeLGbSyecZvRxiSoWl3rh+w==", + "dev": true, + "dependencies": { + "source-map": "^0.6.0" + } + }, + "node_modules/web-ext/node_modules/string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "node_modules/web-ext/node_modules/which-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", + "dev": true + }, + "node_modules/web-ext/node_modules/xregexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", + "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", + "dev": true + }, + "node_modules/web-ext/node_modules/y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "dev": true + }, + "node_modules/web-ext/node_modules/yargs": { + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz", + "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=", + "dev": true, + "dependencies": { + "camelcase": "^3.0.0", + "cliui": "^3.2.0", + "decamelize": "^1.1.1", + "get-caller-file": "^1.0.1", + "os-locale": "^1.4.0", + "read-pkg-up": "^1.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^1.0.2", + "which-module": "^1.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^4.2.0" + } + }, + "node_modules/web-ext/node_modules/yargs-parser": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-4.2.1.tgz", + "integrity": "sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=", + "dev": true, + "dependencies": { + "camelcase": "^3.0.0" + } + }, + "node_modules/web-ext/node_modules/yargs-parser/node_modules/camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "dev": true + }, + "node_modules/web-ext/node_modules/yargs/node_modules/camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "dev": true + }, + "node_modules/web-ext/node_modules/yargs/node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "node_modules/webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", + "dev": true + }, + "node_modules/webpack": { + "version": "4.44.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.44.1.tgz", + "integrity": "sha512-4UOGAohv/VGUNQJstzEywwNxqX417FnjZgZJpJQegddzPmTvph37eBIRbRTfdySXzVtJXLJfbMN3mMYhM6GdmQ==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/wasm-edit": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "acorn": "^6.4.1", + "ajv": "^6.10.2", + "ajv-keywords": "^3.4.1", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^4.3.0", + "eslint-scope": "^4.0.3", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^2.4.0", + "loader-utils": "^1.2.3", + "memory-fs": "^0.4.1", + "micromatch": "^3.1.10", + "mkdirp": "^0.5.3", + "neo-async": "^2.6.1", + "node-libs-browser": "^2.2.1", + "schema-utils": "^1.0.0", + "tapable": "^1.1.3", + "terser-webpack-plugin": "^1.4.3", + "watchpack": "^1.7.4", + "webpack-sources": "^1.4.1" + } + }, + "node_modules/webpack-merge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.2.tgz", + "integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==", + "dev": true, + "dependencies": { + "lodash": "^4.17.15" + } + }, + "node_modules/webpack-sources": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", + "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", + "dev": true, + "dependencies": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + } + }, + "node_modules/webpack-sources/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "node_modules/webpack/node_modules/acorn": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", + "dev": true + }, + "node_modules/webpack/node_modules/anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "optional": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "node_modules/webpack/node_modules/binary-extensions": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", + "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", + "dev": true, + "optional": true + }, + "node_modules/webpack/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "optional": true, + "dependencies": { + "fill-range": "^7.0.1" + } + }, + "node_modules/webpack/node_modules/chokidar": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.1.tgz", + "integrity": "sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g==", + "dev": true, + "optional": true, + "dependencies": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "fsevents": "~2.1.2", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.4.0" + } + }, + "node_modules/webpack/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "optional": true, + "dependencies": { + "to-regex-range": "^5.0.1" + } + }, + "node_modules/webpack/node_modules/fsevents": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", + "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", + "dev": true, + "optional": true + }, + "node_modules/webpack/node_modules/glob-parent": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", + "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "dev": true, + "optional": true, + "dependencies": { + "is-glob": "^4.0.1" + } + }, + "node_modules/webpack/node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "optional": true, + "dependencies": { + "binary-extensions": "^2.0.0" + } + }, + "node_modules/webpack/node_modules/is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "optional": true, + "dependencies": { + "is-extglob": "^2.1.1" + } + }, + "node_modules/webpack/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "optional": true + }, + "node_modules/webpack/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "optional": true + }, + "node_modules/webpack/node_modules/readdirp": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", + "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", + "dev": true, + "optional": true, + "dependencies": { + "picomatch": "^2.2.1" + } + }, + "node_modules/webpack/node_modules/schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dev": true, + "dependencies": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + }, + "node_modules/webpack/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "optional": true, + "dependencies": { + "is-number": "^7.0.0" + } + }, + "node_modules/webpack/node_modules/watchpack": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.4.tgz", + "integrity": "sha512-aWAgTW4MoSJzZPAicljkO1hsi1oKj/RRq/OJQh2PKI2UKL04c2Bs+MBOB+BBABHTXJpf9mCwHN7ANCvYsvY2sg==", + "dev": true, + "dependencies": { + "chokidar": "^3.4.1", + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0", + "watchpack-chokidar2": "^2.0.0" + }, + "optionalDependencies": { + "chokidar": "^3.4.1", + "watchpack-chokidar2": "^2.0.0" + } + }, + "node_modules/websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "dev": true, + "dependencies": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + } + }, + "node_modules/websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", + "dev": true + }, + "node_modules/whatwg-url": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.0.0.tgz", + "integrity": "sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ==", + "dev": true, + "dependencies": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + }, + "node_modules/when": { + "version": "3.7.7", + "resolved": "https://registry.npmjs.org/when/-/when-3.7.7.tgz", + "integrity": "sha1-q6A/w7tzbWyIsJHQE9io5ZDYRxg=", + "dev": true + }, + "node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + } + }, + "node_modules/which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "node_modules/widest-line": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz", + "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==", + "dev": true, + "dependencies": { + "string-width": "^2.1.1" + } + }, + "node_modules/win-release": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/win-release/-/win-release-1.1.1.tgz", + "integrity": "sha1-X6VeAr58qTTt/BJmVjLoSbcuUgk=", + "dev": true, + "dependencies": { + "semver": "^5.0.1" + } + }, + "node_modules/window-size": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", + "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", + "dev": true + }, + "node_modules/winreg": { + "version": "0.0.12", + "resolved": "https://registry.npmjs.org/winreg/-/winreg-0.0.12.tgz", + "integrity": "sha1-BxBVVLoanQiXklHRKUdb/64wBrc=", + "dev": true + }, + "node_modules/with": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/with/-/with-5.1.1.tgz", + "integrity": "sha1-+k2qktrzLE6pTtRTyB8EaGtXXf4=", + "dev": true, + "dependencies": { + "acorn": "^3.1.0", + "acorn-globals": "^3.0.0" + } + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true + }, + "node_modules/wordwrap": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", + "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", + "dev": true + }, + "node_modules/worker-farm": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", + "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", + "dev": true, + "dependencies": { + "errno": "~0.1.7" + } + }, + "node_modules/wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "dependencies": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + } + }, + "node_modules/wrap-ansi/node_modules/is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "dependencies": { + "number-is-nan": "^1.0.0" + } + }, + "node_modules/wrap-ansi/node_modules/string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "node_modules/write": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz", + "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", + "dev": true, + "dependencies": { + "mkdirp": "^0.5.1" + } + }, + "node_modules/write-file-atomic": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", + "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + }, + "node_modules/ws": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz", + "integrity": "sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==", + "dev": true, + "dependencies": { + "async-limiter": "~1.0.0" + } + }, + "node_modules/xdg-basedir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", + "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", + "dev": true + }, + "node_modules/xhr-mock": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/xhr-mock/-/xhr-mock-2.5.1.tgz", + "integrity": "sha512-UKOjItqjFgPUwQGPmRAzNBn8eTfIhcGjBVGvKYAWxUQPQsXNGD6KEckGTiHwyaAUp9C9igQlnN1Mp79KWCg7CQ==", + "dev": true, + "dependencies": { + "global": "^4.3.0", + "url": "^0.11.0" + } + }, + "node_modules/xml2js": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", + "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", + "dev": true, + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + } + }, + "node_modules/xml2js/node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, + "node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "dev": true + }, + "node_modules/xmldom": { + "version": "0.1.27", + "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.27.tgz", + "integrity": "sha1-1QH5ezvbQDr4757MIFcxh6rawOk=", + "dev": true + }, + "node_modules/xregexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz", + "integrity": "sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM=", + "dev": true + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true + }, + "node_modules/y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "dev": true + }, + "node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + }, + "node_modules/yargs": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", + "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", + "dev": true, + "dependencies": { + "camelcase": "^1.0.2", + "cliui": "^2.1.0", + "decamelize": "^1.0.0", + "window-size": "0.1.0" + } + }, + "node_modules/yargs-parser": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", + "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + }, + "node_modules/yargs-parser/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", + "dev": true, + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "node_modules/zip-dir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/zip-dir/-/zip-dir-1.0.2.tgz", + "integrity": "sha1-JT+QeurWKiGs2HIdi4gDKyQRwFE=", + "dev": true, + "dependencies": { + "async": "^1.5.2", + "jszip": "^2.4.0" + } + }, + "node_modules/zip-dir/node_modules/jszip": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-2.6.1.tgz", + "integrity": "sha1-uI86ey5noqBIFSmCx6N1bZxIKPA=", + "dev": true, + "dependencies": { + "pako": "~1.0.2" + } + }, + "node_modules/zip-stream": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-1.2.0.tgz", + "integrity": "sha1-qLxF9MG0lpnGuQGYuqyqzbzUugQ=", + "dev": true, + "dependencies": { + "archiver-utils": "^1.3.0", + "compress-commons": "^1.2.0", + "lodash": "^4.8.0", + "readable-stream": "^2.0.0" + } + } }, - "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - }, - "dependencies": { + "dependencies": { + "@babel/code-frame": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", + "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", + "dev": true, + "requires": { + "@babel/highlight": "^7.10.4" + } + }, + "@babel/compat-data": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.11.0.tgz", + "integrity": "sha512-TPSvJfv73ng0pfnEOh17bYMPQbI95+nGWc71Ss4vZdRBHTDqmM9Z8ZV4rYz8Ks7sfzc95n30k6ODIq5UGnXcYQ==", + "dev": true, + "requires": { + "browserslist": "^4.12.0", + "invariant": "^2.2.4", + "semver": "^5.5.0" + } + }, + "@babel/core": { + "version": "7.11.1", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.11.1.tgz", + "integrity": "sha512-XqF7F6FWQdKGGWAzGELL+aCO1p+lRY5Tj5/tbT3St1G8NaH70jhhDIKknIZaDans0OQBG5wRAldROLHSt44BgQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.11.0", + "@babel/helper-module-transforms": "^7.11.0", + "@babel/helpers": "^7.10.4", + "@babel/parser": "^7.11.1", + "@babel/template": "^7.10.4", + "@babel/traverse": "^7.11.0", + "@babel/types": "^7.11.0", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "@babel/generator": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.11.0.tgz", + "integrity": "sha512-fEm3Uzw7Mc9Xi//qU20cBKatTfs2aOtKqmvy/Vm7RkJEGFQ4xc9myCfbXxqK//ZS8MR/ciOHw6meGASJuKmDfQ==", + "dev": true, + "requires": { + "@babel/types": "^7.11.0", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.10.4.tgz", + "integrity": "sha512-XQlqKQP4vXFB7BN8fEEerrmYvHp3fK/rBkRFz9jaJbzK0B1DSfej9Kc7ZzE8Z/OnId1jpJdNAZ3BFQjWG68rcA==", + "dev": true, + "requires": { + "@babel/types": "^7.10.4" + } + }, + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.10.4.tgz", + "integrity": "sha512-L0zGlFrGWZK4PbT8AszSfLTM5sDU1+Az/En9VrdT8/LmEiJt4zXt+Jve9DCAnQcbqDhCI+29y/L93mrDzddCcg==", + "dev": true, + "requires": { + "@babel/helper-explode-assignable-expression": "^7.10.4", + "@babel/types": "^7.10.4" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.10.4.tgz", + "integrity": "sha512-a3rYhlsGV0UHNDvrtOXBg8/OpfV0OKTkxKPzIplS1zpx7CygDcWWxckxZeDd3gzPzC4kUT0A4nVFDK0wGMh4MQ==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.10.4", + "browserslist": "^4.12.0", + "invariant": "^2.2.4", + "levenary": "^1.1.1", + "semver": "^5.5.0" + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.10.5.tgz", + "integrity": "sha512-0nkdeijB7VlZoLT3r/mY3bUkw3T8WG/hNw+FATs/6+pG2039IJWjTYL0VTISqsNHMUTEnwbVnc89WIJX9Qed0A==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.10.4", + "@babel/helper-member-expression-to-functions": "^7.10.5", + "@babel/helper-optimise-call-expression": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-replace-supers": "^7.10.4", + "@babel/helper-split-export-declaration": "^7.10.4" + } + }, + "@babel/helper-create-regexp-features-plugin": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.10.4.tgz", + "integrity": "sha512-2/hu58IEPKeoLF45DBwx3XFqsbCXmkdAay4spVr2x0jYgRxrSNp+ePwvSsy9g6YSaNDcKIQVPXk1Ov8S2edk2g==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.10.4", + "@babel/helper-regex": "^7.10.4", + "regexpu-core": "^4.7.0" + } + }, + "@babel/helper-define-map": { + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.10.5.tgz", + "integrity": "sha512-fMw4kgFB720aQFXSVaXr79pjjcW5puTCM16+rECJ/plGS+zByelE8l9nCpV1GibxTnFVmUuYG9U8wYfQHdzOEQ==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.10.4", + "@babel/types": "^7.10.5", + "lodash": "^4.17.19" + } + }, + "@babel/helper-explode-assignable-expression": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.10.4.tgz", + "integrity": "sha512-4K71RyRQNPRrR85sr5QY4X3VwG4wtVoXZB9+L3r1Gp38DhELyHCtovqydRi7c1Ovb17eRGiQ/FD5s8JdU0Uy5A==", + "dev": true, + "requires": { + "@babel/traverse": "^7.10.4", + "@babel/types": "^7.10.4" + } + }, + "@babel/helper-function-name": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz", + "integrity": "sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ==", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.10.4", + "@babel/template": "^7.10.4", + "@babel/types": "^7.10.4" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz", + "integrity": "sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A==", + "dev": true, + "requires": { + "@babel/types": "^7.10.4" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.10.4.tgz", + "integrity": "sha512-wljroF5PgCk2juF69kanHVs6vrLwIPNp6DLD+Lrl3hoQ3PpPPikaDRNFA+0t81NOoMt2DL6WW/mdU8k4k6ZzuA==", + "dev": true, + "requires": { + "@babel/types": "^7.10.4" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.11.0.tgz", + "integrity": "sha512-JbFlKHFntRV5qKw3YC0CvQnDZ4XMwgzzBbld7Ly4Mj4cbFy3KywcR8NtNctRToMWJOVvLINJv525Gd6wwVEx/Q==", + "dev": true, + "requires": { + "@babel/types": "^7.11.0" + } + }, + "@babel/helper-module-imports": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.10.4.tgz", + "integrity": "sha512-nEQJHqYavI217oD9+s5MUBzk6x1IlvoS9WTPfgG43CbMEeStE0v+r+TucWdx8KFGowPGvyOkDT9+7DHedIDnVw==", + "dev": true, + "requires": { + "@babel/types": "^7.10.4" + } + }, + "@babel/helper-module-transforms": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.11.0.tgz", + "integrity": "sha512-02EVu8COMuTRO1TAzdMtpBPbe6aQ1w/8fePD2YgQmxZU4gpNWaL9gK3Jp7dxlkUlUCJOTaSeA+Hrm1BRQwqIhg==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.10.4", + "@babel/helper-replace-supers": "^7.10.4", + "@babel/helper-simple-access": "^7.10.4", + "@babel/helper-split-export-declaration": "^7.11.0", + "@babel/template": "^7.10.4", + "@babel/types": "^7.11.0", + "lodash": "^4.17.19" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.4.tgz", + "integrity": "sha512-n3UGKY4VXwXThEiKrgRAoVPBMqeoPgHVqiHZOanAJCG9nQUL2pLRQirUzl0ioKclHGpGqRgIOkgcIJaIWLpygg==", + "dev": true, + "requires": { + "@babel/types": "^7.10.4" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", + "dev": true + }, + "@babel/helper-regex": { + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.10.5.tgz", + "integrity": "sha512-68kdUAzDrljqBrio7DYAEgCoJHxppJOERHOgOrDN7WjOzP0ZQ1LsSDRXcemzVZaLvjaJsJEESb6qt+znNuENDg==", + "dev": true, + "requires": { + "lodash": "^4.17.19" + } + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.10.4.tgz", + "integrity": "sha512-86Lsr6NNw3qTNl+TBcF1oRZMaVzJtbWTyTko+CQL/tvNvcGYEFKbLXDPxtW0HKk3McNOk4KzY55itGWCAGK5tg==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.10.4", + "@babel/helper-wrap-function": "^7.10.4", + "@babel/template": "^7.10.4", + "@babel/traverse": "^7.10.4", + "@babel/types": "^7.10.4" + } + }, + "@babel/helper-replace-supers": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.10.4.tgz", + "integrity": "sha512-sPxZfFXocEymYTdVK1UNmFPBN+Hv5mJkLPsYWwGBxZAxaWfFu+xqp7b6qWD0yjNuNL2VKc6L5M18tOXUP7NU0A==", + "dev": true, + "requires": { + "@babel/helper-member-expression-to-functions": "^7.10.4", + "@babel/helper-optimise-call-expression": "^7.10.4", + "@babel/traverse": "^7.10.4", + "@babel/types": "^7.10.4" + } + }, + "@babel/helper-simple-access": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.10.4.tgz", + "integrity": "sha512-0fMy72ej/VEvF8ULmX6yb5MtHG4uH4Dbd6I/aHDb/JVg0bbivwt9Wg+h3uMvX+QSFtwr5MeItvazbrc4jtRAXw==", + "dev": true, + "requires": { + "@babel/template": "^7.10.4", + "@babel/types": "^7.10.4" + } + }, + "@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.11.0.tgz", + "integrity": "sha512-0XIdiQln4Elglgjbwo9wuJpL/K7AGCY26kmEt0+pRP0TAj4jjyNq1MjoRvikrTVqKcx4Gysxt4cXvVFXP/JO2Q==", + "dev": true, + "requires": { + "@babel/types": "^7.11.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.11.0.tgz", + "integrity": "sha512-74Vejvp6mHkGE+m+k5vHY93FX2cAtrw1zXrZXRlG4l410Nm9PxfEiVTn1PjDPV5SnmieiueY4AFg2xqhNFuuZg==", + "dev": true, + "requires": { + "@babel/types": "^7.11.0" + } + }, + "@babel/helper-validator-identifier": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz", + "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==", + "dev": true + }, + "@babel/helper-wrap-function": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.10.4.tgz", + "integrity": "sha512-6py45WvEF0MhiLrdxtRjKjufwLL1/ob2qDJgg5JgNdojBAZSAKnAjkyOCNug6n+OBl4VW76XjvgSFTdaMcW0Ug==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.10.4", + "@babel/template": "^7.10.4", + "@babel/traverse": "^7.10.4", + "@babel/types": "^7.10.4" + } + }, + "@babel/helpers": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.10.4.tgz", + "integrity": "sha512-L2gX/XeUONeEbI78dXSrJzGdz4GQ+ZTA/aazfUsFaWjSe95kiCuOZ5HsXvkiw3iwF+mFHSRUfJU8t6YavocdXA==", + "dev": true, + "requires": { + "@babel/template": "^7.10.4", + "@babel/traverse": "^7.10.4", + "@babel/types": "^7.10.4" + } + }, + "@babel/highlight": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", + "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.10.4", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.11.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", + "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", + "dev": true + }, + "@babel/plugin-proposal-async-generator-functions": { + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.10.5.tgz", + "integrity": "sha512-cNMCVezQbrRGvXJwm9fu/1sJj9bHdGAgKodZdLqOQIpfoH3raqmRPBM17+lh7CzhiKRRBrGtZL9WcjxSoGYUSg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-remap-async-to-generator": "^7.10.4", + "@babel/plugin-syntax-async-generators": "^7.8.0" + } + }, + "@babel/plugin-proposal-class-properties": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.10.4.tgz", + "integrity": "sha512-vhwkEROxzcHGNu2mzUC0OFFNXdZ4M23ib8aRRcJSsW8BZK9pQMD7QB7csl97NBbgGZO7ZyHUyKDnxzOaP4IrCg==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-proposal-dynamic-import": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.10.4.tgz", + "integrity": "sha512-up6oID1LeidOOASNXgv/CFbgBqTuKJ0cJjz6An5tWD+NVBNlp3VNSBxv2ZdU7SYl3NxJC7agAQDApZusV6uFwQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-dynamic-import": "^7.8.0" + } + }, + "@babel/plugin-proposal-export-namespace-from": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.10.4.tgz", + "integrity": "sha512-aNdf0LY6/3WXkhh0Fdb6Zk9j1NMD8ovj3F6r0+3j837Pn1S1PdNtcwJ5EG9WkVPNHPxyJDaxMaAOVq4eki0qbg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + } + }, + "@babel/plugin-proposal-json-strings": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.10.4.tgz", + "integrity": "sha512-fCL7QF0Jo83uy1K0P2YXrfX11tj3lkpN7l4dMv9Y9VkowkhkQDwFHFd8IiwyK5MZjE8UpbgokkgtcReH88Abaw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.0" + } + }, + "@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.11.0.tgz", + "integrity": "sha512-/f8p4z+Auz0Uaf+i8Ekf1iM7wUNLcViFUGiPxKeXvxTSl63B875YPiVdUDdem7hREcI0E0kSpEhS8tF5RphK7Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + } + }, + "@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.10.4.tgz", + "integrity": "sha512-wq5n1M3ZUlHl9sqT2ok1T2/MTt6AXE0e1Lz4WzWBr95LsAZ5qDXe4KnFuauYyEyLiohvXFMdbsOTMyLZs91Zlw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0" + } + }, + "@babel/plugin-proposal-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.10.4.tgz", + "integrity": "sha512-73/G7QoRoeNkLZFxsoCCvlg4ezE4eM+57PnOqgaPOozd5myfj7p0muD1mRVJvbUWbOzD+q3No2bWbaKy+DJ8DA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + } + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.11.0.tgz", + "integrity": "sha512-wzch41N4yztwoRw0ak+37wxwJM2oiIiy6huGCoqkvSTA9acYWcPfn9Y4aJqmFFJ70KTJUu29f3DQ43uJ9HXzEA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.0", + "@babel/plugin-transform-parameters": "^7.10.4" + } + }, + "@babel/plugin-proposal-optional-catch-binding": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.10.4.tgz", + "integrity": "sha512-LflT6nPh+GK2MnFiKDyLiqSqVHkQnVf7hdoAvyTnnKj9xB3docGRsdPuxp6qqqW19ifK3xgc9U5/FwrSaCNX5g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" + } + }, + "@babel/plugin-proposal-optional-chaining": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.11.0.tgz", + "integrity": "sha512-v9fZIu3Y8562RRwhm1BbMRxtqZNFmFA2EG+pT2diuU8PT3H6T/KXoZ54KgYisfOFZHV6PfvAiBIZ9Rcz+/JCxA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-skip-transparent-expression-wrappers": "^7.11.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.0" + } + }, + "@babel/plugin-proposal-private-methods": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.10.4.tgz", + "integrity": "sha512-wh5GJleuI8k3emgTg5KkJK6kHNsGEr0uBTDBuQUBJwckk9xs1ez79ioheEVVxMLyPscB0LfkbVHslQqIzWV6Bw==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-proposal-unicode-property-regex": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.10.4.tgz", + "integrity": "sha512-H+3fOgPnEXFL9zGYtKQe4IDOPKYlZdF1kqFDQRRb8PK4B8af1vAGK04tF5iQAAsui+mHNBQSAtd2/ndEDe9wuA==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-class-properties": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.10.4.tgz", + "integrity": "sha512-GCSBF7iUle6rNugfURwNmCGG3Z/2+opxAMLs1nND4bhEG5PuxTIggDBoeYYSujAlLtsupzOHYJQgPS3pivwXIA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-top-level-await": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.10.4.tgz", + "integrity": "sha512-ni1brg4lXEmWyafKr0ccFWkJG0CeMt4WV1oyeBW6EFObF4oOHclbkj5cARxAPQyAQ2UTuplJyK4nfkXIMMFvsQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-arrow-functions": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.10.4.tgz", + "integrity": "sha512-9J/oD1jV0ZCBcgnoFWFq1vJd4msoKb/TCpGNFyyLt0zABdcvgK3aYikZ8HjzB14c26bc7E3Q1yugpwGy2aTPNA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-async-to-generator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.10.4.tgz", + "integrity": "sha512-F6nREOan7J5UXTLsDsZG3DXmZSVofr2tGNwfdrVwkDWHfQckbQXnXSPfD7iO+c/2HGqycwyLST3DnZ16n+cBJQ==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-remap-async-to-generator": "^7.10.4" + } + }, + "@babel/plugin-transform-block-scoped-functions": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.10.4.tgz", + "integrity": "sha512-WzXDarQXYYfjaV1szJvN3AD7rZgZzC1JtjJZ8dMHUyiK8mxPRahynp14zzNjU3VkPqPsO38CzxiWO1c9ARZ8JA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-block-scoping": { + "version": "7.11.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.11.1.tgz", + "integrity": "sha512-00dYeDE0EVEHuuM+26+0w/SCL0BH2Qy7LwHuI4Hi4MH5gkC8/AqMN5uWFJIsoXZrAphiMm1iXzBw6L2T+eA0ew==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-classes": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.10.4.tgz", + "integrity": "sha512-2oZ9qLjt161dn1ZE0Ms66xBncQH4In8Sqw1YWgBUZuGVJJS5c0OFZXL6dP2MRHrkU/eKhWg8CzFJhRQl50rQxA==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.10.4", + "@babel/helper-define-map": "^7.10.4", + "@babel/helper-function-name": "^7.10.4", + "@babel/helper-optimise-call-expression": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-replace-supers": "^7.10.4", + "@babel/helper-split-export-declaration": "^7.10.4", + "globals": "^11.1.0" + } + }, + "@babel/plugin-transform-computed-properties": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.10.4.tgz", + "integrity": "sha512-JFwVDXcP/hM/TbyzGq3l/XWGut7p46Z3QvqFMXTfk6/09m7xZHJUN9xHfsv7vqqD4YnfI5ueYdSJtXqqBLyjBw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-destructuring": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.10.4.tgz", + "integrity": "sha512-+WmfvyfsyF603iPa6825mq6Qrb7uLjTOsa3XOFzlYcYDHSS4QmpOWOL0NNBY5qMbvrcf3tq0Cw+v4lxswOBpgA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-dotall-regex": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.10.4.tgz", + "integrity": "sha512-ZEAVvUTCMlMFAbASYSVQoxIbHm2OkG2MseW6bV2JjIygOjdVv8tuxrCTzj1+Rynh7ODb8GivUy7dzEXzEhuPaA==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-duplicate-keys": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.10.4.tgz", + "integrity": "sha512-GL0/fJnmgMclHiBTTWXNlYjYsA7rDrtsazHG6mglaGSTh0KsrW04qml+Bbz9FL0LcJIRwBWL5ZqlNHKTkU3xAA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.10.4.tgz", + "integrity": "sha512-S5HgLVgkBcRdyQAHbKj+7KyuWx8C6t5oETmUuwz1pt3WTWJhsUV0WIIXuVvfXMxl/QQyHKlSCNNtaIamG8fysw==", + "dev": true, + "requires": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-for-of": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.10.4.tgz", + "integrity": "sha512-ItdQfAzu9AlEqmusA/65TqJ79eRcgGmpPPFvBnGILXZH975G0LNjP1yjHvGgfuCxqrPPueXOPe+FsvxmxKiHHQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-function-name": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.10.4.tgz", + "integrity": "sha512-OcDCq2y5+E0dVD5MagT5X+yTRbcvFjDI2ZVAottGH6tzqjx/LKpgkUepu3hp/u4tZBzxxpNGwLsAvGBvQ2mJzg==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-literals": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.10.4.tgz", + "integrity": "sha512-Xd/dFSTEVuUWnyZiMu76/InZxLTYilOSr1UlHV+p115Z/Le2Fi1KXkJUYz0b42DfndostYlPub3m8ZTQlMaiqQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-member-expression-literals": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.10.4.tgz", + "integrity": "sha512-0bFOvPyAoTBhtcJLr9VcwZqKmSjFml1iVxvPL0ReomGU53CX53HsM4h2SzckNdkQcHox1bpAqzxBI1Y09LlBSw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-modules-amd": { + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.10.5.tgz", + "integrity": "sha512-elm5uruNio7CTLFItVC/rIzKLfQ17+fX7EVz5W0TMgIHFo1zY0Ozzx+lgwhL4plzl8OzVn6Qasx5DeEFyoNiRw==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.10.5", + "@babel/helper-plugin-utils": "^7.10.4", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-commonjs": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.10.4.tgz", + "integrity": "sha512-Xj7Uq5o80HDLlW64rVfDBhao6OX89HKUmb+9vWYaLXBZOma4gA6tw4Ni1O5qVDoZWUV0fxMYA0aYzOawz0l+1w==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-simple-access": "^7.10.4", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-systemjs": { + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.10.5.tgz", + "integrity": "sha512-f4RLO/OL14/FP1AEbcsWMzpbUz6tssRaeQg11RH1BP/XnPpRoVwgeYViMFacnkaw4k4wjRSjn3ip1Uw9TaXuMw==", + "dev": true, + "requires": { + "@babel/helper-hoist-variables": "^7.10.4", + "@babel/helper-module-transforms": "^7.10.5", + "@babel/helper-plugin-utils": "^7.10.4", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-umd": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.10.4.tgz", + "integrity": "sha512-mohW5q3uAEt8T45YT7Qc5ws6mWgJAaL/8BfWD9Dodo1A3RKWli8wTS+WiQ/knF+tXlPirW/1/MqzzGfCExKECA==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.10.4.tgz", + "integrity": "sha512-V6LuOnD31kTkxQPhKiVYzYC/Jgdq53irJC/xBSmqcNcqFGV+PER4l6rU5SH2Vl7bH9mLDHcc0+l9HUOe4RNGKA==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.10.4" + } + }, + "@babel/plugin-transform-new-target": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.10.4.tgz", + "integrity": "sha512-YXwWUDAH/J6dlfwqlWsztI2Puz1NtUAubXhOPLQ5gjR/qmQ5U96DY4FQO8At33JN4XPBhrjB8I4eMmLROjjLjw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-object-super": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.10.4.tgz", + "integrity": "sha512-5iTw0JkdRdJvr7sY0vHqTpnruUpTea32JHmq/atIWqsnNussbRzjEDyWep8UNztt1B5IusBYg8Irb0bLbiEBCQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-replace-supers": "^7.10.4" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.10.5.tgz", + "integrity": "sha512-xPHwUj5RdFV8l1wuYiu5S9fqWGM2DrYc24TMvUiRrPVm+SM3XeqU9BcokQX/kEUe+p2RBwy+yoiR1w/Blq6ubw==", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-property-literals": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.10.4.tgz", + "integrity": "sha512-ofsAcKiUxQ8TY4sScgsGeR2vJIsfrzqvFb9GvJ5UdXDzl+MyYCaBj/FGzXuv7qE0aJcjWMILny1epqelnFlz8g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-regenerator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.10.4.tgz", + "integrity": "sha512-3thAHwtor39A7C04XucbMg17RcZ3Qppfxr22wYzZNcVIkPHfpM9J0SO8zuCV6SZa265kxBJSrfKTvDCYqBFXGw==", + "dev": true, + "requires": { + "regenerator-transform": "^0.14.2" + } + }, + "@babel/plugin-transform-reserved-words": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.10.4.tgz", + "integrity": "sha512-hGsw1O6Rew1fkFbDImZIEqA8GoidwTAilwCyWqLBM9f+e/u/sQMQu7uX6dyokfOayRuuVfKOW4O7HvaBWM+JlQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-shorthand-properties": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.10.4.tgz", + "integrity": "sha512-AC2K/t7o07KeTIxMoHneyX90v3zkm5cjHJEokrPEAGEy3UCp8sLKfnfOIGdZ194fyN4wfX/zZUWT9trJZ0qc+Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-spread": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.11.0.tgz", + "integrity": "sha512-UwQYGOqIdQJe4aWNyS7noqAnN2VbaczPLiEtln+zPowRNlD+79w3oi2TWfYe0eZgd+gjZCbsydN7lzWysDt+gw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-skip-transparent-expression-wrappers": "^7.11.0" + } + }, + "@babel/plugin-transform-sticky-regex": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.10.4.tgz", + "integrity": "sha512-Ddy3QZfIbEV0VYcVtFDCjeE4xwVTJWTmUtorAJkn6u/92Z/nWJNV+mILyqHKrUxXYKA2EoCilgoPePymKL4DvQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-regex": "^7.10.4" + } + }, + "@babel/plugin-transform-template-literals": { + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.10.5.tgz", + "integrity": "sha512-V/lnPGIb+KT12OQikDvgSuesRX14ck5FfJXt6+tXhdkJ+Vsd0lDCVtF6jcB4rNClYFzaB2jusZ+lNISDk2mMMw==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-typeof-symbol": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.10.4.tgz", + "integrity": "sha512-QqNgYwuuW0y0H+kUE/GWSR45t/ccRhe14Fs/4ZRouNNQsyd4o3PG4OtHiIrepbM2WKUBDAXKCAK/Lk4VhzTaGA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-unicode-escapes": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.10.4.tgz", + "integrity": "sha512-y5XJ9waMti2J+e7ij20e+aH+fho7Wb7W8rNuu72aKRwCHFqQdhkdU2lo3uZ9tQuboEJcUFayXdARhcxLQ3+6Fg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-transform-unicode-regex": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.10.4.tgz", + "integrity": "sha512-wNfsc4s8N2qnIwpO/WP2ZiSyjfpTamT2C9V9FDH/Ljub9zw6P3SjkXcFmc0RQUt96k2fmIvtla2MMjgTwIAC+A==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/polyfill": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.10.4.tgz", + "integrity": "sha512-8BYcnVqQ5kMD2HXoHInBH7H1b/uP3KdnwCYXOqFnXqguOyuu443WXusbIUbWEfY3Z0Txk0M1uG/8YuAMhNl6zg==", + "dev": true, + "requires": { + "core-js": "^2.6.5", + "regenerator-runtime": "^0.13.4" + } + }, + "@babel/preset-env": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.11.0.tgz", + "integrity": "sha512-2u1/k7rG/gTh02dylX2kL3S0IJNF+J6bfDSp4DI2Ma8QN6Y9x9pmAax59fsCk6QUQG0yqH47yJWA+u1I1LccAg==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.11.0", + "@babel/helper-compilation-targets": "^7.10.4", + "@babel/helper-module-imports": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-proposal-async-generator-functions": "^7.10.4", + "@babel/plugin-proposal-class-properties": "^7.10.4", + "@babel/plugin-proposal-dynamic-import": "^7.10.4", + "@babel/plugin-proposal-export-namespace-from": "^7.10.4", + "@babel/plugin-proposal-json-strings": "^7.10.4", + "@babel/plugin-proposal-logical-assignment-operators": "^7.11.0", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.10.4", + "@babel/plugin-proposal-numeric-separator": "^7.10.4", + "@babel/plugin-proposal-object-rest-spread": "^7.11.0", + "@babel/plugin-proposal-optional-catch-binding": "^7.10.4", + "@babel/plugin-proposal-optional-chaining": "^7.11.0", + "@babel/plugin-proposal-private-methods": "^7.10.4", + "@babel/plugin-proposal-unicode-property-regex": "^7.10.4", + "@babel/plugin-syntax-async-generators": "^7.8.0", + "@babel/plugin-syntax-class-properties": "^7.10.4", + "@babel/plugin-syntax-dynamic-import": "^7.8.0", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.0", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.0", + "@babel/plugin-syntax-top-level-await": "^7.10.4", + "@babel/plugin-transform-arrow-functions": "^7.10.4", + "@babel/plugin-transform-async-to-generator": "^7.10.4", + "@babel/plugin-transform-block-scoped-functions": "^7.10.4", + "@babel/plugin-transform-block-scoping": "^7.10.4", + "@babel/plugin-transform-classes": "^7.10.4", + "@babel/plugin-transform-computed-properties": "^7.10.4", + "@babel/plugin-transform-destructuring": "^7.10.4", + "@babel/plugin-transform-dotall-regex": "^7.10.4", + "@babel/plugin-transform-duplicate-keys": "^7.10.4", + "@babel/plugin-transform-exponentiation-operator": "^7.10.4", + "@babel/plugin-transform-for-of": "^7.10.4", + "@babel/plugin-transform-function-name": "^7.10.4", + "@babel/plugin-transform-literals": "^7.10.4", + "@babel/plugin-transform-member-expression-literals": "^7.10.4", + "@babel/plugin-transform-modules-amd": "^7.10.4", + "@babel/plugin-transform-modules-commonjs": "^7.10.4", + "@babel/plugin-transform-modules-systemjs": "^7.10.4", + "@babel/plugin-transform-modules-umd": "^7.10.4", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.10.4", + "@babel/plugin-transform-new-target": "^7.10.4", + "@babel/plugin-transform-object-super": "^7.10.4", + "@babel/plugin-transform-parameters": "^7.10.4", + "@babel/plugin-transform-property-literals": "^7.10.4", + "@babel/plugin-transform-regenerator": "^7.10.4", + "@babel/plugin-transform-reserved-words": "^7.10.4", + "@babel/plugin-transform-shorthand-properties": "^7.10.4", + "@babel/plugin-transform-spread": "^7.11.0", + "@babel/plugin-transform-sticky-regex": "^7.10.4", + "@babel/plugin-transform-template-literals": "^7.10.4", + "@babel/plugin-transform-typeof-symbol": "^7.10.4", + "@babel/plugin-transform-unicode-escapes": "^7.10.4", + "@babel/plugin-transform-unicode-regex": "^7.10.4", + "@babel/preset-modules": "^0.1.3", + "@babel/types": "^7.11.0", + "browserslist": "^4.12.0", + "core-js-compat": "^3.6.2", + "invariant": "^2.2.2", + "levenary": "^1.1.1", + "semver": "^5.5.0" + } + }, + "@babel/preset-modules": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.3.tgz", + "integrity": "sha512-Ra3JXOHBq2xd56xSF7lMKXdjBn3T772Y1Wet3yWnkDly9zHvJki029tAFzvAAK5cf4YV3yoxuP61crYRol6SVg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + } + }, + "@babel/register": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.0.0.tgz", + "integrity": "sha512-f/+CRmaCe7rVEvcvPvxeA8j5aJhHC3aJie7YuqcMDhUOuyWLA7J/aNrTaHIzoWPEhpHA54mec4Mm8fv8KBlv3g==", + "dev": true, + "requires": { + "core-js": "^2.5.7", + "find-cache-dir": "^1.0.0", + "home-or-tmp": "^3.0.0", + "lodash": "^4.17.10", + "mkdirp": "^0.5.1", + "pirates": "^4.0.0", + "source-map-support": "^0.5.9" + }, + "dependencies": { + "find-cache-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", + "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^2.0.0" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "home-or-tmp": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-3.0.0.tgz", + "integrity": "sha1-V6j+JM8zzdUkhgoVgh3cJchmcfs=", + "dev": true + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "requires": { + "find-up": "^2.1.0" + } + } + } + }, + "@babel/runtime": { + "version": "7.11.2", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.11.2.tgz", + "integrity": "sha512-TeWkU52so0mPtDcaCTxNBI/IHiz0pZgr8VEFqXFtZWpYD08ZB6FaSwVAS8MKRQAP3bYKiVjwysOJgMFY28o6Tw==", + "dev": true, + "requires": { + "regenerator-runtime": "^0.13.4" + } + }, + "@babel/template": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz", + "integrity": "sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.10.4", + "@babel/parser": "^7.10.4", + "@babel/types": "^7.10.4" + } + }, + "@babel/traverse": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.11.0.tgz", + "integrity": "sha512-ZB2V+LskoWKNpMq6E5UUCrjtDUh5IOTAyIl0dTjIEoXum/iKWkoIEKIRDnUucO6f+2FzNkE0oD4RLKoPIufDtg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.11.0", + "@babel/helper-function-name": "^7.10.4", + "@babel/helper-split-export-declaration": "^7.11.0", + "@babel/parser": "^7.11.0", + "@babel/types": "^7.11.0", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.19" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "@babel/types": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", + "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.10.4", + "lodash": "^4.17.19", + "to-fast-properties": "^2.0.0" + } + }, + "@cliqz-oss/firefox-client": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@cliqz-oss/firefox-client/-/firefox-client-0.3.1.tgz", + "integrity": "sha512-RO+Tops/wGnBzWoZYkCraqyh2JqOejqJq5/a4b54HhmjTNSKdUPwAOK17EGg/zPb0nWqkuB7QyZsI9bo+ev8Kw==", + "dev": true, + "requires": { + "colors": "0.5.x", + "js-select": "~0.6.0" + }, + "dependencies": { + "colors": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/colors/-/colors-0.5.1.tgz", + "integrity": "sha1-fQAj6usVTo7p/Oddy5I9DtFmd3Q=", + "dev": true + } + } + }, + "@cliqz-oss/node-firefox-connect": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@cliqz-oss/node-firefox-connect/-/node-firefox-connect-1.2.1.tgz", + "integrity": "sha512-O/IyiB5pfztCdmxQZg0/xeq5w+YiP3gtJz8d4We2EpLPKzbDVjOrtfLKYgVfm6Ya6mbvDge1uLkSRwaoVCWKnA==", + "dev": true, + "requires": { + "@cliqz-oss/firefox-client": "0.3.1", + "es6-promise": "^2.0.1" + }, + "dependencies": { + "es6-promise": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-2.3.0.tgz", + "integrity": "sha1-lu258v2wGZWCKyY92KratnSBgbw=", + "dev": true + } + } + }, + "@octokit/auth-token": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.4.4.tgz", + "integrity": "sha512-LNfGu3Ro9uFAYh10MUZVaT7X2CnNm2C8IDQmabx+3DygYIQjs9FwzFAHN/0t6mu5HEPhxcb1XOuxdpY82vCg2Q==", + "requires": { + "@octokit/types": "^6.0.0" + } + }, + "@octokit/core": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@octokit/core/-/core-3.2.4.tgz", + "integrity": "sha512-d9dTsqdePBqOn7aGkyRFe7pQpCXdibSJ5SFnrTr0axevObZrpz3qkWm7t/NjYv5a66z6vhfteriaq4FRz3e0Qg==", + "requires": { + "@octokit/auth-token": "^2.4.4", + "@octokit/graphql": "^4.5.8", + "@octokit/request": "^5.4.12", + "@octokit/types": "^6.0.3", + "before-after-hook": "^2.1.0", + "universal-user-agent": "^6.0.0" + } + }, + "@octokit/endpoint": { + "version": "6.0.10", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.10.tgz", + "integrity": "sha512-9+Xef8nT7OKZglfkOMm7IL6VwxXUQyR7DUSU0LH/F7VNqs8vyd7es5pTfz9E7DwUIx7R3pGscxu1EBhYljyu7Q==", + "requires": { + "@octokit/types": "^6.0.0", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" + }, + "dependencies": { + "is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==" + } + } + }, + "@octokit/graphql": { + "version": "4.5.8", + "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.5.8.tgz", + "integrity": "sha512-WnCtNXWOrupfPJgXe+vSmprZJUr0VIu14G58PMlkWGj3cH+KLZEfKMmbUQ6C3Wwx6fdhzVW1CD5RTnBdUHxhhA==", + "requires": { + "@octokit/request": "^5.3.0", + "@octokit/types": "^6.0.0", + "universal-user-agent": "^6.0.0" + } + }, + "@octokit/openapi-types": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-2.0.0.tgz", + "integrity": "sha512-J4bfM7lf8oZvEAdpS71oTvC1ofKxfEZgU5vKVwzZKi4QPiL82udjpseJwxPid9Pu2FNmyRQOX4iEj6W1iOSnPw==" + }, + "@octokit/plugin-paginate-rest": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.6.2.tgz", + "integrity": "sha512-3Dy7/YZAwdOaRpGQoNHPeT0VU1fYLpIUdPyvR37IyFLgd6XSij4j9V/xN/+eSjF2KKvmfIulEh9LF1tRPjIiDA==", + "requires": { + "@octokit/types": "^6.0.1" + } + }, + "@octokit/plugin-request-log": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.2.tgz", + "integrity": "sha512-oTJSNAmBqyDR41uSMunLQKMX0jmEXbwD1fpz8FG27lScV3RhtGfBa1/BBLym+PxcC16IBlF7KH9vP1BUYxA+Eg==", + "requires": {} + }, + "@octokit/plugin-rest-endpoint-methods": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-4.4.1.tgz", + "integrity": "sha512-+v5PcvrUcDeFXf8hv1gnNvNLdm4C0+2EiuWt9EatjjUmfriM1pTMM+r4j1lLHxeBQ9bVDmbywb11e3KjuavieA==", + "requires": { + "@octokit/types": "^6.1.0", + "deprecation": "^2.3.1" + } + }, + "@octokit/request": { + "version": "5.4.12", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.4.12.tgz", + "integrity": "sha512-MvWYdxengUWTGFpfpefBBpVmmEYfkwMoxonIB3sUGp5rhdgwjXL1ejo6JbgzG/QD9B/NYt/9cJX1pxXeSIUCkg==", + "requires": { + "@octokit/endpoint": "^6.0.1", + "@octokit/request-error": "^2.0.0", + "@octokit/types": "^6.0.3", + "deprecation": "^2.0.0", + "is-plain-object": "^5.0.0", + "node-fetch": "^2.6.1", + "once": "^1.4.0", + "universal-user-agent": "^6.0.0" + }, + "dependencies": { + "is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==" + } + } + }, + "@octokit/request-error": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.0.4.tgz", + "integrity": "sha512-LjkSiTbsxIErBiRh5wSZvpZqT4t0/c9+4dOe0PII+6jXR+oj/h66s7E4a/MghV7iT8W9ffoQ5Skoxzs96+gBPA==", + "requires": { + "@octokit/types": "^6.0.0", + "deprecation": "^2.0.0", + "once": "^1.4.0" + } + }, + "@octokit/rest": { + "version": "18.0.12", + "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-18.0.12.tgz", + "integrity": "sha512-hNRCZfKPpeaIjOVuNJzkEL6zacfZlBPV8vw8ReNeyUkVvbuCvvrrx8K8Gw2eyHHsmd4dPlAxIXIZ9oHhJfkJpw==", + "requires": { + "@octokit/core": "^3.2.3", + "@octokit/plugin-paginate-rest": "^2.6.2", + "@octokit/plugin-request-log": "^1.0.2", + "@octokit/plugin-rest-endpoint-methods": "4.4.1" + } + }, + "@octokit/types": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.1.1.tgz", + "integrity": "sha512-btm3D6S7VkRrgyYF31etUtVY/eQ1KzrNRqhFt25KSe2mKlXuLXJilglRC6eDA2P6ou94BUnk/Kz5MPEolXgoiw==", + "requires": { + "@octokit/openapi-types": "^2.0.0", + "@types/node": ">= 8" + } + }, + "@sinonjs/commons": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.1.tgz", + "integrity": "sha512-892K+kWUUi3cl+LlqEWIDrhvLgdL79tECi8JZUyq6IviKy/DNhuzCRlbHUjxK89f4ypPMMaFnFuR9Ie6DoIMsw==", + "dev": true, + "requires": { + "type-detect": "4.0.8" + } + }, + "@sinonjs/formatio": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-2.0.0.tgz", + "integrity": "sha512-ls6CAMA6/5gG+O/IdsBcblvnd8qcO/l1TYoNeAzp3wcISOxlPXQEus0mLcdwazEkWjaBdaJ3TaxmNgCLWwvWzg==", + "dev": true, + "requires": { + "samsam": "1.3.0" + } + }, + "@sinonjs/samsam": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.3.tgz", + "integrity": "sha512-bKCMKZvWIjYD0BLGnNrxVuw4dkWCYsLqFOUWw8VgKF/+5Y+mE7LfHWPIYoDXowH+3a9LsWDMo0uAP8YDosPvHQ==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.3.0", + "array-from": "^2.1.1", + "lodash": "^4.17.15" + } + }, + "@sinonjs/text-encoding": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", + "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", + "dev": true + }, + "@types/babel-types": { + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.8.tgz", + "integrity": "sha512-jvu8g4LR7+p6ao30RhTREnEhHxmP4/R9D9/rOR/Kq14FztORty9SKgtOZUNZNMB9CXLxZ54EWu4dArUE8WdTsw==", + "dev": true + }, + "@types/babylon": { + "version": "6.16.5", + "resolved": "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.5.tgz", + "integrity": "sha512-xH2e58elpj1X4ynnKp9qSnWlsRTIs6n3tgLGNfwAGHwePw0mulHQllV34n0T25uYSu1k0hRKkWXF890B1yS47w==", + "dev": true, + "requires": { + "@types/babel-types": "*" + } + }, + "@types/json-schema": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.5.tgz", + "integrity": "sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ==", + "dev": true + }, + "@types/node": { + "version": "14.0.27", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.27.tgz", + "integrity": "sha512-kVrqXhbclHNHGu9ztnAwSncIgJv/FaxmzXJvGXNdcCpV1b8u1/Mi6z6m0vwy0LzKeXFTPLH0NzwmoJ3fNCIq0g==" + }, + "@webassemblyjs/ast": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", + "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", + "dev": true, + "requires": { + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0" + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", + "dev": true + }, + "@webassemblyjs/helper-api-error": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", + "dev": true + }, + "@webassemblyjs/helper-buffer": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz", + "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==", + "dev": true + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", + "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", + "dev": true, + "requires": { + "@webassemblyjs/wast-printer": "1.9.0" + } + }, + "@webassemblyjs/helper-fsm": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", + "dev": true + }, + "@webassemblyjs/helper-module-context": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", + "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0" + } + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", + "dev": true + }, + "@webassemblyjs/helper-wasm-section": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz", + "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0" + } + }, + "@webassemblyjs/ieee754": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz", + "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", + "dev": true, + "requires": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "@webassemblyjs/leb128": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz", + "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", + "dev": true, + "requires": { + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/utf8": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz", + "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==", + "dev": true + }, + "@webassemblyjs/wasm-edit": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz", + "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/helper-wasm-section": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-opt": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "@webassemblyjs/wast-printer": "1.9.0" + } + }, + "@webassemblyjs/wasm-gen": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz", + "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" + } + }, + "@webassemblyjs/wasm-opt": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz", + "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0" + } + }, + "@webassemblyjs/wasm-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz", + "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" + } + }, + "@webassemblyjs/wast-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", + "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/floating-point-hex-parser": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-code-frame": "1.9.0", + "@webassemblyjs/helper-fsm": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", + "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, + "@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "dev": true + }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "requires": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + } + }, + "acorn": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", + "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", + "dev": true + }, + "acorn-globals": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz", + "integrity": "sha1-/YJw9x+7SZawBPqIDuXUZXOnMb8=", + "dev": true, + "requires": { + "acorn": "^4.0.4" + }, + "dependencies": { + "acorn": { + "version": "4.0.13", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", + "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", + "dev": true + } + } + }, + "acorn-jsx": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", + "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", + "dev": true + }, + "adbkit": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/adbkit/-/adbkit-2.11.0.tgz", + "integrity": "sha512-j2vUhEeZmCiqBP+p77CpPWQTcT20rOmSmRHFUTZUwUpxzeCd3fXop4NAGYztSY9/FNU4bT/qqvYQ4EZKuCXhfA==", + "dev": true, + "requires": { + "adbkit-logcat": "^1.1.0", + "adbkit-monkey": "~1.0.1", + "bluebird": "~2.9.24", + "commander": "^2.3.0", + "debug": "~2.6.3", + "node-forge": "^0.7.1", + "split": "~0.3.3" + }, + "dependencies": { + "bluebird": { + "version": "2.9.34", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-2.9.34.tgz", + "integrity": "sha1-L3tOyAIWMoqf3evfacjUlC/v99g=", + "dev": true + }, + "node-forge": { + "version": "0.7.6", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.6.tgz", + "integrity": "sha512-sol30LUpz1jQFBjOKwbjxijiE3b6pjd74YwfD0fJOKPjF+fONKb2Yg8rYgS6+bK6VDl+/wfr4IYpC7jDzLUIfw==", + "dev": true + } + } + }, + "adbkit-logcat": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/adbkit-logcat/-/adbkit-logcat-1.1.0.tgz", + "integrity": "sha1-Adf5sM75CTowvLOwB+//MBUIli8=", + "dev": true + }, + "adbkit-monkey": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/adbkit-monkey/-/adbkit-monkey-1.0.1.tgz", + "integrity": "sha1-8pG+cBou/FZ6Y/x6pq/N7TFDC+E=", + "dev": true, + "requires": { + "async": "~0.2.9" + }, + "dependencies": { + "async": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", + "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=", + "dev": true + } + } + }, + "addons-linter": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/addons-linter/-/addons-linter-1.4.1.tgz", + "integrity": "sha512-AX8nCD/gy/6DoX4B7vTMQV6pcP8tG0BjxB3Jv44VZrUTYG+ojHx26abRDyUn+fDqWGf8qzeVn0Vss/NMNjMouA==", + "dev": true, + "requires": { + "@babel/polyfill": "7.0.0", + "@babel/register": "7.0.0", + "ajv": "6.5.5", + "ajv-merge-patch": "4.1.0", + "chalk": "2.4.0", + "cheerio": "1.0.0-rc.2", + "columnify": "1.5.4", + "common-tags": "1.8.0", + "crx-parser": "0.1.2", + "deepmerge": "2.2.1", + "dispensary": "0.27.0", + "es6-promisify": "5.0.0", + "eslint": "5.0.1", + "eslint-plugin-no-unsafe-innerhtml": "1.0.16", + "eslint-visitor-keys": "1.0.0", + "espree": "4.1.0", + "esprima": "3.1.3", + "first-chunk-stream": "2.0.0", + "fluent-syntax": "0.7.0", + "fsevents": "2.0.1", + "glob": "7.1.3", + "is-mergeable-object": "1.1.0", + "jed": "1.1.1", + "os-locale": "3.0.1", + "pino": "5.9.0", + "po2json": "0.4.5", + "postcss": "7.0.6", + "probe-image-size": "4.0.0", + "relaxed-json": "1.0.1", + "semver": "5.6.0", + "shelljs": "0.8.3", + "snyk": "1.110.2", + "source-map-support": "0.5.6", + "strip-bom-stream": "3.0.0", + "tosource": "1.0.0", + "upath": "1.1.0", + "whatwg-url": "7.0.0", + "xmldom": "0.1.27", + "yargs": "12.0.2", + "yauzl": "2.9.2" + }, + "dependencies": { + "@babel/polyfill": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.0.0.tgz", + "integrity": "sha512-dnrMRkyyr74CRelJwvgnnSUDh2ge2NCTyHVwpOdvRMHtJUyxLtMAfhBN3s64pY41zdw0kgiLPh6S20eb1NcX6Q==", + "dev": true, + "requires": { + "core-js": "^2.5.7", + "regenerator-runtime": "^0.11.1" + } + }, + "ajv": { + "version": "6.5.5", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.5.tgz", + "integrity": "sha512-7q7gtRQDJSyuEHjuVgHoUa2VuemFiCMrfQc9Tc08XTAc4Zj/5U1buQJ0HU6i7fKjXU09SVgSmxa4sLvuvS8Iyg==", + "dev": true, + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "chalk": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", + "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "decamelize": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", + "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", + "dev": true, + "requires": { + "xregexp": "4.0.0" + } + }, + "esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", + "dev": true + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + }, + "semver": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", + "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "source-map-support": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.6.tgz", + "integrity": "sha512-N4KXEz7jcKqPf2b2vZF11lQIz9W5ZMuUcIOGj243lduidkf2fjkVKJS9vNxVWn3u/uxX38AcE8U9nnH9FPcq+g==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "xregexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", + "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", + "dev": true + }, + "yargs": { + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.2.tgz", + "integrity": "sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ==", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "decamelize": "^2.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^1.0.1", + "os-locale": "^3.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^10.1.0" + } + }, + "yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "dev": true, + "requires": { + "camelcase": "^4.1.0" + } + }, + "yauzl": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.9.2.tgz", + "integrity": "sha1-T7G8euH8L1cDe1SvasyP4QMcW3c=", + "dev": true, + "requires": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + } + } + }, + "adm-zip": { + "version": "0.4.16", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.16.tgz", + "integrity": "sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg==", + "dev": true + }, + "agent-base": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", + "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", + "dev": true, + "requires": { + "es6-promisify": "^5.0.0" + } + }, + "ajv": { + "version": "6.12.3", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.3.tgz", + "integrity": "sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ajv-errors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", + "dev": true + }, + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true + }, + "ajv-merge-patch": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ajv-merge-patch/-/ajv-merge-patch-4.1.0.tgz", + "integrity": "sha512-0mAYXMSauA8RZ7r+B4+EAOYcZEcO9OK5EiQCR7W7Cv4E44pJj56ZnkKLJ9/PAcOc0dT+LlV9fdDcq2TxVJfOYw==", + "dev": true, + "requires": { + "fast-json-patch": "^2.0.6", + "json-merge-patch": "^0.2.3" + } + }, + "align-text": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", + "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", + "dev": true, + "requires": { + "kind-of": "^3.0.2", + "longest": "^1.0.1", + "repeat-string": "^1.5.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "dev": true + }, + "ansi-align": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", + "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", + "dev": true, + "requires": { + "string-width": "^2.0.0" + } + }, + "ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "dev": true + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "ansicolors": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz", + "integrity": "sha1-ZlWX3oap/+Oqm/vmyuXG6kJrSXk=", + "dev": true + }, + "any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=", + "dev": true + }, + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true + }, + "archiver": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-1.3.0.tgz", + "integrity": "sha1-TyGU1tj5nfP1MeaIHxTxXVX6ryI=", + "dev": true, + "requires": { + "archiver-utils": "^1.3.0", + "async": "^2.0.0", + "buffer-crc32": "^0.2.1", + "glob": "^7.0.0", + "lodash": "^4.8.0", + "readable-stream": "^2.0.0", + "tar-stream": "^1.5.0", + "walkdir": "^0.0.11", + "zip-stream": "^1.1.0" + }, + "dependencies": { + "async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dev": true, + "requires": { + "lodash": "^4.17.14" + } + } + } + }, + "archiver-utils": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-1.3.0.tgz", + "integrity": "sha1-5QtMCccL89aA4y/xt5lOn52JUXQ=", + "dev": true, + "requires": { + "glob": "^7.0.0", + "graceful-fs": "^4.1.0", + "lazystream": "^1.0.0", + "lodash": "^4.8.0", + "normalize-path": "^2.0.0", + "readable-stream": "^2.0.0" + } + }, + "archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", + "dev": true + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + }, + "dependencies": { + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + } + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true + }, + "array-differ": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", + "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", + "dev": true + }, + "array-each": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", + "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=", + "dev": true + }, + "array-filter": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", + "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=", + "dev": true + }, + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, + "array-from": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", + "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", + "dev": true + }, + "array-map": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz", + "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=", + "dev": true + }, + "array-reduce": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz", + "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=", + "dev": true + }, + "array-slice": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", + "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==", + "dev": true + }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true + }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true + }, + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", + "dev": true + }, + "asn1": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", + "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=", + "dev": true + }, + "asn1.js": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", + "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + } + } + }, + "assert": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", + "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "dev": true, + "requires": { + "object-assign": "^4.1.1", + "util": "0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "dev": true + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "dev": true, + "requires": { + "inherits": "2.0.1" + } + } + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + }, + "assertion-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "dev": true + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true + }, + "ast-types": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.3.tgz", + "integrity": "sha512-XTZ7xGML849LkQP86sWdQzfhwbt3YwIO6MqbX9mUNYY98VKaaVZP7YNNm70IpwecbkkxmfC5IYAzOQ/2p29zRA==", + "dev": true + }, + "async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true + }, + "async-each": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", + "dev": true + }, + "async-limiter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", + "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "dev": true + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true + }, + "aws4": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.0.tgz", + "integrity": "sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA==", + "dev": true + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dev": true, + "requires": { + "chalk": "^1.1.3", + "esutils": "^2.0.2", + "js-tokens": "^3.0.2" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "babel-core": { + "version": "6.26.3", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", + "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", + "dev": true, + "requires": { + "babel-code-frame": "^6.26.0", + "babel-generator": "^6.26.0", + "babel-helpers": "^6.24.1", + "babel-messages": "^6.23.0", + "babel-register": "^6.26.0", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "convert-source-map": "^1.5.1", + "debug": "^2.6.9", + "json5": "^0.5.1", + "lodash": "^4.17.4", + "minimatch": "^3.0.4", + "path-is-absolute": "^1.0.1", + "private": "^0.1.8", + "slash": "^1.0.0", + "source-map": "^0.5.7" + }, + "dependencies": { + "json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "dev": true + } + } + }, + "babel-generator": { + "version": "6.26.1", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", + "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", + "dev": true, + "requires": { + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "detect-indent": "^4.0.0", + "jsesc": "^1.3.0", + "lodash": "^4.17.4", + "source-map": "^0.5.7", + "trim-right": "^1.0.1" + }, + "dependencies": { + "jsesc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", + "dev": true + } + } + }, + "babel-helper-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", + "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", + "dev": true, + "requires": { + "babel-helper-get-function-arity": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helper-get-function-arity": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", + "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-helper-remap-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", + "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", + "dev": true, + "requires": { + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helpers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", + "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" + } + }, + "babel-loader": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.1.0.tgz", + "integrity": "sha512-7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw==", + "dev": true, + "requires": { + "find-cache-dir": "^2.1.0", + "loader-utils": "^1.4.0", + "mkdirp": "^0.5.3", + "pify": "^4.0.1", + "schema-utils": "^2.6.5" + } + }, + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-dynamic-import-node": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "dev": true, + "requires": { + "object.assign": "^4.1.0" + } + }, + "babel-plugin-syntax-async-functions": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", + "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", + "dev": true + }, + "babel-plugin-transform-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", + "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", + "dev": true, + "requires": { + "babel-helper-remap-async-to-generator": "^6.24.1", + "babel-plugin-syntax-async-functions": "^6.8.0", + "babel-runtime": "^6.22.0" + } + }, + "babel-polyfill": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", + "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "core-js": "^2.5.0", + "regenerator-runtime": "^0.10.5" + }, + "dependencies": { + "regenerator-runtime": { + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", + "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=", + "dev": true + } + } + }, + "babel-register": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", + "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", + "dev": true, + "requires": { + "babel-core": "^6.26.0", + "babel-runtime": "^6.26.0", + "core-js": "^2.5.0", + "home-or-tmp": "^2.0.0", + "lodash": "^4.17.4", + "mkdirp": "^0.5.1", + "source-map-support": "^0.4.15" + }, + "dependencies": { + "source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "dev": true, + "requires": { + "source-map": "^0.5.6" + } + } + } + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dev": true, + "requires": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + }, + "dependencies": { + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + } + } + }, + "babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "lodash": "^4.17.4" + } + }, + "babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "dev": true, + "requires": { + "babel-code-frame": "^6.26.0", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "debug": "^2.6.8", + "globals": "^9.18.0", + "invariant": "^2.2.2", + "lodash": "^4.17.4" + }, + "dependencies": { + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true + } + } + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" + }, + "dependencies": { + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "dev": true + } + } + }, + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "base64-js": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", + "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", + "dev": true + }, + "base64url": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", + "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", + "dev": true + }, + "basic-auth": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz", + "integrity": "sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==", + "dev": true, + "requires": { + "safe-buffer": "5.1.2" + } + }, + "batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", + "dev": true + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "before-after-hook": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.1.0.tgz", + "integrity": "sha512-IWIbu7pMqyw3EAJHzzHbWa85b6oud/yfKYg5rqB5hNE8CeMi3nX+2C2sj0HswfblST86hpVEOAb9x34NZd6P7A==" + }, + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "dev": true + }, + "bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "dev": true, + "optional": true, + "requires": { + "file-uri-to-path": "1.0.0" + } + }, + "bl": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.3.tgz", + "integrity": "sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==", + "dev": true, + "requires": { + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" + } + }, + "bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "dev": true + }, + "bn.js": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.2.tgz", + "integrity": "sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA==", + "dev": true + }, + "body": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/body/-/body-5.1.0.tgz", + "integrity": "sha1-5LoM5BCkaTYyM2dgnstOZVMSUGk=", + "dev": true, + "requires": { + "continuable-cache": "^0.3.1", + "error": "^7.0.0", + "raw-body": "~1.1.0", + "safe-json-parse": "~1.0.1" + }, + "dependencies": { + "bytes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz", + "integrity": "sha1-NWnt6Lo0MV+rmcPpLLBMciDeH6g=", + "dev": true + }, + "raw-body": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-1.1.7.tgz", + "integrity": "sha1-HQJ8K/oRasxmI7yo8AAWVyqH1CU=", + "dev": true, + "requires": { + "bytes": "1", + "string_decoder": "0.10" + } + } + } + }, + "body-parser": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", + "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", + "requires": { + "bytes": "3.1.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.7.0", + "raw-body": "2.4.0", + "type-is": "~1.6.17" + } + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", + "dev": true + }, + "bootstrap": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-3.4.1.tgz", + "integrity": "sha512-yN5oZVmRCwe5aKwzRj6736nSmKDX7pLYwsXiCj/EYmo16hODaBiT4En5btW/jhBF/seV+XMx3aYwukYC3A49DA==", + "dev": true + }, + "boxen": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", + "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", + "dev": true, + "requires": { + "ansi-align": "^2.0.0", + "camelcase": "^4.0.0", + "chalk": "^2.0.1", + "cli-boxes": "^1.0.0", + "string-width": "^2.0.0", + "term-size": "^1.2.0", + "widest-line": "^2.0.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + } + } + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "dev": true + }, + "browser-stdout": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", + "dev": true + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, + "requires": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "browserify-rsa": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "randombytes": "^2.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + } + } + }, + "browserify-sign": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", + "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", + "dev": true, + "requires": { + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.3", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "dependencies": { + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "requires": { + "safe-buffer": "~5.2.0" + } + } + } + }, + "browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dev": true, + "requires": { + "pako": "~1.0.5" + } + }, + "browserslist": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.13.0.tgz", + "integrity": "sha512-MINatJ5ZNrLnQ6blGvePd/QOz9Xtu+Ne+x29iQSCHfkU5BugKVJwZKn/iiL8UbpIpa3JhviKjz+XxMo0m2caFQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001093", + "electron-to-chromium": "^1.3.488", + "escalade": "^3.0.1", + "node-releases": "^1.1.58" + } + }, + "buffer": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz", + "integrity": "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==", + "dev": true, + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4" + } + }, + "buffer-alloc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "dev": true, + "requires": { + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" + } + }, + "buffer-alloc-unsafe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", + "dev": true + }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", + "dev": true + }, + "buffer-equal-constant-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", + "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=", + "dev": true + }, + "buffer-fill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=", + "dev": true + }, + "buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "dev": true + }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "dev": true + }, + "bunyan": { + "version": "1.8.12", + "resolved": "https://registry.npmjs.org/bunyan/-/bunyan-1.8.12.tgz", + "integrity": "sha1-8VDw9nSKvdcq6uhPBEA74u8RN5c=", + "dev": true, + "requires": { + "dtrace-provider": "~0.8", + "moment": "^2.10.6", + "mv": "~2", + "safe-json-stringify": "~1" + } + }, + "bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" + }, + "cacache": { + "version": "10.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz", + "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==", + "dev": true, + "requires": { + "bluebird": "^3.5.1", + "chownr": "^1.0.1", + "glob": "^7.1.2", + "graceful-fs": "^4.1.11", + "lru-cache": "^4.1.1", + "mississippi": "^2.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.2", + "ssri": "^5.2.4", + "unique-filename": "^1.1.0", + "y18n": "^4.0.0" + }, + "dependencies": { + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } + } + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + } + }, + "caller-path": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz", + "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", + "dev": true, + "requires": { + "callsites": "^0.2.0" + } + }, + "callsites": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz", + "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=", + "dev": true + }, + "camelcase": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", + "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", + "dev": true + }, + "caniuse-lite": { + "version": "1.0.30001111", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001111.tgz", + "integrity": "sha512-xnDje2wchd/8mlJu8sXvWxOGvMgv+uT3iZ3bkIAynKOzToCssWCmkz/ZIkQBs/2pUB4uwnJKVORWQ31UkbVjOg==", + "dev": true + }, + "capture-stack-trace": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz", + "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==", + "dev": true + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "center-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", + "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", + "dev": true, + "requires": { + "align-text": "^0.1.3", + "lazy-cache": "^1.0.3" + } + }, + "chai": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz", + "integrity": "sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw==", + "dev": true, + "requires": { + "assertion-error": "^1.1.0", + "check-error": "^1.0.2", + "deep-eql": "^3.0.1", + "get-func-name": "^2.0.0", + "pathval": "^1.1.0", + "type-detect": "^4.0.5" + } + }, + "chai-arrays": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/chai-arrays/-/chai-arrays-2.2.0.tgz", + "integrity": "sha512-4awrdGI2EH8owJ9I58PXwG4N56/FiM8bsn4CVSNEgr4GKAM6Kq5JPVApUbhUBjDakbZNuRvV7quRSC38PWq/tg==", + "dev": true + }, + "chai-as-promised": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.1.tgz", + "integrity": "sha512-azL6xMoi+uxu6z4rhWQ1jbdUhOMhis2PvscD/xjLqNMkv3BPPp2JyyuTHOrf9BOosGpNQ11v6BKv/g57RXbiaA==", + "dev": true, + "requires": { + "check-error": "^1.0.2" + } + }, + "chai-json-schema": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/chai-json-schema/-/chai-json-schema-1.5.1.tgz", + "integrity": "sha512-TR/xPDxRhqwFFCWg1HgL8nNWbpNfUwaib6pBN++QKpnd0t+o3+MBvAn5CM1mpdUMaM76oJAtUjGKdjGad01lIA==", + "dev": true, + "requires": { + "jsonpointer.js": "0.4.0", + "tv4": "^1.3.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "character-parser": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", + "integrity": "sha1-x84o821LzZdE5f/CxfzeHHMmH8A=", + "dev": true, + "requires": { + "is-regex": "^1.0.3" + } + }, + "chardet": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", + "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=", + "dev": true + }, + "check-error": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", + "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", + "dev": true + }, + "cheerio": { + "version": "1.0.0-rc.2", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.2.tgz", + "integrity": "sha1-S59TqBsn5NXawxwP/Qz6A8xoMNs=", + "dev": true, + "requires": { + "css-select": "~1.2.0", + "dom-serializer": "~0.1.0", + "entities": "~1.1.1", + "htmlparser2": "^3.9.1", + "lodash": "^4.15.0", + "parse5": "^3.0.1" + } + }, + "chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "dev": true, + "requires": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "fsevents": "^1.2.7", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + }, + "dependencies": { + "fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "dev": true, + "optional": true, + "requires": { + "bindings": "^1.5.0", + "nan": "^2.12.1" + } + }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "upath": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", + "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", + "dev": true + } + } + }, + "chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "dev": true + }, + "chrome-trace-event": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", + "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "circular-json": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", + "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", + "dev": true + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "clean-css": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz", + "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==", + "dev": true, + "requires": { + "source-map": "~0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "cli-boxes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", + "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", + "dev": true + }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "requires": { + "restore-cursor": "^2.0.0" + } + }, + "cli-width": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", + "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==", + "dev": true + }, + "clipboard-polyfill": { + "version": "2.8.6", + "resolved": "https://registry.npmjs.org/clipboard-polyfill/-/clipboard-polyfill-2.8.6.tgz", + "integrity": "sha512-kz/1ov+PXsBpGnW9XJH3dLWdYj12FpXqO89Dngm/GRPoI36E/tnYs6N0YPTEhxM9WHAlFiN5eoyIVuv5nzKXvg==", + "dev": true + }, + "cliui": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", + "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", + "dev": true, + "requires": { + "center-align": "^0.1.1", + "right-align": "^0.1.1", + "wordwrap": "0.0.2" + } + }, + "clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "dev": true + }, + "clone-deep": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-0.3.0.tgz", + "integrity": "sha1-NIxhrpzb4O3+BT2R/0zFIdeQ7eg=", + "dev": true, + "requires": { + "for-own": "^1.0.0", + "is-plain-object": "^2.0.1", + "kind-of": "^3.2.2", + "shallow-clone": "^0.1.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true + }, + "codemirror": { + "version": "5.56.0", + "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.56.0.tgz", + "integrity": "sha512-MfKVmYgifXjQpLSgpETuih7A7WTTIsxvKfSLGseTY5+qt0E1UD1wblZGM6WLenORo8sgmf+3X+WTe2WF7mufyw==", + "dev": true + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "colors": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", + "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", + "dev": true + }, + "columnify": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/columnify/-/columnify-1.5.4.tgz", + "integrity": "sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs=", + "dev": true, + "requires": { + "strip-ansi": "^3.0.0", + "wcwidth": "^1.0.0" + } + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "common-tags": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.0.tgz", + "integrity": "sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw==", + "dev": true + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true + }, + "compress-commons": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz", + "integrity": "sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=", + "dev": true, + "requires": { + "buffer-crc32": "^0.2.1", + "crc32-stream": "^2.0.0", + "normalize-path": "^2.0.0", + "readable-stream": "^2.0.0" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "configstore": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", + "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", + "dev": true, + "requires": { + "dot-prop": "^4.1.0", + "graceful-fs": "^4.1.2", + "make-dir": "^1.0.0", + "unique-string": "^1.0.0", + "write-file-atomic": "^2.0.0", + "xdg-basedir": "^3.0.0" + }, + "dependencies": { + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + } + } + }, + "connect": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", + "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", + "dev": true, + "requires": { + "debug": "2.6.9", + "finalhandler": "1.1.2", + "parseurl": "~1.3.3", + "utils-merge": "1.0.1" + } + }, + "connect-livereload": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/connect-livereload/-/connect-livereload-0.5.4.tgz", + "integrity": "sha1-gBV9E3HJ83zBQDmrGJWXDRGdw7w=", + "dev": true + }, + "console-browserify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", + "dev": true + }, + "constantinople": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-3.1.2.tgz", + "integrity": "sha512-yePcBqEFhLOqSBtwYOGGS1exHo/s1xjekXiinh4itpNQGCu4KA1euPh1fg07N2wMITZXQkBz75Ntdt1ctGZouw==", + "dev": true, + "requires": { + "@types/babel-types": "^7.0.0", + "@types/babylon": "^6.16.2", + "babel-types": "^6.26.0", + "babylon": "^6.18.0" + } + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", + "dev": true + }, + "content-disposition": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", + "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", + "requires": { + "safe-buffer": "5.1.2" + } + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" + }, + "continuable-cache": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/continuable-cache/-/continuable-cache-0.3.1.tgz", + "integrity": "sha1-vXJ6f67XfnH/OYWskzUakSczrQ8=", + "dev": true + }, + "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==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "cookie": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", + "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==" + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "copy-concurrently": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", + "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "dev": true, + "requires": { + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" + }, + "dependencies": { + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } + } + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true + }, + "core-js": { + "version": "2.6.11", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", + "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==", + "dev": true + }, + "core-js-compat": { + "version": "3.6.5", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.5.tgz", + "integrity": "sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng==", + "dev": true, + "requires": { + "browserslist": "^4.8.5", + "semver": "7.0.0" + }, + "dependencies": { + "semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", + "dev": true + } + } + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "crc": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz", + "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==", + "dev": true, + "requires": { + "buffer": "^5.1.0" + } + }, + "crc32-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz", + "integrity": "sha1-483TtN8xaN10494/u8t7KX/pCPQ=", + "dev": true, + "requires": { + "crc": "^3.4.4", + "readable-stream": "^2.0.0" + } + }, + "create-ecdh": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", + "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + } + } + }, + "create-error-class": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", + "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", + "dev": true, + "requires": { + "capture-stack-trace": "^1.0.0" + } + }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "crx": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/crx/-/crx-3.2.1.tgz", + "integrity": "sha1-Fyk+51790IxtHIs+F0nS1XV89Cs=", + "dev": true, + "requires": { + "archiver": "^1.1.0", + "commander": "^2.5.0", + "es6-promise": "^3.0.0", + "node-rsa": "^0.2.10" + } + }, + "crx-parser": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/crx-parser/-/crx-parser-0.1.2.tgz", + "integrity": "sha1-fu7tnt3JXiLBiTguNGJARKiaWm0=", + "dev": true + }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, + "requires": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + } + }, + "crypto-random-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", + "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", + "dev": true + }, + "css": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", + "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "source-map": "^0.6.1", + "source-map-resolve": "^0.5.2", + "urix": "^0.1.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "css-parse": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-1.7.0.tgz", + "integrity": "sha1-Mh9s9zeCpv91ERE5D8BeLGV9jJs=", + "dev": true + }, + "css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "dev": true, + "requires": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "css-what": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", + "dev": true + }, + "cyclist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", + "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", + "dev": true + }, + "d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "dev": true, + "requires": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "data-uri-to-buffer": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-1.2.0.tgz", + "integrity": "sha512-vKQ9DTQPN1FLYiiEEOQ6IBGFqvjCa5rSK3cWMy/Nespm5d/x3dGFT9UBZnkLxCwua/IXBi2TYnwTEpsOvhC4UQ==", + "dev": true + }, + "dateformat": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", + "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", + "dev": true + }, + "debounce": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.1.0.tgz", + "integrity": "sha512-ZQVKfRVlwRfD150ndzEK8M90ABT+Y/JQKs4Y7U4MXdpuoUkkrr4DwKbVux3YjylA5bUMUj0Nc3pMxPJX6N2QQQ==", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true + }, + "deep-eql": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", + "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", + "dev": true, + "requires": { + "type-detect": "^4.0.0" + } + }, + "deep-equal": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", + "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", + "dev": true, + "requires": { + "is-arguments": "^1.0.4", + "is-date-object": "^1.0.1", + "is-regex": "^1.0.4", + "object-is": "^1.0.1", + "object-keys": "^1.1.1", + "regexp.prototype.flags": "^1.2.0" + } + }, + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true + }, + "deep-for-each": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/deep-for-each/-/deep-for-each-2.0.3.tgz", + "integrity": "sha512-Y9mu+rplGcNZ7veer+5rqcdI9w3aPb7/WyE/nYnsuPevaE2z5YuC2u7/Gz/hIKsa0zo8sE8gKoBimSNsO/sr+A==", + "dev": true, + "requires": { + "lodash.isplainobject": "^4.0.6" + } + }, + "deep-freeze": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/deep-freeze/-/deep-freeze-0.0.1.tgz", + "integrity": "sha1-OgsABd4YZygZ39OM0x+RF5yJPoQ=", + "dev": true + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "deepcopy": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/deepcopy/-/deepcopy-0.6.3.tgz", + "integrity": "sha1-Y0eA8vhlardxr4+oQx7RzO5Vx7A=", + "dev": true + }, + "deepmerge": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-2.2.1.tgz", + "integrity": "sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==", + "dev": true + }, + "defaults": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", + "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "dev": true, + "requires": { + "clone": "^1.0.2" + } + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "requires": { + "object-keys": "^1.0.12" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "degenerator": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-1.0.4.tgz", + "integrity": "sha1-/PSQo37OJmRk2cxDGrmMWBnO0JU=", + "dev": true, + "requires": { + "ast-types": "0.x.x", + "escodegen": "1.x.x", + "esprima": "3.x.x" + }, + "dependencies": { + "esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", + "dev": true + } + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" + }, + "deprecation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", + "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==" + }, + "des.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "desandro-matches-selector": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/desandro-matches-selector/-/desandro-matches-selector-2.0.2.tgz", + "integrity": "sha1-cXvu1NwT59jzdi9wem1YpndCGOE=", + "dev": true + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "detect-file": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", + "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", + "dev": true + }, + "detect-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", + "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "dev": true, + "requires": { + "repeating": "^2.0.0" + } + }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + } + } + }, + "dispensary": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/dispensary/-/dispensary-0.27.0.tgz", + "integrity": "sha512-bG9pSBPH8wTEaugUIBAbBvBHynqOoGxefOT4YXlPoUc9AxQGDUO1uFHafDVWnsGWiSYvTUga0aZ9xThzfGQtlQ==", + "dev": true, + "requires": { + "array-from": "~2.1.1", + "async": "~2.6.0", + "natural-compare-lite": "~1.4.0", + "pino": "~5.8.0", + "request": "~2.88.0", + "sha.js": "~2.4.4", + "source-map-support": "~0.5.4", + "yargs": "~12.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dev": true, + "requires": { + "lodash": "^4.17.14" + } + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "pino": { + "version": "5.8.1", + "resolved": "https://registry.npmjs.org/pino/-/pino-5.8.1.tgz", + "integrity": "sha512-7bVFzUw3ffIfOM3t7MuQ9KsH+wX5bdGdQhGfccKgleoY7qG4FO3CmVSjywlFmmYGyMOISi1LDGC6JMEH7XkZJg==", + "dev": true, + "requires": { + "fast-json-parse": "^1.0.3", + "fast-redact": "^1.2.0", + "fast-safe-stringify": "^2.0.6", + "flatstr": "^1.0.5", + "pino-std-serializers": "^2.3.0", + "pump": "^3.0.0", + "quick-format-unescaped": "^3.0.0", + "sonic-boom": "^0.6.1" + } + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "yargs": { + "version": "12.0.5", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", + "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "decamelize": "^1.2.0", + "find-up": "^3.0.0", + "get-caller-file": "^1.0.1", + "os-locale": "^3.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^11.1.1" + } + } + } + }, + "dockerfile-ast": { + "version": "0.0.12", + "resolved": "https://registry.npmjs.org/dockerfile-ast/-/dockerfile-ast-0.0.12.tgz", + "integrity": "sha512-cIV8oXkAxpIuN5XgG0TGg07nLDgrj4olkfrdT77OTA3VypscsYHBUg/FjHxW9K3oA+CyH4Th/qtoMgTVpzSobw==", + "dev": true, + "requires": { + "vscode-languageserver-types": "^3.5.0" + } + }, + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "doctypes": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", + "integrity": "sha1-6oCxBqh1OHdOijpKWv4pPeSJ4Kk=", + "dev": true + }, + "dom-serializer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", + "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", + "dev": true, + "requires": { + "domelementtype": "^1.3.0", + "entities": "^1.1.1" + } + }, + "dom-walk": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", + "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==", + "dev": true + }, + "domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "dev": true + }, + "domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "dev": true + }, + "domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "dev": true, + "requires": { + "domelementtype": "1" + } + }, + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "dev": true, + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "dot-prop": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.1.tgz", + "integrity": "sha512-l0p4+mIuJIua0mhxGoh4a+iNL9bmeK5DvnSVQa6T0OhrVmaEa1XScX5Etc673FePCJOArq/4Pa2cLGODUWTPOQ==", + "dev": true, + "requires": { + "is-obj": "^1.0.0" + } + }, + "dotenv": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz", + "integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==" + }, + "dtrace-provider": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/dtrace-provider/-/dtrace-provider-0.8.8.tgz", + "integrity": "sha512-b7Z7cNtHPhH9EJhNNbbeqTcXB8LGFFZhq1PGgEvpeHlzd36bhbdTWoE/Ba/YguqpBSlAPKnARWhVlhunCMwfxg==", + "dev": true, + "optional": true, + "requires": { + "nan": "^2.14.0" + } + }, + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "dev": true + }, + "duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "dev": true, + "requires": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "ecdsa-sig-formatter": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", + "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "electron-to-chromium": { + "version": "1.3.523", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.523.tgz", + "integrity": "sha512-D4/3l5DpciddD92IDRtpLearQSGzly8FwBJv+nITvLH8YJrFabpDFe4yuiOJh2MS4/EsXqyQTXyw1toeYPtshQ==", + "dev": true + }, + "elliptic": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", + "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", + "dev": true, + "requires": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + } + } + }, + "email-validator": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/email-validator/-/email-validator-2.0.4.tgz", + "integrity": "sha512-gYCwo7kh5S3IDyZPLZf6hSS0MnZT8QmJFqYvbqlDZSbwdZlY6QZWxJ4i/6UhITOJ4XzyI647Bm2MXKCLqnJ4nQ==", + "dev": true + }, + "emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" + }, + "encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "requires": { + "iconv-lite": "^0.6.2" + }, + "dependencies": { + "iconv-lite": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz", + "integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + } + } + }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dev": true, + "requires": { + "once": "^1.4.0" + } + }, + "enhanced-resolve": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz", + "integrity": "sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "memory-fs": "^0.5.0", + "tapable": "^1.0.0" + }, + "dependencies": { + "memory-fs": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", + "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", + "dev": true, + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + } + } + }, + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "dev": true + }, + "errno": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", + "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "dev": true, + "requires": { + "prr": "~1.0.1" + } + }, + "error": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/error/-/error-7.2.1.tgz", + "integrity": "sha512-fo9HBvWnx3NGUKMvMwB/CBCMMrfEJgbDTVDEkPygA3Bdd3lM1OyCd+rbQ8BwnpF6GdVeOLDNmyL4N5Bg80ZvdA==", + "dev": true, + "requires": { + "string-template": "~0.2.1" + } + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es-abstract": { + "version": "1.17.6", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", + "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", + "dev": true, + "requires": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.0", + "is-regex": "^1.1.0", + "object-inspect": "^1.7.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.0", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + } + }, + "es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "es5-ext": { + "version": "0.10.53", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", + "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", + "dev": true, + "requires": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.3", + "next-tick": "~1.0.0" + } + }, + "es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "dev": true + }, + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "es6-map": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", + "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-set": "~0.1.5", + "es6-symbol": "~3.1.1", + "event-emitter": "~0.3.5" + } + }, + "es6-promise": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz", + "integrity": "sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM=", + "dev": true + }, + "es6-promisify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", + "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", + "dev": true, + "requires": { + "es6-promise": "^4.0.3" + }, + "dependencies": { + "es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", + "dev": true + } + } + }, + "es6-set": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", + "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-symbol": "3.1.1", + "event-emitter": "~0.3.5" + }, + "dependencies": { + "es6-symbol": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", + "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + } + } + }, + "es6-symbol": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "dev": true, + "requires": { + "d": "^1.0.1", + "ext": "^1.1.2" + } + }, + "es6-weak-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", + "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "^0.10.46", + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.1" + } + }, + "escalade": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.0.2.tgz", + "integrity": "sha512-gPYAU37hYCUhW5euPeR+Y74F7BL+IBsV93j5cvGriSaD1aG6MGsqsV1yamRdrWrb2j3aiZvb0X+UBOWpx3JWtQ==", + "dev": true + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "escodegen": { + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", + "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", + "dev": true, + "requires": { + "esprima": "^4.0.1", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true + } + } + }, + "escope": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", + "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", + "dev": true, + "requires": { + "es6-map": "^0.1.3", + "es6-weak-map": "^2.0.1", + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "eslint": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.0.1.tgz", + "integrity": "sha512-D5nG2rErquLUstgUaxJlWB5+gu+U/3VDY0fk/Iuq8y9CUFy/7Y6oF4N2cR1tV8knzQvciIbfqfohd359xTLIKQ==", + "dev": true, + "requires": { + "ajv": "^6.5.0", + "babel-code-frame": "^6.26.0", + "chalk": "^2.1.0", + "cross-spawn": "^6.0.5", + "debug": "^3.1.0", + "doctrine": "^2.1.0", + "eslint-scope": "^4.0.0", + "eslint-visitor-keys": "^1.0.0", + "espree": "^4.0.0", + "esquery": "^1.0.1", + "esutils": "^2.0.2", + "file-entry-cache": "^2.0.0", + "functional-red-black-tree": "^1.0.1", + "glob": "^7.1.2", + "globals": "^11.5.0", + "ignore": "^3.3.3", + "imurmurhash": "^0.1.4", + "inquirer": "^5.2.0", + "is-resolvable": "^1.1.0", + "js-yaml": "^3.11.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.5", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.2", + "path-is-inside": "^1.0.2", + "pluralize": "^7.0.0", + "progress": "^2.0.0", + "regexpp": "^1.1.0", + "require-uncached": "^1.0.3", + "semver": "^5.5.0", + "string.prototype.matchall": "^2.0.0", + "strip-ansi": "^4.0.0", + "strip-json-comments": "^2.0.1", + "table": "^4.0.3", + "text-table": "^0.2.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "eslint-plugin-no-unsafe-innerhtml": { + "version": "1.0.16", + "resolved": "https://registry.npmjs.org/eslint-plugin-no-unsafe-innerhtml/-/eslint-plugin-no-unsafe-innerhtml-1.0.16.tgz", + "integrity": "sha1-fQKHjI6b95FriINtWsEitC8VGTI=", + "dev": true, + "requires": { + "eslint": "^3.7.1" + }, + "dependencies": { + "acorn": { + "version": "5.7.4", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz", + "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==", + "dev": true + }, + "acorn-jsx": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", + "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", + "dev": true, + "requires": { + "acorn": "^3.0.4" + }, + "dependencies": { + "acorn": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", + "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", + "dev": true + } + } + }, + "ajv": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", + "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", + "dev": true, + "requires": { + "co": "^4.6.0", + "json-stable-stringify": "^1.0.1" + } + }, + "ajv-keywords": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz", + "integrity": "sha1-MU3QpLM2j609/NxU7eYXG4htrzw=", + "dev": true + }, + "ansi-escapes": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", + "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", + "dev": true + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "cli-cursor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", + "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", + "dev": true, + "requires": { + "restore-cursor": "^1.0.1" + } + }, + "eslint": { + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-3.19.0.tgz", + "integrity": "sha1-yPxiAcf0DdCJQbh8CFdnOGpnmsw=", + "dev": true, + "requires": { + "babel-code-frame": "^6.16.0", + "chalk": "^1.1.3", + "concat-stream": "^1.5.2", + "debug": "^2.1.1", + "doctrine": "^2.0.0", + "escope": "^3.6.0", + "espree": "^3.4.0", + "esquery": "^1.0.0", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "file-entry-cache": "^2.0.0", + "glob": "^7.0.3", + "globals": "^9.14.0", + "ignore": "^3.2.0", + "imurmurhash": "^0.1.4", + "inquirer": "^0.12.0", + "is-my-json-valid": "^2.10.0", + "is-resolvable": "^1.0.0", + "js-yaml": "^3.5.1", + "json-stable-stringify": "^1.0.0", + "levn": "^0.3.0", + "lodash": "^4.0.0", + "mkdirp": "^0.5.0", + "natural-compare": "^1.4.0", + "optionator": "^0.8.2", + "path-is-inside": "^1.0.1", + "pluralize": "^1.2.1", + "progress": "^1.1.8", + "require-uncached": "^1.0.2", + "shelljs": "^0.7.5", + "strip-bom": "^3.0.0", + "strip-json-comments": "~2.0.1", + "table": "^3.7.8", + "text-table": "~0.2.0", + "user-home": "^2.0.0" + } + }, + "espree": { + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz", + "integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==", + "dev": true, + "requires": { + "acorn": "^5.5.0", + "acorn-jsx": "^3.0.0" + } + }, + "figures": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", + "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5", + "object-assign": "^4.1.0" + } + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true + }, + "inquirer": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-0.12.0.tgz", + "integrity": "sha1-HvK/1jUE3wvHV4X/+MLEHfEvB34=", + "dev": true, + "requires": { + "ansi-escapes": "^1.1.0", + "ansi-regex": "^2.0.0", + "chalk": "^1.0.0", + "cli-cursor": "^1.0.1", + "cli-width": "^2.0.0", + "figures": "^1.3.5", + "lodash": "^4.3.0", + "readline2": "^1.0.1", + "run-async": "^0.1.0", + "rx-lite": "^3.1.2", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.0", + "through": "^2.3.6" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "onetime": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", + "dev": true + }, + "pluralize": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-1.2.1.tgz", + "integrity": "sha1-0aIUg/0iu0HlihL6NCGCMUCJfEU=", + "dev": true + }, + "progress": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", + "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=", + "dev": true + }, + "restore-cursor": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", + "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "dev": true, + "requires": { + "exit-hook": "^1.0.0", + "onetime": "^1.0.0" + } + }, + "run-async": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-0.1.0.tgz", + "integrity": "sha1-yK1KXhEGYeQCp9IbUw4AnyX444k=", + "dev": true, + "requires": { + "once": "^1.3.0" + } + }, + "shelljs": { + "version": "0.7.8", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.8.tgz", + "integrity": "sha1-3svPh0sNHl+3LhSxZKloMEjprLM=", + "dev": true, + "requires": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + } + }, + "slice-ansi": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", + "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=", + "dev": true + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + }, + "table": { + "version": "3.8.3", + "resolved": "https://registry.npmjs.org/table/-/table-3.8.3.tgz", + "integrity": "sha1-K7xULw/amGGnVdOUf+/Ys/UThV8=", + "dev": true, + "requires": { + "ajv": "^4.7.0", + "ajv-keywords": "^1.0.0", + "chalk": "^1.1.1", + "lodash": "^4.0.0", + "slice-ansi": "0.0.4", + "string-width": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + } + } + }, + "eslint-scope": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "dev": true, + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "eslint-visitor-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", + "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", + "dev": true + }, + "esm": { + "version": "3.2.25", + "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz", + "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==", + "dev": true + }, + "espree": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-4.1.0.tgz", + "integrity": "sha512-I5BycZW6FCVIub93TeVY1s7vjhP9CY6cXCznIRfiig7nRviKZYdRnj/sHEWC6A7WE9RDWOFq9+7OsWSYz8qv2w==", + "dev": true, + "requires": { + "acorn": "^6.0.2", + "acorn-jsx": "^5.0.0", + "eslint-visitor-keys": "^1.0.0" + }, + "dependencies": { + "acorn": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", + "dev": true + } + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "esquery": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", + "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", + "dev": true, + "requires": { + "estraverse": "^5.1.0" + }, + "dependencies": { + "estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true + } + } + }, + "esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "dev": true, + "requires": { + "estraverse": "^4.1.0" + } + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + }, + "ev-emitter": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ev-emitter/-/ev-emitter-1.1.1.tgz", + "integrity": "sha512-ipiDYhdQSCZ4hSbX4rMW+XzNKMD1prg/sTvoVmSLkuQ1MVlwjJQQA+sW8tMYR3BLUr9KjodFV4pvzunvRhd33Q==", + "dev": true + }, + "event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "event-to-promise": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/event-to-promise/-/event-to-promise-0.8.0.tgz", + "integrity": "sha1-S4TxF3K28l93Uvx02XFTGsb1tiY=", + "dev": true + }, + "eventemitter2": { + "version": "0.4.14", + "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz", + "integrity": "sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas=", + "dev": true + }, + "events": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.2.0.tgz", + "integrity": "sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==", + "dev": true + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "execa": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz", + "integrity": "sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "dev": true + }, + "exit-hook": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", + "integrity": "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=", + "dev": true + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "expand-tilde": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", + "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", + "dev": true, + "requires": { + "homedir-polyfill": "^1.0.1" + } + }, + "express": { + "version": "4.17.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", + "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", + "requires": { + "accepts": "~1.3.7", + "array-flatten": "1.1.1", + "body-parser": "1.19.0", + "content-disposition": "0.5.3", + "content-type": "~1.0.4", + "cookie": "0.4.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.1.2", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.5", + "qs": "6.7.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.1.2", + "send": "0.17.1", + "serve-static": "1.14.1", + "setprototypeof": "1.1.1", + "statuses": "~1.5.0", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + } + }, + "express-sslify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/express-sslify/-/express-sslify-1.2.0.tgz", + "integrity": "sha1-MOhLzu0VV+sYdnK74UMKCioQDZw=" + }, + "ext": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", + "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "dev": true, + "requires": { + "type": "^2.0.0" + }, + "dependencies": { + "type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", + "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==", + "dev": true + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "external-editor": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", + "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", + "dev": true, + "requires": { + "chardet": "^0.4.0", + "iconv-lite": "^0.4.17", + "tmp": "^0.0.33" + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "extract-zip": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz", + "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", + "dev": true, + "requires": { + "concat-stream": "^1.6.2", + "debug": "^2.6.9", + "mkdirp": "^0.5.4", + "yauzl": "^2.10.0" + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "fast-json-parse": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/fast-json-parse/-/fast-json-parse-1.0.3.tgz", + "integrity": "sha512-FRWsaZRWEJ1ESVNbDWmsAlqDk96gPQezzLghafp5J4GUKjbCz3OkAHuZs5TuPEtkbVQERysLp9xv6c24fBm8Aw==", + "dev": true + }, + "fast-json-patch": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-2.2.1.tgz", + "integrity": "sha512-4j5uBaTnsYAV5ebkidvxiLUYOwjQ+JSFljeqfTxCrH9bDmlCQaOJFS84oDJ2rAXZq2yskmk3ORfoP9DCwqFNig==", + "dev": true, + "requires": { + "fast-deep-equal": "^2.0.1" + }, + "dependencies": { + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + } + } + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "fast-redact": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-1.5.0.tgz", + "integrity": "sha512-Afo61CgUjkzdvOKDHn08qnZ0kwck38AOGcMlvSGzvJbIab6soAP5rdoQayecGCDsD69AiF9vJBXyq31eoEO2tQ==", + "dev": true + }, + "fast-safe-stringify": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz", + "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==", + "dev": true + }, + "faye-websocket": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", + "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", + "dev": true, + "requires": { + "websocket-driver": ">=0.5.1" + } + }, + "fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", + "dev": true, + "requires": { + "pend": "~1.2.0" + } + }, + "figgy-pudding": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", + "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", + "dev": true + }, + "figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, + "file-entry-cache": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", + "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", + "dev": true, + "requires": { + "flat-cache": "^1.2.1", + "object-assign": "^4.0.1" + } + }, + "file-sync-cmp": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/file-sync-cmp/-/file-sync-cmp-0.1.1.tgz", + "integrity": "sha1-peeo/7+kk7Q7kju9TKiaU7Y7YSs=", + "dev": true + }, + "file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "dev": true + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" + } + }, + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "findup-sync": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz", + "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=", + "dev": true, + "requires": { + "glob": "~5.0.0" + }, + "dependencies": { + "glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "dev": true, + "requires": { + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + } + } + }, + "fined": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz", + "integrity": "sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==", + "dev": true, + "requires": { + "expand-tilde": "^2.0.2", + "is-plain-object": "^2.0.3", + "object.defaults": "^1.1.0", + "object.pick": "^1.2.0", + "parse-filepath": "^1.0.1" + } + }, + "firefox-profile": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/firefox-profile/-/firefox-profile-1.2.0.tgz", + "integrity": "sha512-TTEFfPOkyaz4EWx/5ZDQC1mJAe3a+JgVcchpIfD4Tvx1UspwlTJRJxOYA35x/z2iJcxaF6aW2rdh6oj6qwgd2g==", + "dev": true, + "requires": { + "adm-zip": "~0.4.x", + "archiver": "~2.1.0", + "async": "~2.5.0", + "fs-extra": "~4.0.2", + "ini": "~1.3.3", + "jetpack-id": "1.0.0", + "lazystream": "~1.0.0", + "lodash": "~4.17.2", + "minimist": "^1.1.1", + "uuid": "^3.0.0", + "xml2js": "~0.4.4" + }, + "dependencies": { + "archiver": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-2.1.1.tgz", + "integrity": "sha1-/2YrSnggFJSj7lRNOjP+dJZQnrw=", + "dev": true, + "requires": { + "archiver-utils": "^1.3.0", + "async": "^2.0.0", + "buffer-crc32": "^0.2.1", + "glob": "^7.0.0", + "lodash": "^4.8.0", + "readable-stream": "^2.0.0", + "tar-stream": "^1.5.0", + "zip-stream": "^1.2.0" + } + }, + "async": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/async/-/async-2.5.0.tgz", + "integrity": "sha512-e+lJAJeNWuPCNyxZKOBdaJGyLGHugXVQtrAwtuAe2vhxTYxFTKE73p8JuTmdH0qdQZtDvI4dhJwjZc5zsfIsYw==", + "dev": true, + "requires": { + "lodash": "^4.14.0" + } + } + } + }, + "first-chunk-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-2.0.0.tgz", + "integrity": "sha1-G97NuOCDwGZLkZRVgVd6Q6nzHXA=", + "dev": true, + "requires": { + "readable-stream": "^2.0.2" + } + }, + "fizzy-ui-utils": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/fizzy-ui-utils/-/fizzy-ui-utils-2.0.7.tgz", + "integrity": "sha512-CZXDVXQ1If3/r8s0T+v+qVeMshhfcuq0rqIFgJnrtd+Bu8GmDmqMjntjUePypVtjHXKJ6V4sw9zeyox34n9aCg==", + "dev": true, + "requires": { + "desandro-matches-selector": "^2.0.0" + } + }, + "flagged-respawn": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz", + "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==", + "dev": true + }, + "flat-cache": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.4.tgz", + "integrity": "sha512-VwyB3Lkgacfik2vhqR4uv2rvebqmDvFu4jlN/C1RzWoJEo8I7z4Q404oiqYCkq41mni8EzQnm95emU9seckwtg==", + "dev": true, + "requires": { + "circular-json": "^0.3.1", + "graceful-fs": "^4.1.2", + "rimraf": "~2.6.2", + "write": "^0.2.1" + }, + "dependencies": { + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } + } + }, + "flatstr": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/flatstr/-/flatstr-1.0.12.tgz", + "integrity": "sha512-4zPxDyhCyiN2wIAtSLI6gc82/EjqZc1onI4Mz/l0pWrAlsSfYH/2ZIcU+e3oA2wDwbzIWNKwa23F8rh6+DRWkw==", + "dev": true + }, + "flipclock": { + "version": "0.7.8", + "resolved": "https://registry.npmjs.org/flipclock/-/flipclock-0.7.8.tgz", + "integrity": "sha1-838ffKkETZAsH+4fGuf0vR7vGlQ=", + "dev": true, + "requires": { + "jquery": ">=1.7" + } + }, + "fluent-syntax": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/fluent-syntax/-/fluent-syntax-0.7.0.tgz", + "integrity": "sha512-T0iqfhC40jrs3aDjYOKgzIQjjhsH2Fa6LnXB6naPv0ymW3DeYMUFa89y9aLKMpi1P9nl2vEimK7blx4tVnUWBg==", + "dev": true + }, + "flush-write-stream": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", + "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "readable-stream": "^2.3.6" + } + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true + }, + "for-own": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", + "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "dev": true, + "requires": { + "for-in": "^1.0.1" + } + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true + }, + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dev": true, + "requires": { + "map-cache": "^0.2.2" + } + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" + }, + "from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + } + }, + "fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", + "dev": true + }, + "fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fsevents": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.0.1.tgz", + "integrity": "sha512-p+CXqK/iLvDESUWdn3NA3JVO9HxdfI+iXx8xR3DqWgKZvQNiEVpAyUQo0lmwz8rqksb4xaGerG291xuwwhX2kA==", + "dev": true, + "optional": true + }, + "ftp": { + "version": "0.3.10", + "resolved": "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz", + "integrity": "sha1-kZfYYa2BQvPmPVqDv+TFn3MwiF0=", + "dev": true, + "requires": { + "readable-stream": "1.1.x", + "xregexp": "2.0.0" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + } + } + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "fx-runner": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/fx-runner/-/fx-runner-1.0.9.tgz", + "integrity": "sha1-eyPzdz3HaqzELxHZr/J2lnXLY/A=", + "dev": true, + "requires": { + "commander": "2.9.0", + "lodash": "4.17.10", + "shell-quote": "1.6.1", + "spawn-sync": "1.0.15", + "when": "3.7.7", + "which": "1.2.4", + "winreg": "0.0.12" + }, + "dependencies": { + "commander": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", + "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=", + "dev": true, + "requires": { + "graceful-readlink": ">= 1.0.0" + } + }, + "is-absolute": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-0.1.7.tgz", + "integrity": "sha1-hHSREZ/MtftDYhfMc39/qtUPYD8=", + "dev": true, + "requires": { + "is-relative": "^0.1.0" + } + }, + "is-relative": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-0.1.3.tgz", + "integrity": "sha1-kF/uiuhvRbPsYUvDwVyGnfCHboI=", + "dev": true + }, + "isexe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-1.1.2.tgz", + "integrity": "sha1-NvPiLmB1CSD15yQaR2qMakInWtA=", + "dev": true + }, + "lodash": { + "version": "4.17.10", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", + "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", + "dev": true + }, + "which": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/which/-/which-1.2.4.tgz", + "integrity": "sha1-FVf5YIBgTlsRs1meufRbUKnv1yI=", + "dev": true, + "requires": { + "is-absolute": "^0.1.7", + "isexe": "^1.1.1" + } + } + } + }, + "gaze": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", + "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", + "dev": true, + "requires": { + "globule": "^1.0.0" + } + }, + "generate-function": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz", + "integrity": "sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==", + "dev": true, + "requires": { + "is-property": "^1.0.2" + } + }, + "generate-object-property": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", + "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=", + "dev": true, + "requires": { + "is-property": "^1.0.0" + } + }, + "gensync": { + "version": "1.0.0-beta.1", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", + "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==", + "dev": true + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, + "get-func-name": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", + "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=", + "dev": true + }, + "get-size": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/get-size/-/get-size-2.0.3.tgz", + "integrity": "sha512-lXNzT/h/dTjTxRbm9BXb+SGxxzkm97h/PCIKtlN/CBCxxmkkIVV21udumMS93MuVTDX583gqc94v3RjuHmI+2Q==", + "dev": true + }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "dev": true + }, + "get-uri": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.4.tgz", + "integrity": "sha512-v7LT/s8kVjs+Tx0ykk1I+H/rbpzkHvuIq87LmeXptcf5sNWm9uQiwjNAt94SJPA1zOlCntmnOlJvVWKmzsxG8Q==", + "dev": true, + "requires": { + "data-uri-to-buffer": "1", + "debug": "2", + "extend": "~3.0.2", + "file-uri-to-path": "1", + "ftp": "~0.3.10", + "readable-stream": "2" + } + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "dev": true + }, + "getobject": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/getobject/-/getobject-0.1.0.tgz", + "integrity": "sha1-BHpEl4n6Fg0Bj1SG7ZEyC27HiFw=", + "dev": true + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "gettext-parser": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/gettext-parser/-/gettext-parser-1.1.0.tgz", + "integrity": "sha1-LFpmONiTk0ubVQN9CtgstwBLJnk=", + "dev": true, + "requires": { + "encoding": "^0.1.11" + } + }, + "git-rev-sync": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/git-rev-sync/-/git-rev-sync-1.9.1.tgz", + "integrity": "sha1-oMLj3TkqvPa3aWLif8dfsyI0Sc4=", + "dev": true, + "requires": { + "escape-string-regexp": "1.0.5", + "graceful-fs": "4.1.11", + "shelljs": "0.7.7" + }, + "dependencies": { + "graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "dev": true + }, + "shelljs": { + "version": "0.7.7", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.7.tgz", + "integrity": "sha1-svXHfvlxSPS09uImguELuoZnz/E=", + "dev": true, + "requires": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + } + } + } + }, + "glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + } + }, + "global": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", + "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", + "dev": true, + "requires": { + "min-document": "^2.19.0", + "process": "^0.11.10" + } + }, + "global-dirs": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", + "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", + "dev": true, + "requires": { + "ini": "^1.3.4" + } + }, + "global-modules": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", + "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", + "dev": true, + "requires": { + "global-prefix": "^1.0.1", + "is-windows": "^1.0.1", + "resolve-dir": "^1.0.0" + } + }, + "global-prefix": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", + "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", + "dev": true, + "requires": { + "expand-tilde": "^2.0.2", + "homedir-polyfill": "^1.0.1", + "ini": "^1.3.4", + "is-windows": "^1.0.1", + "which": "^1.2.14" + } + }, + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true + }, + "globule": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.2.tgz", + "integrity": "sha512-7IDTQTIu2xzXkT+6mlluidnWo+BypnbSoEVVQCGfzqnl5Ik8d3e1d4wycb8Rj9tWW+Z39uPWsdlquqiqPCd/pA==", + "dev": true, + "requires": { + "glob": "~7.1.1", + "lodash": "~4.17.10", + "minimatch": "~3.0.2" + } + }, + "got": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", + "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", + "dev": true, + "requires": { + "create-error-class": "^3.0.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-redirect": "^1.0.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "lowercase-keys": "^1.0.0", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "unzip-response": "^2.0.1", + "url-parse-lax": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", + "dev": true + }, + "graceful-readlink": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", + "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=", + "dev": true + }, + "graphlib": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.8.tgz", + "integrity": "sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==", + "dev": true, + "requires": { + "lodash": "^4.17.15" + } + }, + "growl": { + "version": "1.10.5", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", + "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", + "dev": true + }, + "growly": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", + "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", + "dev": true + }, + "grunt": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.2.1.tgz", + "integrity": "sha512-zgJjn9N56tScvRt/y0+1QA+zDBnKTrkpyeSBqQPLcZvbqTD/oyGMrdZQXmm6I3828s+FmPvxc3Xv+lgKFtudOw==", + "dev": true, + "requires": { + "dateformat": "~3.0.3", + "eventemitter2": "~0.4.13", + "exit": "~0.1.2", + "findup-sync": "~0.3.0", + "glob": "~7.1.6", + "grunt-cli": "~1.3.2", + "grunt-known-options": "~1.1.0", + "grunt-legacy-log": "~2.0.0", + "grunt-legacy-util": "~1.1.1", + "iconv-lite": "~0.4.13", + "js-yaml": "~3.14.0", + "minimatch": "~3.0.4", + "mkdirp": "~1.0.4", + "nopt": "~3.0.6", + "rimraf": "~3.0.2" + }, + "dependencies": { + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true + } + } + }, + "grunt-cli": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.3.2.tgz", + "integrity": "sha512-8OHDiZZkcptxVXtMfDxJvmN7MVJNE8L/yIcPb4HB7TlyFD1kDvjHrb62uhySsU14wJx9ORMnTuhRMQ40lH/orQ==", + "dev": true, + "requires": { + "grunt-known-options": "~1.1.0", + "interpret": "~1.1.0", + "liftoff": "~2.5.0", + "nopt": "~4.0.1", + "v8flags": "~3.1.1" + }, + "dependencies": { + "nopt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz", + "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==", + "dev": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + } + } + }, + "grunt-contrib-clean": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/grunt-contrib-clean/-/grunt-contrib-clean-1.1.0.tgz", + "integrity": "sha1-Vkq/LQN4qYOhW54/MO51tzjEBjg=", + "dev": true, + "requires": { + "async": "^1.5.2", + "rimraf": "^2.5.1" + }, + "dependencies": { + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } + } + }, + "grunt-contrib-connect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/grunt-contrib-connect/-/grunt-contrib-connect-1.0.2.tgz", + "integrity": "sha1-XPkzuRpnOGBEJzwLJERgPNmIebo=", + "dev": true, + "requires": { + "async": "^1.5.2", + "connect": "^3.4.0", + "connect-livereload": "^0.5.0", + "http2": "^3.3.4", + "morgan": "^1.6.1", + "opn": "^4.0.0", + "portscanner": "^1.0.0", + "serve-index": "^1.7.1", + "serve-static": "^1.10.0" + } + }, + "grunt-contrib-copy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/grunt-contrib-copy/-/grunt-contrib-copy-1.0.0.tgz", + "integrity": "sha1-cGDGWB6QS4qw0A8HbgqPbj58NXM=", + "dev": true, + "requires": { + "chalk": "^1.1.1", + "file-sync-cmp": "^0.1.0" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "grunt-contrib-pug": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/grunt-contrib-pug/-/grunt-contrib-pug-1.0.0.tgz", + "integrity": "sha1-tSWlwK/wRiL3Vw4x+SQQbxb4G0Y=", + "dev": true, + "requires": { + "chalk": "^1.0.0", + "pug": "^2.0.0-alpha3" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "grunt-contrib-stylus": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/grunt-contrib-stylus/-/grunt-contrib-stylus-1.2.0.tgz", + "integrity": "sha1-R9RG7wVESW7/naQY0A9XdFQ0crs=", + "dev": true, + "requires": { + "async": "^1.5.2", + "chalk": "^1.0.0", + "lodash": "^4.0.0", + "nib": "^1.1.0", + "stylus": "^0.54.0" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "grunt-contrib-watch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/grunt-contrib-watch/-/grunt-contrib-watch-1.1.0.tgz", + "integrity": "sha512-yGweN+0DW5yM+oo58fRu/XIRrPcn3r4tQx+nL7eMRwjpvk+rQY6R8o94BPK0i2UhTg9FN21hS+m8vR8v9vXfeg==", + "dev": true, + "requires": { + "async": "^2.6.0", + "gaze": "^1.1.0", + "lodash": "^4.17.10", + "tiny-lr": "^1.1.1" + }, + "dependencies": { + "async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dev": true, + "requires": { + "lodash": "^4.17.14" + } + } + } + }, + "grunt-crx": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/grunt-crx/-/grunt-crx-1.0.5.tgz", + "integrity": "sha1-nU5QHO8WtyF3KmBBxNQdH5KFirU=", + "dev": true, + "requires": { + "crx": "^3.0.1", + "es6-promise": "^3.0.0", + "mkdirp": "^0.5.0", + "os-homedir": "^1.0.1", + "xtend": "^4.0.1" + } + }, + "grunt-exec": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/grunt-exec/-/grunt-exec-3.0.0.tgz", + "integrity": "sha512-cgAlreXf3muSYS5LzW0Cc4xHK03BjFOYk0MqCQ/MZ3k1Xz2GU7D+IAJg4UKicxpO+XdONJdx/NJ6kpy2wI+uHg==", + "dev": true + }, + "grunt-known-options": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.1.tgz", + "integrity": "sha512-cHwsLqoighpu7TuYj5RonnEuxGVFnztcUqTqp5rXFGYL4OuPFofwC4Ycg7n9fYwvK6F5WbYgeVOwph9Crs2fsQ==", + "dev": true + }, + "grunt-legacy-log": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-2.0.0.tgz", + "integrity": "sha512-1m3+5QvDYfR1ltr8hjiaiNjddxGdQWcH0rw1iKKiQnF0+xtgTazirSTGu68RchPyh1OBng1bBUjLmX8q9NpoCw==", + "dev": true, + "requires": { + "colors": "~1.1.2", + "grunt-legacy-log-utils": "~2.0.0", + "hooker": "~0.2.3", + "lodash": "~4.17.5" + } + }, + "grunt-legacy-log-utils": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.0.1.tgz", + "integrity": "sha512-o7uHyO/J+i2tXG8r2bZNlVk20vlIFJ9IEYyHMCQGfWYru8Jv3wTqKZzvV30YW9rWEjq0eP3cflQ1qWojIe9VFA==", + "dev": true, + "requires": { + "chalk": "~2.4.1", + "lodash": "~4.17.10" + } + }, + "grunt-legacy-util": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-1.1.1.tgz", + "integrity": "sha512-9zyA29w/fBe6BIfjGENndwoe1Uy31BIXxTH3s8mga0Z5Bz2Sp4UCjkeyv2tI449ymkx3x26B+46FV4fXEddl5A==", + "dev": true, + "requires": { + "async": "~1.5.2", + "exit": "~0.1.1", + "getobject": "~0.1.0", + "hooker": "~0.2.3", + "lodash": "~4.17.10", + "underscore.string": "~3.3.4", + "which": "~1.3.0" + } + }, + "grunt-mocha-test": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/grunt-mocha-test/-/grunt-mocha-test-0.13.3.tgz", + "integrity": "sha512-zQGEsi3d+ViPPi7/4jcj78afKKAKiAA5n61pknQYi25Ugik+aNOuRmiOkmb8mN2CeG8YxT+YdT1H1Q7B/eNkoQ==", + "dev": true, + "requires": { + "hooker": "^0.2.3", + "mkdirp": "^0.5.0" + } + }, + "grunt-webpack": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/grunt-webpack/-/grunt-webpack-3.1.3.tgz", + "integrity": "sha512-SaZ8K8lG4iTxs7ClZxOWCf3kxqS2y+Eel8SbaEGgBKwhAp6e45beIu+vhBZRLX3vonKML2kjemKsQ21REaqNFQ==", + "dev": true, + "requires": { + "deep-for-each": "^2.0.2", + "lodash": "^4.7.0" + } + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true + }, + "har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "dev": true, + "requires": { + "ajv": "^6.12.3", + "har-schema": "^2.0.0" + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "has-color": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", + "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "has-symbols": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", + "dev": true + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dev": true, + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "hasbin": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/hasbin/-/hasbin-1.2.3.tgz", + "integrity": "sha1-eMWSaJPIAhXCtWiuH9P8q3omlrA=", + "dev": true, + "requires": { + "async": "~1.5" + } + }, + "hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "dev": true, + "requires": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "dependencies": { + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "requires": { + "safe-buffer": "~5.2.0" + } + } + } + }, + "hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "he": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", + "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", + "dev": true + }, + "highlight.js": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.4.1.tgz", + "integrity": "sha512-yR5lWvNz7c85OhVAEAeFhVCc/GV4C30Fjzc/rCP0aCWzc1UUOPUk55dK/qdwTZHBvMZo+eZ2jpk62ndX/xMFlg==", + "dev": true + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "dev": true, + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "home-or-tmp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", + "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", + "dev": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.1" + } + }, + "homedir-polyfill": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", + "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", + "dev": true, + "requires": { + "parse-passwd": "^1.0.0" + } + }, + "hooker": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz", + "integrity": "sha1-uDT3I8xKJCqmWWNFnfbZhMXT2Vk=", + "dev": true + }, + "hosted-git-info": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", + "dev": true + }, + "htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "dev": true, + "requires": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "requires": { + "safe-buffer": "~5.2.0" + } + } + } + }, + "http-errors": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", + "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + } + }, + "http-parser-js": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.2.tgz", + "integrity": "sha512-opCO9ASqg5Wy2FNo7A0sxy71yGbbkJJXLdgMK04Tcypw9jr2MgWbyubb0+WdmDmGnFflO7fRbqbaihh/ENDlRQ==", + "dev": true + }, + "http-proxy-agent": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", + "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", + "dev": true, + "requires": { + "agent-base": "4", + "debug": "3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "http2": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/http2/-/http2-3.3.7.tgz", + "integrity": "sha512-puSi8M8WNlFJm9Pk4c/Mbz9Gwparuj3gO9/RRO5zv6piQ0FY+9Qywp0PdWshYgsMJSalixFY7eC6oPu0zRxLAQ==", + "dev": true + }, + "https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", + "dev": true + }, + "https-proxy-agent": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", + "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==", + "dev": true, + "requires": { + "agent-base": "^4.3.0", + "debug": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ieee754": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", + "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", + "dev": true + }, + "iferr": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "dev": true + }, + "ignore": { + "version": "3.3.10", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", + "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", + "dev": true + }, + "immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=", + "dev": true + }, + "import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "dev": true + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ini": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.7.tgz", + "integrity": "sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ==", + "dev": true + }, + "inject-loader": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/inject-loader/-/inject-loader-3.0.1.tgz", + "integrity": "sha512-0Kd4NqMJUhknG4ECiJ/mgyHJBpfBBWZ3IKHl2BLNQiFtMO7/xiv9mmHl7mGvE0iKrBeQAZdMcQP3sMXZN0cqeg==", + "dev": true, + "requires": { + "babel-core": "~6" + } + }, + "inquirer": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-5.2.0.tgz", + "integrity": "sha512-E9BmnJbAKLPGonz0HeWHtbKf+EeSP93paWO3ZYoUpq/aowXvYGjjCSuashhXPpzbArIjBbji39THkxTz9ZeEUQ==", + "dev": true, + "requires": { + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.0", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^2.1.0", + "figures": "^2.0.0", + "lodash": "^4.3.0", + "mute-stream": "0.0.7", + "run-async": "^2.2.0", + "rxjs": "^5.5.2", + "string-width": "^2.1.0", + "strip-ansi": "^4.0.0", + "through": "^2.3.6" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "interpret": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", + "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=", + "dev": true + }, + "invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, + "requires": { + "loose-envify": "^1.0.0" + } + }, + "invert-kv": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", + "dev": true + }, + "ip": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", + "dev": true + }, + "ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" + }, + "is-absolute": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", + "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==", + "dev": true, + "requires": { + "is-relative": "^1.0.0", + "is-windows": "^1.0.1" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-arguments": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", + "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==", + "dev": true + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "is-callable": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", + "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==", + "dev": true + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-date-object": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", + "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", + "dev": true + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "is-expression": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-3.0.0.tgz", + "integrity": "sha1-Oayqa+f9HzRx3ELHQW5hwkMXrJ8=", + "dev": true, + "requires": { + "acorn": "~4.0.2", + "object-assign": "^4.0.1" + }, + "dependencies": { + "acorn": { + "version": "4.0.13", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", + "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", + "dev": true + } + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-finite": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", + "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + }, + "is-installed-globally": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", + "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", + "dev": true, + "requires": { + "global-dirs": "^0.1.0", + "is-path-inside": "^1.0.0" + } + }, + "is-mergeable-object": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-mergeable-object/-/is-mergeable-object-1.1.0.tgz", + "integrity": "sha512-JfyDDwUdtS4yHCgUpxOyKB9dnfZ0gecufxB0eytX6BmSXSE+8dbxDGt+V7CNRIRJ9sYFV/WQt2KJG6hNob2sBw==", + "dev": true + }, + "is-my-ip-valid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz", + "integrity": "sha512-gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==", + "dev": true + }, + "is-my-json-valid": { + "version": "2.20.5", + "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.20.5.tgz", + "integrity": "sha512-VTPuvvGQtxvCeghwspQu1rBgjYUT6FGxPlvFKbYuFtgc4ADsX3U5ihZOYN0qyU6u+d4X9xXb0IT5O6QpXKt87A==", + "dev": true, + "requires": { + "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" + } + }, + "is-npm": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", + "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", + "dev": true + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "dev": true + }, + "is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "dev": true, + "requires": { + "path-is-inside": "^1.0.1" + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", + "dev": true + }, + "is-property": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", + "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=", + "dev": true + }, + "is-redirect": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", + "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", + "dev": true + }, + "is-regex": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz", + "integrity": "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==", + "dev": true, + "requires": { + "has-symbols": "^1.0.1" + } + }, + "is-relative": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", + "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", + "dev": true, + "requires": { + "is-unc-path": "^1.0.0" + } + }, + "is-resolvable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", + "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", + "dev": true + }, + "is-retry-allowed": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", + "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==", + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-symbol": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", + "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", + "dev": true, + "requires": { + "has-symbols": "^1.0.1" + } + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "is-unc-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", + "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", + "dev": true, + "requires": { + "unc-path-regex": "^0.1.2" + } + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true + }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "isotope-layout": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/isotope-layout/-/isotope-layout-3.0.6.tgz", + "integrity": "sha512-z2ZKablhocXhoNyWwzJPFd7u7FWbYbVJA51Nvsqsod8jH2ExGc1SwDsSWKE54e3PhXzqf2yZPhFSq/c2MR1arw==", + "dev": true, + "requires": { + "desandro-matches-selector": "^2.0.0", + "fizzy-ui-utils": "^2.0.4", + "get-size": "^2.0.0", + "masonry-layout": "^4.1.0", + "outlayer": "^2.1.0" + } + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "jed": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/jed/-/jed-1.1.1.tgz", + "integrity": "sha1-elSbvZ/+FYWwzQoZHiAwVb7ldLQ=", + "dev": true + }, + "jetpack-id": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/jetpack-id/-/jetpack-id-1.0.0.tgz", + "integrity": "sha1-LPn7rkbYB0/Ba33gBxyO/rykc6Y=", + "dev": true + }, + "jquery": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.5.1.tgz", + "integrity": "sha512-XwIBPqcMn57FxfT+Go5pzySnm4KWkT1Tv7gjrpT1srtf8Weynl6R273VJ5GjkRb51IzMp5nbaPjJXMWeju2MKg==", + "dev": true + }, + "js-select": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/js-select/-/js-select-0.6.0.tgz", + "integrity": "sha1-woTiKCTVknrsli3N8kcXSu+w0ZA=", + "dev": true, + "requires": { + "JSONSelect": "0.2.1", + "traverse": "0.4.x" + } + }, + "js-stringify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", + "integrity": "sha1-Fzb939lyTyijaCrcYjCufk6Weds=", + "dev": true + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "js-yaml": { + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", + "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + }, + "json-merge-patch": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-merge-patch/-/json-merge-patch-0.2.3.tgz", + "integrity": "sha1-+ixrWvh9p3uuKWalidUuI+2B/kA=", + "dev": true, + "requires": { + "deep-equal": "^1.0.0" + } + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "json-stable-stringify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", + "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "dev": true, + "requires": { + "jsonify": "~0.0.0" + } + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "json5": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", + "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", + "dev": true + }, + "jsonpointer": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.1.0.tgz", + "integrity": "sha512-CXcRvMyTlnR53xMcKnuMzfCA5i/nfblTnnr74CZb6C4vG39eu6w51t7nKmU5MfLfbTgGItliNyjO/ciNPDqClg==", + "dev": true + }, + "jsonpointer.js": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/jsonpointer.js/-/jsonpointer.js-0.4.0.tgz", + "integrity": "sha1-ACyxI/dnqv3rAZYTLOXE+ZQcyro=", + "dev": true + }, + "JSONSelect": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.2.1.tgz", + "integrity": "sha1-QVQYpSbTP+MddLTe+jyDbUhewgM=", + "dev": true + }, + "jsonwebtoken": { + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.2.1.tgz", + "integrity": "sha512-l8rUBr0fqYYwPc8/ZGrue7GiW7vWdZtZqelxo4Sd5lMvuEeCK8/wS54sEo6tJhdZ6hqfutsj6COgC0d1XdbHGw==", + "dev": true, + "requires": { + "jws": "^3.1.4", + "lodash.includes": "^4.3.0", + "lodash.isboolean": "^3.0.3", + "lodash.isinteger": "^4.0.4", + "lodash.isnumber": "^3.0.3", + "lodash.isplainobject": "^4.0.6", + "lodash.isstring": "^4.0.1", + "lodash.once": "^4.0.0", + "ms": "^2.1.1", + "xtend": "^4.0.1" + }, + "dependencies": { + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "jstransformer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", + "integrity": "sha1-7Yvwkh4vPx7U1cGkT2hwntJHIsM=", + "dev": true, + "requires": { + "is-promise": "^2.0.0", + "promise": "^7.0.1" + } + }, + "jstransformer-markdown-it": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/jstransformer-markdown-it/-/jstransformer-markdown-it-2.1.0.tgz", + "integrity": "sha1-aewwzkUYvtWZezjwJ2SOjChekvc=", + "dev": true, + "requires": { + "markdown-it": "^8.0.0" + } + }, + "jszip": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.5.0.tgz", + "integrity": "sha512-WRtu7TPCmYePR1nazfrtuF216cIVon/3GWOvHS9QR5bIwSbnxtdpma6un3jyGGNhHsKCSzn5Ypk+EkDRvTGiFA==", + "dev": true, + "requires": { + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "set-immediate-shim": "~1.0.1" + } + }, + "just-extend": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.1.0.tgz", + "integrity": "sha512-ApcjaOdVTJ7y4r08xI5wIqpvwS48Q0PBG4DJROcEkH1f8MdAiNFyFxz3xoL0LWAVwjrwPYZdVHHxhRHcx/uGLA==", + "dev": true + }, + "jwa": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", + "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", + "dev": true, + "requires": { + "buffer-equal-constant-time": "1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" + } + }, + "jws": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", + "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", + "dev": true, + "requires": { + "jwa": "^1.4.1", + "safe-buffer": "^5.0.1" + } + }, + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true + }, + "latest-version": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", + "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", + "dev": true, + "requires": { + "package-json": "^4.0.0" + } + }, + "lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", + "dev": true + }, + "lazystream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", + "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", + "dev": true, + "requires": { + "readable-stream": "^2.0.5" + } + }, + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "dev": true, + "requires": { + "invert-kv": "^2.0.0" + } + }, + "leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true + }, + "levenary": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/levenary/-/levenary-1.1.1.tgz", + "integrity": "sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ==", + "dev": true, + "requires": { + "leven": "^3.1.0" + } + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "dev": true, + "requires": { + "immediate": "~3.0.5" + } + }, + "liftoff": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.5.0.tgz", + "integrity": "sha1-IAkpG7Mc6oYbvxCnwVooyvdcMew=", + "dev": true, + "requires": { + "extend": "^3.0.0", + "findup-sync": "^2.0.0", + "fined": "^1.0.1", + "flagged-respawn": "^1.0.0", + "is-plain-object": "^2.0.4", + "object.map": "^1.0.0", + "rechoir": "^0.6.2", + "resolve": "^1.1.7" + }, + "dependencies": { + "findup-sync": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", + "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", + "dev": true, + "requires": { + "detect-file": "^1.0.0", + "is-glob": "^3.1.0", + "micromatch": "^3.0.4", + "resolve-dir": "^1.0.1" + } + } + } + }, + "linkify-it": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", + "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==", + "dev": true, + "requires": { + "uc.micro": "^1.0.1" + } + }, + "livereload-js": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/livereload-js/-/livereload-js-2.4.0.tgz", + "integrity": "sha512-XPQH8Z2GDP/Hwz2PCDrh2mth4yFejwA1OZ/81Ti3LgKyhDcEjsSsqFWZojHG0va/duGd+WyosY7eXLDoOyqcPw==", + "dev": true + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + }, + "dependencies": { + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "^0.2.0" + } + } + } + }, + "loader-runner": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", + "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", + "dev": true + }, + "loader-utils": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + } + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.17.19", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", + "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==", + "dev": true + }, + "lodash.assign": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", + "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=", + "dev": true + }, + "lodash.assignin": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", + "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=", + "dev": true + }, + "lodash.clone": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clone/-/lodash.clone-4.5.0.tgz", + "integrity": "sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y=", + "dev": true + }, + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true + }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=" + }, + "lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", + "dev": true + }, + "lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", + "dev": true + }, + "lodash.includes": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", + "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8=", + "dev": true + }, + "lodash.isboolean": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", + "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY=", + "dev": true + }, + "lodash.isinteger": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", + "integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M=", + "dev": true + }, + "lodash.isnumber": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", + "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w=", + "dev": true + }, + "lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=", + "dev": true + }, + "lodash.isstring": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", + "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=", + "dev": true + }, + "lodash.once": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", + "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=", + "dev": true + }, + "lodash.set": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz", + "integrity": "sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM=", + "dev": true + }, + "lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", + "dev": true + }, + "loglevel": { + "version": "1.6.8", + "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.8.tgz", + "integrity": "sha512-bsU7+gc9AJ2SqpzxwU3+1fedl8zAntbtC5XYlt3s2j1hJcn2PsXSmgN8TaLG/J1/2mod4+cE/3vNL70/c1RNCA==", + "dev": true + }, + "lolex": { + "version": "2.7.5", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-2.7.5.tgz", + "integrity": "sha512-l9x0+1offnKKIzYVjyXU2SiwhXDLekRzKyhnbyldPHvC7BvLPVpdNUNR2KeMAiCN2D/kLNttZgQD5WjSxuBx3Q==", + "dev": true + }, + "long": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", + "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==", + "dev": true + }, + "longest": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", + "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", + "dev": true + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true + }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "macos-release": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/macos-release/-/macos-release-1.1.0.tgz", + "integrity": "sha512-mmLbumEYMi5nXReB9js3WGsB8UE6cDBWyIO62Z4DNx6GbRhDxHNjA1MlzSpJ2S2KM1wyiPRA0d19uHWYYvMHjA==", + "dev": true + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "make-iterator": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz", + "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==", + "dev": true, + "requires": { + "kind-of": "^6.0.2" + } + }, + "map-age-cleaner": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", + "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", + "dev": true, + "requires": { + "p-defer": "^1.0.0" + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, + "requires": { + "object-visit": "^1.0.0" + } + }, + "markdown-it": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz", + "integrity": "sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "entities": "~1.1.1", + "linkify-it": "^2.0.0", + "mdurl": "^1.0.1", + "uc.micro": "^1.0.5" + } + }, + "masonry-layout": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/masonry-layout/-/masonry-layout-4.2.2.tgz", + "integrity": "sha512-iGtAlrpHNyxaR19CvKC3npnEcAwszXoyJiI8ARV2ePi7fmYhIud25MHK8Zx4P0LCC4d3TNO9+rFa1KoK1OEOaA==", + "dev": true, + "requires": { + "get-size": "^2.0.2", + "outlayer": "^2.1.0" + } + }, + "md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=", + "dev": true + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + }, + "mem": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", + "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", + "dev": true, + "requires": { + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^2.0.0", + "p-is-promise": "^2.0.0" + } + }, + "memory-fs": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", + "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "dev": true, + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.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.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + } + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + }, + "mime-db": { + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", + "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==" + }, + "mime-types": { + "version": "2.1.27", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", + "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", + "requires": { + "mime-db": "1.44.0" + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + }, + "min-document": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", + "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", + "dev": true, + "requires": { + "dom-walk": "^0.1.0" + } + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "mississippi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-2.0.0.tgz", + "integrity": "sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==", + "dev": true, + "requires": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^2.0.1", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + } + }, + "mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "dev": true, + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "mixin-object": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", + "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", + "dev": true, + "requires": { + "for-in": "^0.1.3", + "is-extendable": "^0.1.1" + }, + "dependencies": { + "for-in": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", + "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=", + "dev": true + } + } + }, + "mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + }, + "mocha": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-5.2.0.tgz", + "integrity": "sha512-2IUgKDhc3J7Uug+FxMXuqIyYzH7gJjXECKe/w43IGgQHTSj3InJi+yAA7T24L9bQMRKiUEHxEX37G5JpVUGLcQ==", + "dev": true, + "requires": { + "browser-stdout": "1.3.1", + "commander": "2.15.1", + "debug": "3.1.0", + "diff": "3.5.0", + "escape-string-regexp": "1.0.5", + "glob": "7.1.2", + "growl": "1.10.5", + "he": "1.1.1", + "minimatch": "3.0.4", + "mkdirp": "0.5.1", + "supports-color": "5.4.0" + }, + "dependencies": { + "commander": { + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz", + "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==", + "dev": true + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "supports-color": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", + "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "moment": { + "version": "2.27.0", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.27.0.tgz", + "integrity": "sha512-al0MUK7cpIcglMv3YF13qSgdAIqxHTO7brRtaz3DlSULbqfazqkc5kEjNrLDOM7fsjshoFIihnU8snrP7zUvhQ==", + "dev": true + }, + "morgan": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.10.0.tgz", + "integrity": "sha512-AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ==", + "dev": true, + "requires": { + "basic-auth": "~2.0.1", + "debug": "2.6.9", + "depd": "~2.0.0", + "on-finished": "~2.3.0", + "on-headers": "~1.0.2" + }, + "dependencies": { + "depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true + } + } + }, + "move-concurrently": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", + "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "dev": true, + "requires": { + "aproba": "^1.1.1", + "copy-concurrently": "^1.0.0", + "fs-write-stream-atomic": "^1.0.8", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.3" + }, + "dependencies": { + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "multimatch": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", + "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", + "dev": true, + "requires": { + "array-differ": "^1.0.0", + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "minimatch": "^3.0.0" + } + }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "dev": true + }, + "mv": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/mv/-/mv-2.1.1.tgz", + "integrity": "sha1-rmzg1vbV4KT32JN5jQPB6pVZtqI=", + "dev": true, + "optional": true, + "requires": { + "mkdirp": "~0.5.1", + "ncp": "~2.0.0", + "rimraf": "~2.4.0" + }, + "dependencies": { + "glob": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz", + "integrity": "sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI=", + "dev": true, + "optional": true, + "requires": { + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "rimraf": { + "version": "2.4.5", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.4.5.tgz", + "integrity": "sha1-7nEM5dk6j9uFb7Xqj/Di11k0sto=", + "dev": true, + "optional": true, + "requires": { + "glob": "^6.0.1" + } + } + } + }, + "mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "requires": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "nan": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz", + "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==", + "dev": true, + "optional": true + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha1-F7CVgZiJef3a/gIB6TG6kzyWy7Q=", + "dev": true + }, + "nconf": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/nconf/-/nconf-0.10.0.tgz", + "integrity": "sha512-fKiXMQrpP7CYWJQzKkPPx9hPgmq+YLDyxcG9N8RpiE9FoCkCbzD0NyW0YhE3xn3Aupe7nnDeIx4PFzYehpHT9Q==", + "dev": true, + "requires": { + "async": "^1.4.0", + "ini": "^1.3.0", + "secure-keys": "^1.0.0", + "yargs": "^3.19.0" + }, + "dependencies": { + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" + } + }, + "invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "dev": true, + "requires": { + "invert-kv": "^1.0.0" + } + }, + "os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "dev": true, + "requires": { + "lcid": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "window-size": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.4.tgz", + "integrity": "sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY=", + "dev": true + }, + "y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "dev": true + }, + "yargs": { + "version": "3.32.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.32.0.tgz", + "integrity": "sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU=", + "dev": true, + "requires": { + "camelcase": "^2.0.1", + "cliui": "^3.0.3", + "decamelize": "^1.1.1", + "os-locale": "^1.4.0", + "string-width": "^1.0.1", + "window-size": "^0.1.4", + "y18n": "^3.2.0" + } + } + } + }, + "ncp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ncp/-/ncp-2.0.0.tgz", + "integrity": "sha1-GVoh1sRuNh0vsSgbo4uR6d9727M=", + "dev": true, + "optional": true + }, + "needle": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-2.5.0.tgz", + "integrity": "sha512-o/qITSDR0JCyCKEQ1/1bnUXMmznxabbwi/Y4WwJElf+evwJNFNwIDMCCt5IigFVxgeGBJESLohGtIS9gEzo1fA==", + "dev": true, + "requires": { + "debug": "^3.2.6", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + } + } + }, + "negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" + }, + "neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true + }, + "netmask": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-1.0.6.tgz", + "integrity": "sha1-ICl+idhvb2QA8lDZ9Pa0wZRfzTU=", + "dev": true + }, + "next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", + "dev": true + }, + "nib": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/nib/-/nib-1.1.2.tgz", + "integrity": "sha1-amnt5AgblcDe+L4CSkyK4MLLtsc=", + "dev": true, + "requires": { + "stylus": "0.54.5" + }, + "dependencies": { + "glob": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.6.tgz", + "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.2", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "source-map": { + "version": "0.1.43", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "dev": true, + "requires": { + "amdefine": ">=0.0.4" + } + }, + "stylus": { + "version": "0.54.5", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.5.tgz", + "integrity": "sha1-QrlWCTHKcJDOhRWnmLqeaqPW3Hk=", + "dev": true, + "requires": { + "css-parse": "1.7.x", + "debug": "*", + "glob": "7.0.x", + "mkdirp": "0.5.x", + "sax": "0.5.x", + "source-map": "0.1.x" + } + } + } + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "nise": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.3.tgz", + "integrity": "sha512-Ymbac/94xeIrMf59REBPOv0thr+CJVFMhrlAkW/gjCIE58BGQdCj0x7KRCb3yz+Ga2Rz3E9XXSvUyyxqqhjQAQ==", + "dev": true, + "requires": { + "@sinonjs/formatio": "^3.2.1", + "@sinonjs/text-encoding": "^0.7.1", + "just-extend": "^4.0.2", + "lolex": "^5.0.1", + "path-to-regexp": "^1.7.0" + }, + "dependencies": { + "@sinonjs/formatio": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.2.tgz", + "integrity": "sha512-B8SEsgd8gArBLMD6zpRw3juQ2FVSsmdd7qlevyDqzS9WTCtvF55/gAL+h6gue8ZvPYcdiPdvueM/qm//9XzyTQ==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1", + "@sinonjs/samsam": "^3.1.0" + } + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "lolex": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-5.1.2.tgz", + "integrity": "sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.7.0" + } + }, + "path-to-regexp": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", + "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", + "dev": true, + "requires": { + "isarray": "0.0.1" + } + } + } + }, + "node-fetch": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", + "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" + }, + "node-forge": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.8.5.tgz", + "integrity": "sha512-vFMQIWt+J/7FLNyKouZ9TazT74PRV3wgv9UT4cRjC8BffxFbKXkgIWR42URCPSnHm/QDz6BOlb2Q0U4+VQT67Q==", + "dev": true + }, + "node-jose": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/node-jose/-/node-jose-1.1.4.tgz", + "integrity": "sha512-L31IFwL3pWWcMHxxidCY51ezqrDXMkvlT/5pLTfNw5sXmmOLJuN6ug7txzF/iuZN55cRpyOmoJrotwBQIoo5Lw==", + "dev": true, + "requires": { + "base64url": "^3.0.1", + "browserify-zlib": "^0.2.0", + "buffer": "^5.5.0", + "es6-promise": "^4.2.8", + "lodash": "^4.17.15", + "long": "^4.0.0", + "node-forge": "^0.8.5", + "process": "^0.11.10", + "react-zlib-js": "^1.0.4", + "uuid": "^3.3.3" + }, + "dependencies": { + "es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", + "dev": true + } + } + }, + "node-libs-browser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", + "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", + "dev": true, + "requires": { + "assert": "^1.1.1", + "browserify-zlib": "^0.2.0", + "buffer": "^4.3.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.11.0", + "domain-browser": "^1.1.1", + "events": "^3.0.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "0.0.1", + "process": "^0.11.10", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.3.3", + "stream-browserify": "^2.0.1", + "stream-http": "^2.7.2", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", + "tty-browserify": "0.0.0", + "url": "^0.11.0", + "util": "^0.11.0", + "vm-browserify": "^1.0.1" + }, + "dependencies": { + "buffer": { + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", + "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", + "dev": true, + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "requires": { + "safe-buffer": "~5.2.0" + } + }, + "util": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", + "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", + "dev": true, + "requires": { + "inherits": "2.0.3" + } + } + } + }, + "node-modules-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", + "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", + "dev": true + }, + "node-notifier": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-5.2.1.tgz", + "integrity": "sha512-MIBs+AAd6dJ2SklbbE8RUDRlIVhU8MaNLh1A9SUZDUHPiZkWLFde6UNwG41yQHZEToHgJMXqyVZ9UcS/ReOVTg==", + "dev": true, + "requires": { + "growly": "^1.3.0", + "semver": "^5.4.1", + "shellwords": "^0.1.1", + "which": "^1.3.0" + } + }, + "node-releases": { + "version": "1.1.60", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.60.tgz", + "integrity": "sha512-gsO4vjEdQaTusZAEebUWp2a5d7dF5DYoIpDG7WySnk7BuZDW+GPpHXoXXuYawRBr/9t5q54tirPz79kFIWg4dA==", + "dev": true + }, + "node-rsa": { + "version": "0.2.30", + "resolved": "https://registry.npmjs.org/node-rsa/-/node-rsa-0.2.30.tgz", + "integrity": "sha1-iRLiw7G2TM5sp4PKsa8oKzAK3uY=", + "dev": true, + "requires": { + "asn1": "0.2.3", + "lodash": "3.3.0" + }, + "dependencies": { + "lodash": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.3.0.tgz", + "integrity": "sha1-ARzlLQGxTmDq7qdqy5uLpCxwWBs=", + "dev": true + } + } + }, + "nomnom": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz", + "integrity": "sha1-IVH3Ikcrp55Qp2/BJbuMjy5Nwqc=", + "dev": true, + "requires": { + "chalk": "~0.4.0", + "underscore": "~1.6.0" + }, + "dependencies": { + "ansi-styles": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", + "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", + "dev": true + }, + "chalk": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", + "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", + "dev": true, + "requires": { + "ansi-styles": "~1.0.0", + "has-color": "~0.1.0", + "strip-ansi": "~0.1.0" + } + }, + "strip-ansi": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", + "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", + "dev": true + } + } + }, + "nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "dev": true, + "requires": { + "abbrev": "1" + } + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "dev": true, + "requires": { + "boolbase": "~1.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-inspect": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.8.0.tgz", + "integrity": "sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==", + "dev": true + }, + "object-is": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.2.tgz", + "integrity": "sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dev": true, + "requires": { + "isobject": "^3.0.0" + } + }, + "object.assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", + "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "object-keys": "^1.0.11" + } + }, + "object.defaults": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", + "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=", + "dev": true, + "requires": { + "array-each": "^1.0.1", + "array-slice": "^1.0.0", + "for-own": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "object.map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", + "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=", + "dev": true, + "requires": { + "for-own": "^1.0.0", + "make-iterator": "^1.0.0" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "octokit": { + "version": "1.0.0-hello-world", + "resolved": "https://registry.npmjs.org/octokit/-/octokit-1.0.0-hello-world.tgz", + "integrity": "sha1-mX8irutd/iiB54xpQYxJKBqt+Y8=" + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "requires": { + "ee-first": "1.1.1" + } + }, + "on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + }, + "dependencies": { + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + } + } + }, + "opn": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/opn/-/opn-4.0.2.tgz", + "integrity": "sha1-erwi5kTf9jsKltWrfyeQwPAavJU=", + "dev": true, + "requires": { + "object-assign": "^4.0.1", + "pinkie-promise": "^2.0.0" + } + }, + "optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "dev": true, + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" + } + }, + "os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", + "dev": true + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, + "os-locale": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.0.1.tgz", + "integrity": "sha512-7g5e7dmXPtzcP4bgsZ8ixDVqA7oWYuEz4lOSujeWyliPai4gfVDiFIcwBg3aGCPnmSGfzOKTK3ccPn0CKv3DBw==", + "dev": true, + "requires": { + "execa": "^0.10.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + } + }, + "os-name": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/os-name/-/os-name-2.0.1.tgz", + "integrity": "sha1-uaOGNhwXrjohc27wWZQFyajF3F4=", + "dev": true, + "requires": { + "macos-release": "^1.0.0", + "win-release": "^1.0.0" + } + }, + "os-shim": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/os-shim/-/os-shim-0.1.3.tgz", + "integrity": "sha1-a2LDeRz3kJ6jXtRuF2WLtBfLORc=", + "dev": true + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, + "osenv": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "dev": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "outlayer": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/outlayer/-/outlayer-2.1.1.tgz", + "integrity": "sha1-KYY7beEOpdrf/8rfoNcokHOH6aI=", + "dev": true, + "requires": { + "ev-emitter": "^1.0.0", + "fizzy-ui-utils": "^2.0.0", + "get-size": "^2.0.2" + } + }, + "p-defer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", + "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "dev": true + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", + "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", + "dev": true + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "pac-proxy-agent": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-2.0.2.tgz", + "integrity": "sha512-cDNAN1Ehjbf5EHkNY5qnRhGPUCp6SnpyVof5fRzN800QV1Y2OkzbH9rmjZkbBRa8igof903yOnjIl6z0SlAhxA==", + "dev": true, + "requires": { + "agent-base": "^4.2.0", + "debug": "^3.1.0", + "get-uri": "^2.0.0", + "http-proxy-agent": "^2.1.0", + "https-proxy-agent": "^2.2.1", + "pac-resolver": "^3.0.0", + "raw-body": "^2.2.0", + "socks-proxy-agent": "^3.0.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "pac-resolver": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-3.0.0.tgz", + "integrity": "sha512-tcc38bsjuE3XZ5+4vP96OfhOugrX+JcnpUbhfuc4LuXBLQhoTthOstZeoQJBDnQUDYzYmdImKsbz0xSl1/9qeA==", + "dev": true, + "requires": { + "co": "^4.6.0", + "degenerator": "^1.0.4", + "ip": "^1.1.5", + "netmask": "^1.0.6", + "thunkify": "^2.1.2" + } + }, + "package-json": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", + "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", + "dev": true, + "requires": { + "got": "^6.7.1", + "registry-auth-token": "^3.0.1", + "registry-url": "^3.0.3", + "semver": "^5.1.0" + } + }, + "pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true + }, + "parallel-transform": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", + "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", + "dev": true, + "requires": { + "cyclist": "^1.0.1", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" + } + }, + "parse-asn1": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", + "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", + "dev": true, + "requires": { + "asn1.js": "^4.0.0", + "browserify-aes": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "parse-filepath": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", + "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=", + "dev": true, + "requires": { + "is-absolute": "^1.0.0", + "map-cache": "^0.2.0", + "path-root": "^0.1.1" + } + }, "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "parse-passwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", + "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", + "dev": true + }, + "parse5": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-3.0.3.tgz", + "integrity": "sha512-rgO9Zg5LLLkfJF9E6CCmXlSE4UVceloys8JrFqCcHloC3usd/kJCyPDwH2SOlzix2j3xaP9sUX3e8+kvkuleAA==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "dev": true + }, + "path": { + "version": "0.12.7", + "resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz", + "integrity": "sha1-1NwqUGxM4hl+tIHr/NWzbAFAsQ8=", + "dev": true, + "requires": { + "process": "^0.11.1", + "util": "^0.10.3" + } + }, + "path-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", + "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", + "dev": true + }, + "path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "dev": true + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "dev": true + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "path-root": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", + "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=", + "dev": true, + "requires": { + "path-root-regex": "^0.1.0" + } + }, + "path-root-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", + "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=", + "dev": true + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, + "pathval": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz", + "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=", + "dev": true + }, + "pbkdf2": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.1.tgz", + "integrity": "sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==", + "dev": true, + "requires": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", + "dev": true + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "picomatch": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", + "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", + "dev": true, + "optional": true + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "pino": { + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/pino/-/pino-5.9.0.tgz", + "integrity": "sha512-6sHy38gWsZbrmYq6vk343VCThy93ZdVfmLsHDVzbl/j621SjSaxCcS/ySmxK/hRmq8jpQb3n44dNRIeqbbQw6A==", + "dev": true, + "requires": { + "fast-json-parse": "^1.0.3", + "fast-redact": "^1.4.0", + "fast-safe-stringify": "^2.0.6", + "flatstr": "^1.0.5", + "pino-std-serializers": "^2.3.0", + "pump": "^3.0.0", + "quick-format-unescaped": "^3.0.0", + "sonic-boom": "^0.6.3" + }, + "dependencies": { + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + } + } + }, + "pino-std-serializers": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-2.4.2.tgz", + "integrity": "sha512-WaL504dO8eGs+vrK+j4BuQQq6GLKeCCcHaMB2ItygzVURcL1CycwNEUHTD/lHFHs/NL5qAz2UKrjYWXKSf4aMQ==", + "dev": true + }, + "pirates": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", + "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", + "dev": true, + "requires": { + "node-modules-regexp": "^1.0.0" + } + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + }, + "pluralize": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", + "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", + "dev": true + }, + "po2json": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/po2json/-/po2json-0.4.5.tgz", + "integrity": "sha1-R7spUtoy1Yob4vJWpZjuvAt0URg=", + "dev": true, + "requires": { + "gettext-parser": "1.1.0", + "nomnom": "1.8.1" + } + }, + "popper.js": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", + "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", + "dev": true + }, + "portscanner": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/portscanner/-/portscanner-1.2.0.tgz", + "integrity": "sha1-sUu9olfRTDEPqcwJaCrwLUCWGAI=", + "dev": true, + "requires": { + "async": "1.5.2" + } + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "dev": true + }, + "postcss": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.6.tgz", + "integrity": "sha512-Nq/rNjnHFcKgCDDZYO0lNsl6YWe6U7tTy+ESN+PnLxebL8uBtYX59HZqvrj7YLK5UCyll2hqDsJOo3ndzEW8Ug==", + "dev": true, + "requires": { + "chalk": "^2.4.1", + "source-map": "^0.6.1", + "supports-color": "^5.5.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "dev": true + }, + "prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "dev": true + }, + "private": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", + "dev": true + }, + "probe-image-size": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/probe-image-size/-/probe-image-size-4.0.0.tgz", + "integrity": "sha512-nm7RvWUxps+2+jZKNLkd04mNapXNariS6G5WIEVzvAqjx7EUuKcY1Dp3e6oUK7GLwzJ+3gbSbPLFAASHFQrPcQ==", + "dev": true, + "requires": { + "any-promise": "^1.3.0", + "deepmerge": "^2.0.1", + "inherits": "^2.0.3", + "next-tick": "^1.0.0", + "request": "^2.83.0", + "stream-parser": "~0.3.1" + } + }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true + }, + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "dev": true, + "requires": { + "asap": "~2.0.3" + } + }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true + }, + "promise.any": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/promise.any/-/promise.any-0.1.1.tgz", + "integrity": "sha1-Fg+JisPHW1y7cw/yOgyi8XQHvzo=", + "dev": true + }, + "proxy-addr": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", + "integrity": "sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==", + "requires": { + "forwarded": "~0.1.2", + "ipaddr.js": "1.9.1" + } + }, + "proxy-agent": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-2.3.1.tgz", + "integrity": "sha512-CNKuhC1jVtm8KJYFTS2ZRO71VCBx3QSA92So/e6NrY6GoJonkx3Irnk4047EsCcswczwqAekRj3s8qLRGahSKg==", + "dev": true, + "requires": { + "agent-base": "^4.2.0", + "debug": "^3.1.0", + "http-proxy-agent": "^2.1.0", + "https-proxy-agent": "^2.2.1", + "lru-cache": "^4.1.2", + "pac-proxy-agent": "^2.0.1", + "proxy-from-env": "^1.0.0", + "socks-proxy-agent": "^3.0.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "dev": true + }, + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "dev": true + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", + "dev": true + }, + "public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + } + } + }, + "pug": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pug/-/pug-2.0.4.tgz", + "integrity": "sha512-XhoaDlvi6NIzL49nu094R2NA6P37ijtgMDuWE+ofekDChvfKnzFal60bhSdiy8y2PBO6fmz3oMEIcfpBVRUdvw==", + "dev": true, + "requires": { + "pug-code-gen": "^2.0.2", + "pug-filters": "^3.1.1", + "pug-lexer": "^4.1.0", + "pug-linker": "^3.0.6", + "pug-load": "^2.0.12", + "pug-parser": "^5.0.1", + "pug-runtime": "^2.0.5", + "pug-strip-comments": "^1.0.4" + } + }, + "pug-attrs": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-2.0.4.tgz", + "integrity": "sha512-TaZ4Z2TWUPDJcV3wjU3RtUXMrd3kM4Wzjbe3EWnSsZPsJ3LDI0F3yCnf2/W7PPFF+edUFQ0HgDL1IoxSz5K8EQ==", + "dev": true, + "requires": { + "constantinople": "^3.0.1", + "js-stringify": "^1.0.1", + "pug-runtime": "^2.0.5" + } + }, + "pug-code-gen": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-2.0.2.tgz", + "integrity": "sha512-kROFWv/AHx/9CRgoGJeRSm+4mLWchbgpRzTEn8XCiwwOy6Vh0gAClS8Vh5TEJ9DBjaP8wCjS3J6HKsEsYdvaCw==", + "dev": true, + "requires": { + "constantinople": "^3.1.2", + "doctypes": "^1.1.0", + "js-stringify": "^1.0.1", + "pug-attrs": "^2.0.4", + "pug-error": "^1.3.3", + "pug-runtime": "^2.0.5", + "void-elements": "^2.0.1", + "with": "^5.0.0" + } + }, + "pug-error": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-1.3.3.tgz", + "integrity": "sha512-qE3YhESP2mRAWMFJgKdtT5D7ckThRScXRwkfo+Erqga7dyJdY3ZquspprMCj/9sJ2ijm5hXFWQE/A3l4poMWiQ==", + "dev": true + }, + "pug-filters": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-3.1.1.tgz", + "integrity": "sha512-lFfjNyGEyVWC4BwX0WyvkoWLapI5xHSM3xZJFUhx4JM4XyyRdO8Aucc6pCygnqV2uSgJFaJWW3Ft1wCWSoQkQg==", + "dev": true, + "requires": { + "clean-css": "^4.1.11", + "constantinople": "^3.0.1", + "jstransformer": "1.0.0", + "pug-error": "^1.3.3", + "pug-walk": "^1.1.8", + "resolve": "^1.1.6", + "uglify-js": "^2.6.1" + } + }, + "pug-lexer": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-4.1.0.tgz", + "integrity": "sha512-i55yzEBtjm0mlplW4LoANq7k3S8gDdfC6+LThGEvsK4FuobcKfDAwt6V4jKPH9RtiE3a2Akfg5UpafZ1OksaPA==", + "dev": true, + "requires": { + "character-parser": "^2.1.1", + "is-expression": "^3.0.0", + "pug-error": "^1.3.3" + } + }, + "pug-linker": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-3.0.6.tgz", + "integrity": "sha512-bagfuHttfQOpANGy1Y6NJ+0mNb7dD2MswFG2ZKj22s8g0wVsojpRlqveEQHmgXXcfROB2RT6oqbPYr9EN2ZWzg==", + "dev": true, + "requires": { + "pug-error": "^1.3.3", + "pug-walk": "^1.1.8" + } + }, + "pug-load": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-2.0.12.tgz", + "integrity": "sha512-UqpgGpyyXRYgJs/X60sE6SIf8UBsmcHYKNaOccyVLEuT6OPBIMo6xMPhoJnqtB3Q3BbO4Z3Bjz5qDsUWh4rXsg==", + "dev": true, + "requires": { + "object-assign": "^4.1.0", + "pug-walk": "^1.1.8" + } + }, + "pug-parser": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-5.0.1.tgz", + "integrity": "sha512-nGHqK+w07p5/PsPIyzkTQfzlYfuqoiGjaoqHv1LjOv2ZLXmGX1O+4Vcvps+P4LhxZ3drYSljjq4b+Naid126wA==", + "dev": true, + "requires": { + "pug-error": "^1.3.3", + "token-stream": "0.0.1" + } + }, + "pug-runtime": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-2.0.5.tgz", + "integrity": "sha512-P+rXKn9un4fQY77wtpcuFyvFaBww7/91f3jHa154qU26qFAnOe6SW1CbIDcxiG5lLK9HazYrMCCuDvNgDQNptw==", + "dev": true + }, + "pug-strip-comments": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-1.0.4.tgz", + "integrity": "sha512-i5j/9CS4yFhSxHp5iKPHwigaig/VV9g+FgReLJWWHEHbvKsbqL0oP/K5ubuLco6Wu3Kan5p7u7qk8A4oLLh6vw==", + "dev": true, + "requires": { + "pug-error": "^1.3.3" + } + }, + "pug-walk": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-1.1.8.tgz", + "integrity": "sha512-GMu3M5nUL3fju4/egXwZO0XLi6fW/K3T3VTgFQ14GxNi8btlxgT5qZL//JwZFm/2Fa64J/PNS8AZeys3wiMkVA==", + "dev": true + }, + "pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "pumpify": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "dev": true, + "requires": { + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "puppeteer": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-1.20.0.tgz", + "integrity": "sha512-bt48RDBy2eIwZPrkgbcwHtb51mj2nKvHOPMaSH2IsWiv7lOG9k9zhaRzpDZafrk05ajMc3cu+lSQYYOfH2DkVQ==", + "dev": true, + "requires": { + "debug": "^4.1.0", + "extract-zip": "^1.6.6", + "https-proxy-agent": "^2.2.1", + "mime": "^2.0.3", + "progress": "^2.0.1", + "proxy-from-env": "^1.0.0", + "rimraf": "^2.6.1", + "ws": "^6.1.0" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "mime": { + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", + "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==", + "dev": true + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } + } + }, + "qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" + }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=" + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", + "dev": true + }, + "quick-format-unescaped": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-3.0.3.tgz", + "integrity": "sha512-dy1yjycmn9blucmJLXOfZDx1ikZJUi6E8bBZLnhPG5gBrVhHXx2xVyqqgKBubVNEXmx51dBACMHpoMQK/N/AXQ==", + "dev": true + }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, + "requires": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" + }, + "raw-body": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", + "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", + "requires": { + "bytes": "3.1.0", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + } + }, + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + } + }, + "react-zlib-js": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/react-zlib-js/-/react-zlib-js-1.0.5.tgz", + "integrity": "sha512-TLcPdmqhIl+ylwOwlfm1WUuI7NVvhAv3L74d1AabhjyaAbmLOROTA/Q4EQ/UMCFCOjIkVim9fT3UZOQSFk/mlA==", + "dev": true + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "requires": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + }, + "dependencies": { + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "requires": { + "pinkie-promise": "^2.0.0" + } + } + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + }, + "dependencies": { + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "readline2": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/readline2/-/readline2-1.0.1.tgz", + "integrity": "sha1-QQWWCP/BVHV7cV2ZidGZ/783LjU=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "mute-stream": "0.0.5" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "mute-stream": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.5.tgz", + "integrity": "sha1-j7+rsKmKJT0xhDMfno3rc3L6xsA=", + "dev": true + } + } + }, + "rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", + "dev": true, + "requires": { + "resolve": "^1.1.6" + } + }, + "recursive-readdir": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz", + "integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==", + "dev": true, + "requires": { + "minimatch": "3.0.4" + } + }, + "regenerate": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.1.tgz", + "integrity": "sha512-j2+C8+NtXQgEKWk49MMP5P/u2GhnahTtVkRIHr5R5lVRlbKvmQ+oS+A5aLKWp2ma5VkT8sh6v+v4hbH0YHR66A==", + "dev": true + }, + "regenerate-unicode-properties": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz", + "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==", + "dev": true, + "requires": { + "regenerate": "^1.4.0" + } + }, + "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==", + "dev": true + }, + "regenerator-transform": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz", + "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==", + "dev": true, + "requires": { + "@babel/runtime": "^7.8.4" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "regexp.prototype.flags": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", + "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" + } + }, + "regexpp": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-1.1.0.tgz", + "integrity": "sha512-LOPw8FpgdQF9etWMaAfG/WRthIdXJGYp4mJ2Jgn/2lpkbod9jPn0t9UqN7AxBOKNfzRbYyVfgc7Vk4t/MpnXgw==", + "dev": true + }, + "regexpu-core": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.0.tgz", + "integrity": "sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ==", + "dev": true, + "requires": { + "regenerate": "^1.4.0", + "regenerate-unicode-properties": "^8.2.0", + "regjsgen": "^0.5.1", + "regjsparser": "^0.6.4", + "unicode-match-property-ecmascript": "^1.0.4", + "unicode-match-property-value-ecmascript": "^1.2.0" + } + }, + "registry-auth-token": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.4.0.tgz", + "integrity": "sha512-4LM6Fw8eBQdwMYcES4yTnn2TqIasbXuwDx3um+QRs7S55aMKCBKBxvPXl2RiUjHwuJLTyYfxSpmfSAjQpcuP+A==", + "dev": true, + "requires": { + "rc": "^1.1.6", + "safe-buffer": "^5.0.1" + } + }, + "registry-url": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", + "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", + "dev": true, + "requires": { + "rc": "^1.0.1" + } + }, + "regjsgen": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz", + "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==", + "dev": true + }, + "regjsparser": { + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz", + "integrity": "sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw==", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + } + } + }, + "relaxed-json": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/relaxed-json/-/relaxed-json-1.0.1.tgz", + "integrity": "sha1-fI1KovCVcEzQIOMugJm8rhA/C9Q=", + "dev": true, + "requires": { + "chalk": "^1.0.0", + "commander": "^2.6.0" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true + }, + "repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "dev": true + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true, + "requires": { + "is-finite": "^1.0.0" + } + }, + "request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "dependencies": { + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true + } + } + }, + "request-promise-core": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.4.tgz", + "integrity": "sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==", + "dev": true, + "requires": { + "lodash": "^4.17.19" + } + }, + "request-promise-native": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.9.tgz", + "integrity": "sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==", + "dev": true, + "requires": { + "request-promise-core": "1.1.4", + "stealthy-require": "^1.1.1", + "tough-cookie": "^2.3.3" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "require-uncached": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", + "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", + "dev": true, + "requires": { + "caller-path": "^0.1.0", + "resolve-from": "^1.0.0" + } + }, + "resolve": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", + "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + }, + "resolve-dir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", + "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", + "dev": true, + "requires": { + "expand-tilde": "^2.0.0", + "global-modules": "^1.0.0" + } + }, + "resolve-from": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz", + "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=", + "dev": true + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "dev": true + }, + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "requires": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + } + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "dev": true + }, + "right-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", + "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", + "dev": true, + "requires": { + "align-text": "^0.1.1" + } + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true + }, + "run-queue": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", + "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "dev": true, + "requires": { + "aproba": "^1.1.1" + } + }, + "rx-lite": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-3.1.2.tgz", + "integrity": "sha1-Gc5QLKVyZl87ZHsQk5+X/RYV8QI=", + "dev": true + }, + "rx-lite-aggregates": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", + "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", + "dev": true, + "requires": { + "rx-lite": "*" + } + }, + "rxjs": { + "version": "5.5.12", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz", + "integrity": "sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==", + "dev": true, + "requires": { + "symbol-observable": "1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "safe-json-parse": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/safe-json-parse/-/safe-json-parse-1.0.1.tgz", + "integrity": "sha1-PnZyPjjf3aE8mx0poeB//uSzC1c=", + "dev": true + }, + "safe-json-stringify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz", + "integrity": "sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg==", + "dev": true, + "optional": true + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "dev": true, + "requires": { + "ret": "~0.1.10" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "samsam": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/samsam/-/samsam-1.3.0.tgz", + "integrity": "sha512-1HwIYD/8UlOtFS3QO3w7ey+SdSDFE4HRNLZoZRYVQefrOY3l17epswImeB1ijgJFQJodIaHcwkp3r/myBjFVbg==", + "dev": true + }, + "sax": { + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/sax/-/sax-0.5.8.tgz", + "integrity": "sha1-1HLbIo6zMcJQaw6MFVJK25OdEsE=", + "dev": true + }, + "schema-utils": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", + "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.4", + "ajv": "^6.12.2", + "ajv-keywords": "^3.4.1" + } + }, + "secure-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/secure-keys/-/secure-keys-1.0.0.tgz", + "integrity": "sha1-8MgtmKOxOah3aogIBQuCRDEIf8o=", + "dev": true + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, + "semver-diff": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", + "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", + "dev": true, + "requires": { + "semver": "^5.0.3" + } + }, + "send": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", + "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", + "requires": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "~1.7.2", + "mime": "1.6.0", + "ms": "2.1.1", + "on-finished": "~2.3.0", + "range-parser": "~1.2.1", + "statuses": "~1.5.0" + }, + "dependencies": { + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" + } + } + }, + "serialize-javascript": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.9.1.tgz", + "integrity": "sha512-0Vb/54WJ6k5v8sSWN09S0ora+Hnr+cX40r9F170nT+mSkaxltoE/7R3OrIdBSUv1OoiobH1QoWQbCnAO+e8J1A==", + "dev": true }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true + "serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", + "dev": true, + "requires": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "dependencies": { + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + } + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + } + } }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } - } - } - }, - "loader-runner": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", - "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", - "dev": true - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - } - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "lodash": { - "version": "4.17.19", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", - "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==", - "dev": true - }, - "lodash.assign": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", - "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=", - "dev": true - }, - "lodash.assignin": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", - "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=", - "dev": true - }, - "lodash.clone": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clone/-/lodash.clone-4.5.0.tgz", - "integrity": "sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y=", - "dev": true - }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true - }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=" - }, - "lodash.flatten": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", - "dev": true - }, - "lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", - "dev": true - }, - "lodash.includes": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", - "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8=", - "dev": true - }, - "lodash.isboolean": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", - "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY=", - "dev": true - }, - "lodash.isinteger": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", - "integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M=", - "dev": true - }, - "lodash.isnumber": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", - "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w=", - "dev": true - }, - "lodash.isplainobject": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=", - "dev": true - }, - "lodash.isstring": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", - "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=", - "dev": true - }, - "lodash.once": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", - "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=", - "dev": true - }, - "lodash.set": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz", - "integrity": "sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM=", - "dev": true - }, - "lodash.sortby": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", - "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", - "dev": true - }, - "loglevel": { - "version": "1.6.8", - "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.8.tgz", - "integrity": "sha512-bsU7+gc9AJ2SqpzxwU3+1fedl8zAntbtC5XYlt3s2j1hJcn2PsXSmgN8TaLG/J1/2mod4+cE/3vNL70/c1RNCA==", - "dev": true - }, - "lolex": { - "version": "2.7.5", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-2.7.5.tgz", - "integrity": "sha512-l9x0+1offnKKIzYVjyXU2SiwhXDLekRzKyhnbyldPHvC7BvLPVpdNUNR2KeMAiCN2D/kLNttZgQD5WjSxuBx3Q==", - "dev": true - }, - "long": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", - "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==", - "dev": true - }, - "longest": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", - "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", - "dev": true - }, - "loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dev": true, - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" - } - }, - "lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "dev": true - }, - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "macos-release": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/macos-release/-/macos-release-1.1.0.tgz", - "integrity": "sha512-mmLbumEYMi5nXReB9js3WGsB8UE6cDBWyIO62Z4DNx6GbRhDxHNjA1MlzSpJ2S2KM1wyiPRA0d19uHWYYvMHjA==", - "dev": true - }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "make-iterator": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz", - "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==", - "dev": true, - "requires": { - "kind-of": "^6.0.2" - } - }, - "map-age-cleaner": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", - "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", - "dev": true, - "requires": { - "p-defer": "^1.0.0" - } - }, - "map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", - "dev": true - }, - "map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "dev": true, - "requires": { - "object-visit": "^1.0.0" - } - }, - "markdown-it": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz", - "integrity": "sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "entities": "~1.1.1", - "linkify-it": "^2.0.0", - "mdurl": "^1.0.1", - "uc.micro": "^1.0.5" - } - }, - "masonry-layout": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/masonry-layout/-/masonry-layout-4.2.2.tgz", - "integrity": "sha512-iGtAlrpHNyxaR19CvKC3npnEcAwszXoyJiI8ARV2ePi7fmYhIud25MHK8Zx4P0LCC4d3TNO9+rFa1KoK1OEOaA==", - "dev": true, - "requires": { - "get-size": "^2.0.2", - "outlayer": "^2.1.0" - } - }, - "md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "mdurl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=", - "dev": true - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" - }, - "mem": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", - "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", - "dev": true, - "requires": { - "map-age-cleaner": "^0.1.1", - "mimic-fn": "^2.0.0", - "p-is-promise": "^2.0.0" - } - }, - "memory-fs": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", - "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", - "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - } - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.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.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "dev": true, - "requires": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" - }, - "mime-db": { - "version": "1.44.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", - "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==" - }, - "mime-types": { - "version": "2.1.27", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", - "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", - "requires": { - "mime-db": "1.44.0" - } - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - }, - "min-document": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", - "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", - "dev": true, - "requires": { - "dom-walk": "^0.1.0" - } - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", - "dev": true - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, - "mississippi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-2.0.0.tgz", - "integrity": "sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==", - "dev": true, - "requires": { - "concat-stream": "^1.5.0", - "duplexify": "^3.4.2", - "end-of-stream": "^1.1.0", - "flush-write-stream": "^1.0.0", - "from2": "^2.1.0", - "parallel-transform": "^1.1.0", - "pump": "^2.0.1", - "pumpify": "^1.3.3", - "stream-each": "^1.1.0", - "through2": "^2.0.0" - } - }, - "mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", - "dev": true, - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "mixin-object": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", - "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", - "dev": true, - "requires": { - "for-in": "^0.1.3", - "is-extendable": "^0.1.1" - }, - "dependencies": { - "for-in": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", - "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=", - "dev": true - } - } - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "mocha": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-5.2.0.tgz", - "integrity": "sha512-2IUgKDhc3J7Uug+FxMXuqIyYzH7gJjXECKe/w43IGgQHTSj3InJi+yAA7T24L9bQMRKiUEHxEX37G5JpVUGLcQ==", - "dev": true, - "requires": { - "browser-stdout": "1.3.1", - "commander": "2.15.1", - "debug": "3.1.0", - "diff": "3.5.0", - "escape-string-regexp": "1.0.5", - "glob": "7.1.2", - "growl": "1.10.5", - "he": "1.1.1", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "supports-color": "5.4.0" - }, - "dependencies": { - "commander": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz", - "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==", - "dev": true + "serve-static": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", + "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.17.1" + } }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true }, - "glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } + "set-immediate-shim": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", + "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", + "dev": true }, - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true + "set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, - "requires": { - "minimist": "0.0.8" - } + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "dev": true }, - "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "moment": { - "version": "2.27.0", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.27.0.tgz", - "integrity": "sha512-al0MUK7cpIcglMv3YF13qSgdAIqxHTO7brRtaz3DlSULbqfazqkc5kEjNrLDOM7fsjshoFIihnU8snrP7zUvhQ==", - "dev": true - }, - "morgan": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.10.0.tgz", - "integrity": "sha512-AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ==", - "dev": true, - "requires": { - "basic-auth": "~2.0.1", - "debug": "2.6.9", - "depd": "~2.0.0", - "on-finished": "~2.3.0", - "on-headers": "~1.0.2" - }, - "dependencies": { - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "dev": true - } - } - }, - "move-concurrently": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", - "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", - "dev": true, - "requires": { - "aproba": "^1.1.1", - "copy-concurrently": "^1.0.0", - "fs-write-stream-atomic": "^1.0.8", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.3" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "multimatch": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", - "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", - "dev": true, - "requires": { - "array-differ": "^1.0.0", - "array-union": "^1.0.1", - "arrify": "^1.0.0", - "minimatch": "^3.0.0" - } - }, - "mute-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", - "dev": true - }, - "mv": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/mv/-/mv-2.1.1.tgz", - "integrity": "sha1-rmzg1vbV4KT32JN5jQPB6pVZtqI=", - "dev": true, - "optional": true, - "requires": { - "mkdirp": "~0.5.1", - "ncp": "~2.0.0", - "rimraf": "~2.4.0" - }, - "dependencies": { - "glob": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz", - "integrity": "sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI=", - "dev": true, - "optional": true, - "requires": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } + "setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" }, - "rimraf": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.4.5.tgz", - "integrity": "sha1-7nEM5dk6j9uFb7Xqj/Di11k0sto=", - "dev": true, - "optional": true, - "requires": { - "glob": "^6.0.1" - } - } - } - }, - "mz": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", - "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", - "dev": true, - "requires": { - "any-promise": "^1.0.0", - "object-assign": "^4.0.1", - "thenify-all": "^1.0.0" - } - }, - "nan": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz", - "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==", - "dev": true, - "optional": true - }, - "nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - } - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true - }, - "natural-compare-lite": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", - "integrity": "sha1-F7CVgZiJef3a/gIB6TG6kzyWy7Q=", - "dev": true - }, - "nconf": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/nconf/-/nconf-0.10.0.tgz", - "integrity": "sha512-fKiXMQrpP7CYWJQzKkPPx9hPgmq+YLDyxcG9N8RpiE9FoCkCbzD0NyW0YhE3xn3Aupe7nnDeIx4PFzYehpHT9Q==", - "dev": true, - "requires": { - "async": "^1.4.0", - "ini": "^1.3.0", - "secure-keys": "^1.0.0", - "yargs": "^3.19.0" - }, - "dependencies": { - "camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", - "dev": true + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } }, - "cliui": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wrap-ansi": "^2.0.0" - } + "shallow-clone": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-0.1.2.tgz", + "integrity": "sha1-WQnodLp3EG1zrEFM/sH/yofZcGA=", + "dev": true, + "requires": { + "is-extendable": "^0.1.1", + "kind-of": "^2.0.1", + "lazy-cache": "^0.2.3", + "mixin-object": "^2.0.1" + }, + "dependencies": { + "kind-of": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-2.0.1.tgz", + "integrity": "sha1-AY7HpM5+OobLkUG+UZ0kyPqpgbU=", + "dev": true, + "requires": { + "is-buffer": "^1.0.2" + } + }, + "lazy-cache": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-0.2.7.tgz", + "integrity": "sha1-f+3fLctu23fRHvHRF6tf/fCrG2U=", + "dev": true + } + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "shell-quote": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz", + "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=", + "dev": true, + "requires": { + "array-filter": "~0.0.0", + "array-map": "~0.0.0", + "array-reduce": "~0.0.0", + "jsonify": "~0.0.0" + } + }, + "shelljs": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.3.tgz", + "integrity": "sha512-fc0BKlAWiLpwZljmOvAOTE/gXawtCoNrP5oaY7KIaQbbyHeQVg01pSEuEGvGh3HEdBU4baCD7wQBwADmM/7f7A==", + "dev": true, + "requires": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + } + }, + "shellwords": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", + "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", + "dev": true + }, + "sign-addon": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/sign-addon/-/sign-addon-0.3.1.tgz", + "integrity": "sha512-feaoG7+8IXr9SymOEd8VTZCSlVZArWcBDZ33IIdfXlU5NWWzXdCxCjPDqAkLQplFa7RRZr1S4lSmgMPn80Ze1A==", + "dev": true, + "requires": { + "babel-polyfill": "6.16.0", + "deepcopy": "0.6.3", + "es6-error": "4.0.0", + "es6-promisify": "5.0.0", + "jsonwebtoken": "8.2.1", + "mz": "2.5.0", + "request": "2.87.0", + "source-map-support": "0.4.6", + "stream-to-promise": "2.2.0", + "when": "3.7.7" + }, + "dependencies": { + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "dev": true, + "requires": { + "co": "^4.6.0", + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0" + } + }, + "babel-polyfill": { + "version": "6.16.0", + "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.16.0.tgz", + "integrity": "sha1-LUUCHfh+JqN0ttTRqcZZZNF/JCI=", + "dev": true, + "requires": { + "babel-runtime": "^6.9.1", + "core-js": "^2.4.0", + "regenerator-runtime": "^0.9.5" + } + }, + "es6-error": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.0.0.tgz", + "integrity": "sha1-8JTHBB9mJZm7EnINoFnWucf/D0A=", + "dev": true + }, + "fast-deep-equal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", + "dev": true + }, + "har-validator": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", + "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", + "dev": true, + "requires": { + "ajv": "^5.1.0", + "har-schema": "^2.0.0" + } + }, + "json-schema-traverse": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", + "dev": true + }, + "mz": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.5.0.tgz", + "integrity": "sha1-KFkCXfA9RrV7sxcXSxlkd85kzsE=", + "dev": true, + "requires": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "oauth-sign": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", + "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", + "dev": true + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true + }, + "regenerator-runtime": { + "version": "0.9.6", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.9.6.tgz", + "integrity": "sha1-0z65XQ0gAaS+OWWXB8UbDLcc4Ck=", + "dev": true + }, + "request": { + "version": "2.87.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", + "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.6.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.5", + "extend": "~3.0.1", + "forever-agent": "~0.6.1", + "form-data": "~2.3.1", + "har-validator": "~5.0.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.17", + "oauth-sign": "~0.8.2", + "performance-now": "^2.1.0", + "qs": "~6.5.1", + "safe-buffer": "^5.1.1", + "tough-cookie": "~2.3.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.1.0" + } + }, + "source-map-support": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.6.tgz", + "integrity": "sha1-MlUqpktFg5KoXqs7C17mFScWeus=", + "dev": true, + "requires": { + "source-map": "^0.5.3" + } + }, + "tough-cookie": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", + "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", + "dev": true, + "requires": { + "punycode": "^1.4.1" + } + } + } + }, + "signal-exit": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", + "dev": true + }, + "sinon": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-4.5.0.tgz", + "integrity": "sha512-trdx+mB0VBBgoYucy6a9L7/jfQOmvGeaKZT4OOJ+lPAtI8623xyGr8wLiE4eojzBS8G9yXbhx42GHUOVLr4X2w==", + "dev": true, + "requires": { + "@sinonjs/formatio": "^2.0.0", + "diff": "^3.1.0", + "lodash.get": "^4.4.2", + "lolex": "^2.2.0", + "nise": "^1.2.0", + "supports-color": "^5.1.0", + "type-detect": "^4.0.5" + } + }, + "sinon-chai": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-2.14.0.tgz", + "integrity": "sha512-9stIF1utB0ywNHNT7RgiXbdmen8QDCRsrTjw+G9TgKt1Yexjiv8TOWZ6WHsTPz57Yky3DIswZvEqX8fpuHNDtQ==", + "dev": true + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "dev": true + }, + "slice-ansi": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", + "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0" + } + }, + "smart-buffer": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-1.1.15.tgz", + "integrity": "sha1-fxFLW2X6s+KjWqd1uxLw0cZJvxY=", + "dev": true + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "snyk": { + "version": "1.110.2", + "resolved": "https://registry.npmjs.org/snyk/-/snyk-1.110.2.tgz", + "integrity": "sha512-SQE4sudrscd48EoRJqy5h5S6c8YBiOw0r0Se3rfg1l6ElJGgCB9je6XEzfe+UmfES06D7ueFYepiQPxTwH4Qww==", + "dev": true, + "requires": { + "abbrev": "^1.1.1", + "ansi-escapes": "^3.1.0", + "chalk": "^2.4.1", + "configstore": "^3.1.2", + "debug": "^3.1.0", + "hasbin": "^1.2.3", + "inquirer": "^3.0.0", + "lodash": "^4.17.5", + "needle": "^2.2.4", + "opn": "^5.2.0", + "os-name": "^2.0.1", + "proxy-agent": "^2.0.0", + "proxy-from-env": "^1.0.0", + "recursive-readdir": "^2.2.2", + "semver": "^5.5.0", + "snyk-config": "2.2.0", + "snyk-docker-plugin": "1.12.3", + "snyk-go-plugin": "1.6.0", + "snyk-gradle-plugin": "2.1.1", + "snyk-module": "1.9.1", + "snyk-mvn-plugin": "2.0.0", + "snyk-nodejs-lockfile-parser": "1.7.1", + "snyk-nuget-plugin": "1.6.5", + "snyk-php-plugin": "1.5.1", + "snyk-policy": "1.13.1", + "snyk-python-plugin": "1.9.0", + "snyk-resolve": "1.0.1", + "snyk-resolve-deps": "4.0.2", + "snyk-sbt-plugin": "2.0.0", + "snyk-tree": "^1.0.0", + "snyk-try-require": "1.3.1", + "source-map-support": "^0.5.9", + "tempfile": "^2.0.0", + "then-fs": "^2.0.0", + "undefsafe": "^2.0.0", + "uuid": "^3.2.1" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "inquirer": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", + "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", + "dev": true, + "requires": { + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.0", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^2.0.4", + "figures": "^2.0.0", + "lodash": "^4.3.0", + "mute-stream": "0.0.7", + "run-async": "^2.2.0", + "rx-lite": "^4.0.8", + "rx-lite-aggregates": "^4.0.8", + "string-width": "^2.1.0", + "strip-ansi": "^4.0.0", + "through": "^2.3.6" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "opn": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", + "integrity": "sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==", + "dev": true, + "requires": { + "is-wsl": "^1.1.0" + } + }, + "rx-lite": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", + "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "snyk-config": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/snyk-config/-/snyk-config-2.2.0.tgz", + "integrity": "sha512-mq0wbP/AgjcmRq5i5jg2akVVV3iSYUPTowZwKn7DChRLDL8ySOzWAwan+ImXiyNbrWo87FNI/15O6MpOnTxOIg==", + "dev": true, + "requires": { + "debug": "^3.1.0", + "lodash": "^4.17.5", + "nconf": "^0.10.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "snyk-docker-plugin": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-1.12.3.tgz", + "integrity": "sha512-ZbvaFCPCd0wxhqxjzU/iyf39tKlq2nvI9nPW32uZV3RGdHrkQH55BzCtBCF9d0dapxX+PKgae/4u2BKNw8hd9Q==", + "dev": true, + "requires": { + "debug": "^3", + "dockerfile-ast": "0.0.12", + "tslib": "^1" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "snyk-go-plugin": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/snyk-go-plugin/-/snyk-go-plugin-1.6.0.tgz", + "integrity": "sha512-E6aYw7XAXSs2wJR3fU+vGQ1lVyjAw8PHIQYQwBwMkTHByhJIWPcu6Hy/jT5LcjJHlhYXlpOuk53HeLVK+kcXrQ==", + "dev": true, + "requires": { + "graphlib": "^2.1.1", + "tmp": "0.0.33", + "toml": "^2.3.2" + } + }, + "snyk-gradle-plugin": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snyk-gradle-plugin/-/snyk-gradle-plugin-2.1.1.tgz", + "integrity": "sha512-aFeVC5y3XkJ5BxknHhtYo76as3xJbzSQlXACGZrQZGQ/w/UhNdM8VI1QB6Eq4uEzexleB/hcJwYxNmhI2CNCeA==", + "dev": true, + "requires": { + "clone-deep": "^0.3.0" + } + }, + "snyk-module": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/snyk-module/-/snyk-module-1.9.1.tgz", + "integrity": "sha512-A+CCyBSa4IKok5uEhqT+hV/35RO6APFNLqk9DRRHg7xW2/j//nPX8wTSZUPF8QeRNEk/sX+6df7M1y6PBHGSHA==", + "dev": true, + "requires": { + "debug": "^3.1.0", + "hosted-git-info": "^2.7.1" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "snyk-mvn-plugin": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/snyk-mvn-plugin/-/snyk-mvn-plugin-2.0.0.tgz", + "integrity": "sha512-9jAhZhv+7YcqtoQYCYlgMoxK+dWBKlk+wkX27Ebg3vNddNop9q5jZitRXTjsXwfSUZHRt+Ptw1f8vei9kjzZVg==", + "dev": true + }, + "snyk-nodejs-lockfile-parser": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.7.1.tgz", + "integrity": "sha512-0gHELqMhzUxb/t3Tg6d6G9LTDioOXCrEMt9aetOeV8wD/ZRL5VFNjwcdrm8qILLqzDFaFjFIyMc66c0OL4zFAQ==", + "dev": true, + "requires": { + "@yarnpkg/lockfile": "^1.0.2", + "graphlib": "^2.1.5", + "lodash": "4.17.10", + "source-map-support": "^0.5.7", + "tslib": "^1.9.3", + "uuid": "^3.3.2" + }, + "dependencies": { + "lodash": { + "version": "4.17.10", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", + "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", + "dev": true + } + } + }, + "snyk-nuget-plugin": { + "version": "1.6.5", + "resolved": "https://registry.npmjs.org/snyk-nuget-plugin/-/snyk-nuget-plugin-1.6.5.tgz", + "integrity": "sha512-3qIndzkxCxiaGvAwMkqChbChGdwhNePPyfi0WjhC/nJGwecqU3Fb/NeTW7lgyT+xoq/dFnzW0DgBJ4+AyNA2gA==", + "dev": true, + "requires": { + "debug": "^3.1.0", + "jszip": "^3.1.5", + "lodash": "^4.17.10", + "xml2js": "^0.4.17" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "snyk-php-plugin": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/snyk-php-plugin/-/snyk-php-plugin-1.5.1.tgz", + "integrity": "sha512-g5QSHBsRJ2O4cNxKC4zlWwnQYiSgQ77Y6QgGmo3ihPX3VLZrc1amaZIpPsNe1jwXirnGj2rvR5Xw+jDjbzvHFw==", + "dev": true, + "requires": { + "debug": "^3.1.0", + "lodash": "^4.17.5", + "path": "0.12.7" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "snyk-policy": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/snyk-policy/-/snyk-policy-1.13.1.tgz", + "integrity": "sha512-l9evS3Yk70xyvajjg+I6Ij7fr7gxpVRMZl0J1xNpWps/IVu4DSGih3aMmXi47VJozr4A/eFyj7R1lIr2GhqJCA==", + "dev": true, + "requires": { + "debug": "^3.1.0", + "email-validator": "^2.0.4", + "js-yaml": "^3.12.0", + "lodash.clonedeep": "^4.5.0", + "semver": "^5.6.0", + "snyk-module": "^1.9.1", + "snyk-resolve": "^1.0.1", + "snyk-try-require": "^1.3.1", + "then-fs": "^2.0.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "snyk-python-plugin": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/snyk-python-plugin/-/snyk-python-plugin-1.9.0.tgz", + "integrity": "sha512-zlyOHoCpmyVym9AwkboeepzEGrY3gHsM7eWP/nJ85TgCnQO5H5orKm3RL57PNbWRY+BnDmoQQ+udQgjym2+3sg==", + "dev": true, + "requires": { + "tmp": "0.0.33" + } + }, + "snyk-resolve": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/snyk-resolve/-/snyk-resolve-1.0.1.tgz", + "integrity": "sha512-7+i+LLhtBo1Pkth01xv+RYJU8a67zmJ8WFFPvSxyCjdlKIcsps4hPQFebhz+0gC5rMemlaeIV6cqwqUf9PEDpw==", + "dev": true, + "requires": { + "debug": "^3.1.0", + "then-fs": "^2.0.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "snyk-resolve-deps": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/snyk-resolve-deps/-/snyk-resolve-deps-4.0.2.tgz", + "integrity": "sha512-nlw62wiWhGOTw3BD3jVIwrUkRR4iNxEkkO4Y/PWs8BsUWseGu1H6QgLesFXJb3qx7ANJ5UbUCJMgV+eL0Lf9cA==", + "dev": true, + "requires": { + "ansicolors": "^0.3.2", + "debug": "^3.2.5", + "lodash.assign": "^4.2.0", + "lodash.assignin": "^4.2.0", + "lodash.clone": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.get": "^4.4.2", + "lodash.set": "^4.3.2", + "lru-cache": "^4.0.0", + "semver": "^5.5.1", + "snyk-module": "^1.6.0", + "snyk-resolve": "^1.0.0", + "snyk-tree": "^1.0.0", + "snyk-try-require": "^1.1.1", + "then-fs": "^2.0.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "snyk-sbt-plugin": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/snyk-sbt-plugin/-/snyk-sbt-plugin-2.0.0.tgz", + "integrity": "sha512-bOUqsQ1Lysnwfnvf4QQIBfC0M0ZVuhlshTKd7pNwgAJ41YEPJNrPEpzOePl/HfKtwilEEwHh5YHvjYGegEKx0A==", + "dev": true + }, + "snyk-tree": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/snyk-tree/-/snyk-tree-1.0.0.tgz", + "integrity": "sha1-D7cxdtvzLngvGRAClBYESPkRHMg=", + "dev": true, + "requires": { + "archy": "^1.0.0" + } + }, + "snyk-try-require": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/snyk-try-require/-/snyk-try-require-1.3.1.tgz", + "integrity": "sha1-bgJvkuZK9/zM6h7lPVJIQeQYohI=", + "dev": true, + "requires": { + "debug": "^3.1.0", + "lodash.clonedeep": "^4.3.0", + "lru-cache": "^4.0.0", + "then-fs": "^2.0.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "socks": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/socks/-/socks-1.1.10.tgz", + "integrity": "sha1-W4t/x8jzQcU+0FbpKbe/Tei6e1o=", + "dev": true, + "requires": { + "ip": "^1.1.4", + "smart-buffer": "^1.0.13" + } + }, + "socks-proxy-agent": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-3.0.1.tgz", + "integrity": "sha512-ZwEDymm204mTzvdqyUqOdovVr2YRd2NYskrYrF2LXyZ9qDiMAoFESGK8CRphiO7rtbo2Y757k2Nia3x2hGtalA==", + "dev": true, + "requires": { + "agent-base": "^4.1.0", + "socks": "^1.1.10" + } + }, + "sonic-boom": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-0.6.3.tgz", + "integrity": "sha512-TMhj6kDJk9LLzCTTL8+HPCfFn4MwkE4P6k2Up89Rz949+DSRw90V62upRKC99rJEOmu4E9ljH5Otu2JSRmx+bg==", + "dev": true, + "requires": { + "flatstr": "^1.0.8" + } + }, + "source-list-map": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "dev": true, + "requires": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-support": { + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", + "dev": true + }, + "spawn-sync": { + "version": "1.0.15", + "resolved": "https://registry.npmjs.org/spawn-sync/-/spawn-sync-1.0.15.tgz", + "integrity": "sha1-sAeZVX63+wyDdsKdROih6mfldHY=", + "dev": true, + "requires": { + "concat-stream": "^1.4.7", + "os-shim": "^0.1.2" + } + }, + "spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dev": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", + "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", + "dev": true + }, + "split": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/split/-/split-0.3.3.tgz", + "integrity": "sha1-zQ7qXmOiEd//frDwkcQTPi0N0o8=", + "dev": true, + "requires": { + "through": "2" + } + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", + "dev": true + }, + "sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "dev": true, + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "ssri": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-5.3.0.tgz", + "integrity": "sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.1" + } + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dev": true, + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" + }, + "stealthy-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", + "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", + "dev": true + }, + "stream-browserify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", + "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", + "dev": true, + "requires": { + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" + } + }, + "stream-each": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", + "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" + } + }, + "stream-http": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "dev": true, + "requires": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" + } + }, + "stream-parser": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/stream-parser/-/stream-parser-0.3.1.tgz", + "integrity": "sha1-FhhUhpRCACGhGC/wrxkRwSl2F3M=", + "dev": true, + "requires": { + "debug": "2" + } + }, + "stream-shift": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", + "dev": true + }, + "stream-to-array": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/stream-to-array/-/stream-to-array-2.3.0.tgz", + "integrity": "sha1-u/azn19D7DC8cbq8s3VXrOzzQ1M=", + "dev": true, + "requires": { + "any-promise": "^1.1.0" + } + }, + "stream-to-promise": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/stream-to-promise/-/stream-to-promise-2.2.0.tgz", + "integrity": "sha1-se2y4cjLESidG1A8CNPyrvUeZQ8=", + "dev": true, + "requires": { + "any-promise": "~1.3.0", + "end-of-stream": "~1.1.0", + "stream-to-array": "~2.3.0" + }, + "dependencies": { + "end-of-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.1.0.tgz", + "integrity": "sha1-6TUyWLqpEIll78QcsO+K3i88+wc=", + "dev": true, + "requires": { + "once": "~1.3.0" + } + }, + "once": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", + "integrity": "sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA=", + "dev": true, + "requires": { + "wrappy": "1" + } + } + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, + "string-template": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz", + "integrity": "sha1-QpMuWYo1LQH8IuwzZ9nYTuxsmt0=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "string.prototype.matchall": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-2.0.0.tgz", + "integrity": "sha512-WoZ+B2ypng1dp4iFLF2kmZlwwlE19gmjgKuhL1FJfDgCREWb3ye3SDVHSzLH6bxfnvYmkCxbzkmWcQZHA4P//Q==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "es-abstract": "^1.10.0", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "regexp.prototype.flags": "^1.2.0" + } + }, + "string.prototype.trimend": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", + "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "string.prototype.trimstart": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", + "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "strip-bom-buf": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-1.0.0.tgz", + "integrity": "sha1-HLRar1dTD0yvhsf3UXnSyaUd1XI=", + "dev": true, + "requires": { + "is-utf8": "^0.2.1" + } }, - "invert-kv": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", - "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", - "dev": true + "strip-bom-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-3.0.0.tgz", + "integrity": "sha1-lWvMXYRDD2klapDtgjdlzYWOFZw=", + "dev": true, + "requires": { + "first-chunk-stream": "^2.0.0", + "strip-bom-buf": "^1.0.0" + } }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true }, - "lcid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", - "dev": true, - "requires": { - "invert-kv": "^1.0.0" - } + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true }, - "os-locale": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", - "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", - "dev": true, - "requires": { - "lcid": "^1.0.0" - } + "stylus": { + "version": "0.54.8", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.8.tgz", + "integrity": "sha512-vr54Or4BZ7pJafo2mpf0ZcwA74rpuYCZbxrHBsH8kbcXOwSfvBFwsRfpGO5OD5fhG5HDCFW737PKaawI7OqEAg==", + "dev": true, + "requires": { + "css-parse": "~2.0.0", + "debug": "~3.1.0", + "glob": "^7.1.6", + "mkdirp": "~1.0.4", + "safer-buffer": "^2.1.2", + "sax": "~1.2.4", + "semver": "^6.3.0", + "source-map": "^0.7.3" + }, + "dependencies": { + "css-parse": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-2.0.0.tgz", + "integrity": "sha1-pGjuZnwW2BzPBcWMONKpfHgNv9Q=", + "dev": true, + "requires": { + "css": "^2.0.0" + } + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + }, + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true + } + } }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } }, - "window-size": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.4.tgz", - "integrity": "sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY=", - "dev": true + "symbol-observable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", + "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=", + "dev": true }, - "y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", - "dev": true + "table": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/table/-/table-4.0.3.tgz", + "integrity": "sha512-S7rnFITmBH1EnyKcvxBh1LjYeQMmnZtCXSEbHcH6S0NoKit24ZuFO/T1vDcLdYsLQkM188PVVhQmzKIuThNkKg==", + "dev": true, + "requires": { + "ajv": "^6.0.1", + "ajv-keywords": "^3.0.0", + "chalk": "^2.1.0", + "lodash": "^4.17.4", + "slice-ansi": "1.0.0", + "string-width": "^2.1.1" + } }, - "yargs": { - "version": "3.32.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.32.0.tgz", - "integrity": "sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU=", - "dev": true, - "requires": { - "camelcase": "^2.0.1", - "cliui": "^3.0.3", - "decamelize": "^1.1.1", - "os-locale": "^1.4.0", - "string-width": "^1.0.1", - "window-size": "^0.1.4", - "y18n": "^3.2.0" - } - } - } - }, - "ncp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ncp/-/ncp-2.0.0.tgz", - "integrity": "sha1-GVoh1sRuNh0vsSgbo4uR6d9727M=", - "dev": true, - "optional": true - }, - "needle": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-2.5.0.tgz", - "integrity": "sha512-o/qITSDR0JCyCKEQ1/1bnUXMmznxabbwi/Y4WwJElf+evwJNFNwIDMCCt5IigFVxgeGBJESLohGtIS9gEzo1fA==", - "dev": true, - "requires": { - "debug": "^3.2.6", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "dev": true }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "tar-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", + "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", + "dev": true, + "requires": { + "bl": "^1.0.0", + "buffer-alloc": "^1.2.0", + "end-of-stream": "^1.0.0", + "fs-constants": "^1.0.0", + "readable-stream": "^2.3.0", + "to-buffer": "^1.1.1", + "xtend": "^4.0.0" + } }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - } - } - }, - "negotiator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" - }, - "neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true - }, - "netmask": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/netmask/-/netmask-1.0.6.tgz", - "integrity": "sha1-ICl+idhvb2QA8lDZ9Pa0wZRfzTU=", - "dev": true - }, - "next-tick": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", - "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", - "dev": true - }, - "nib": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/nib/-/nib-1.1.2.tgz", - "integrity": "sha1-amnt5AgblcDe+L4CSkyK4MLLtsc=", - "dev": true, - "requires": { - "stylus": "0.54.5" - }, - "dependencies": { - "glob": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.6.tgz", - "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.2", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } + "temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", + "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "dev": true }, - "source-map": { - "version": "0.1.43", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", - "dev": true, - "requires": { - "amdefine": ">=0.0.4" - } + "tempfile": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-2.0.0.tgz", + "integrity": "sha1-awRGhWqbERTRhW/8vlCczLCXcmU=", + "dev": true, + "requires": { + "temp-dir": "^1.0.0", + "uuid": "^3.0.1" + } }, - "stylus": { - "version": "0.54.5", - "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.5.tgz", - "integrity": "sha1-QrlWCTHKcJDOhRWnmLqeaqPW3Hk=", - "dev": true, - "requires": { - "css-parse": "1.7.x", - "debug": "*", - "glob": "7.0.x", - "mkdirp": "0.5.x", - "sax": "0.5.x", - "source-map": "0.1.x" - } - } - } - }, - "nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true - }, - "nise": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.3.tgz", - "integrity": "sha512-Ymbac/94xeIrMf59REBPOv0thr+CJVFMhrlAkW/gjCIE58BGQdCj0x7KRCb3yz+Ga2Rz3E9XXSvUyyxqqhjQAQ==", - "dev": true, - "requires": { - "@sinonjs/formatio": "^3.2.1", - "@sinonjs/text-encoding": "^0.7.1", - "just-extend": "^4.0.2", - "lolex": "^5.0.1", - "path-to-regexp": "^1.7.0" - }, - "dependencies": { - "@sinonjs/formatio": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.2.tgz", - "integrity": "sha512-B8SEsgd8gArBLMD6zpRw3juQ2FVSsmdd7qlevyDqzS9WTCtvF55/gAL+h6gue8ZvPYcdiPdvueM/qm//9XzyTQ==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1", - "@sinonjs/samsam": "^3.1.0" - } + "term-size": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", + "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", + "dev": true, + "requires": { + "execa": "^0.7.0" + }, + "dependencies": { + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "dev": true, + "requires": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + } + } }, - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true + "terser": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", + "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", + "dev": true, + "requires": { + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } }, - "lolex": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-5.1.2.tgz", - "integrity": "sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.7.0" - } + "terser-webpack-plugin": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.4.tgz", + "integrity": "sha512-U4mACBHIegmfoEe5fdongHESNJWqsGU+W0S/9+BmYGVQDw1+c2Ow05TpMhxjPK1sRb7cuYq1BPl1e5YHJMTCqA==", + "dev": true, + "requires": { + "cacache": "^12.0.2", + "find-cache-dir": "^2.1.0", + "is-wsl": "^1.1.0", + "schema-utils": "^1.0.0", + "serialize-javascript": "^3.1.0", + "source-map": "^0.6.1", + "terser": "^4.1.2", + "webpack-sources": "^1.4.0", + "worker-farm": "^1.7.0" + }, + "dependencies": { + "cacache": { + "version": "12.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", + "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", + "dev": true, + "requires": { + "bluebird": "^3.5.5", + "chownr": "^1.1.1", + "figgy-pudding": "^3.5.1", + "glob": "^7.1.4", + "graceful-fs": "^4.1.15", + "infer-owner": "^1.0.3", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.3", + "ssri": "^6.0.1", + "unique-filename": "^1.1.1", + "y18n": "^4.0.0" + } + }, + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "requires": { + "yallist": "^3.0.2" + } + }, + "mississippi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "dev": true, + "requires": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^3.0.0", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + } + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + }, + "serialize-javascript": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-3.1.0.tgz", + "integrity": "sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg==", + "dev": true, + "requires": { + "randombytes": "^2.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "ssri": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", + "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "dev": true, + "requires": { + "figgy-pudding": "^3.5.1" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + } + } }, - "path-to-regexp": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", - "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", - "dev": true, - "requires": { - "isarray": "0.0.1" - } - } - } - }, - "node-forge": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.8.5.tgz", - "integrity": "sha512-vFMQIWt+J/7FLNyKouZ9TazT74PRV3wgv9UT4cRjC8BffxFbKXkgIWR42URCPSnHm/QDz6BOlb2Q0U4+VQT67Q==", - "dev": true - }, - "node-jose": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/node-jose/-/node-jose-1.1.4.tgz", - "integrity": "sha512-L31IFwL3pWWcMHxxidCY51ezqrDXMkvlT/5pLTfNw5sXmmOLJuN6ug7txzF/iuZN55cRpyOmoJrotwBQIoo5Lw==", - "dev": true, - "requires": { - "base64url": "^3.0.1", - "browserify-zlib": "^0.2.0", - "buffer": "^5.5.0", - "es6-promise": "^4.2.8", - "lodash": "^4.17.15", - "long": "^4.0.0", - "node-forge": "^0.8.5", - "process": "^0.11.10", - "react-zlib-js": "^1.0.4", - "uuid": "^3.3.3" - }, - "dependencies": { - "es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", - "dev": true - } - } - }, - "node-libs-browser": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", - "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", - "dev": true, - "requires": { - "assert": "^1.1.1", - "browserify-zlib": "^0.2.0", - "buffer": "^4.3.0", - "console-browserify": "^1.1.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.11.0", - "domain-browser": "^1.1.1", - "events": "^3.0.0", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "0.0.1", - "process": "^0.11.10", - "punycode": "^1.2.4", - "querystring-es3": "^0.2.0", - "readable-stream": "^2.3.3", - "stream-browserify": "^2.0.1", - "stream-http": "^2.7.2", - "string_decoder": "^1.0.0", - "timers-browserify": "^2.0.4", - "tty-browserify": "0.0.0", - "url": "^0.11.0", - "util": "^0.11.0", - "vm-browserify": "^1.0.1" - }, - "dependencies": { - "buffer": { - "version": "4.9.2", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", - "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", - "dev": true, - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" - } + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true }, - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true + "then-fs": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/then-fs/-/then-fs-2.0.0.tgz", + "integrity": "sha1-cveS3Z0xcFqRrhnr/Piz+WjIHaI=", + "dev": true, + "requires": { + "promise": ">=3.2 <8" + } }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true + "thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dev": true, + "requires": { + "any-promise": "^1.0.0" + } }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } + "thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY=", + "dev": true, + "requires": { + "thenify": ">= 3.1.0 < 4" + } }, - "util": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", - "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", - "dev": true, - "requires": { - "inherits": "2.0.3" - } - } - } - }, - "node-modules-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", - "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", - "dev": true - }, - "node-notifier": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-5.2.1.tgz", - "integrity": "sha512-MIBs+AAd6dJ2SklbbE8RUDRlIVhU8MaNLh1A9SUZDUHPiZkWLFde6UNwG41yQHZEToHgJMXqyVZ9UcS/ReOVTg==", - "dev": true, - "requires": { - "growly": "^1.3.0", - "semver": "^5.4.1", - "shellwords": "^0.1.1", - "which": "^1.3.0" - } - }, - "node-releases": { - "version": "1.1.60", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.60.tgz", - "integrity": "sha512-gsO4vjEdQaTusZAEebUWp2a5d7dF5DYoIpDG7WySnk7BuZDW+GPpHXoXXuYawRBr/9t5q54tirPz79kFIWg4dA==", - "dev": true - }, - "node-rsa": { - "version": "0.2.30", - "resolved": "https://registry.npmjs.org/node-rsa/-/node-rsa-0.2.30.tgz", - "integrity": "sha1-iRLiw7G2TM5sp4PKsa8oKzAK3uY=", - "dev": true, - "requires": { - "asn1": "0.2.3", - "lodash": "3.3.0" - }, - "dependencies": { - "lodash": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.3.0.tgz", - "integrity": "sha1-ARzlLQGxTmDq7qdqy5uLpCxwWBs=", - "dev": true - } - } - }, - "nomnom": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz", - "integrity": "sha1-IVH3Ikcrp55Qp2/BJbuMjy5Nwqc=", - "dev": true, - "requires": { - "chalk": "~0.4.0", - "underscore": "~1.6.0" - }, - "dependencies": { - "ansi-styles": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", - "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", - "dev": true + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true }, - "chalk": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", - "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", - "dev": true, - "requires": { - "ansi-styles": "~1.0.0", - "has-color": "~0.1.0", - "strip-ansi": "~0.1.0" - } + "through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "requires": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } }, - "strip-ansi": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", - "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", - "dev": true - } - } - }, - "nopt": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", - "dev": true, - "requires": { - "abbrev": "1" - } - }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - }, - "npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "dev": true, - "requires": { - "path-key": "^2.0.0" - } - }, - "nth-check": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", - "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", - "dev": true, - "requires": { - "boolbase": "~1.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true - }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "dev": true, - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } + "thunkify": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/thunkify/-/thunkify-2.1.2.tgz", + "integrity": "sha1-+qDp0jDFGsyVyhOjYawFyn4EVT0=", + "dev": true }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "object-inspect": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.8.0.tgz", - "integrity": "sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==", - "dev": true - }, - "object-is": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.2.tgz", - "integrity": "sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" - } - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - }, - "object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "dev": true, - "requires": { - "isobject": "^3.0.0" - } - }, - "object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", - "dev": true, - "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" - } - }, - "object.defaults": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", - "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=", - "dev": true, - "requires": { - "array-each": "^1.0.1", - "array-slice": "^1.0.0", - "for-own": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "object.map": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", - "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=", - "dev": true, - "requires": { - "for-own": "^1.0.0", - "make-iterator": "^1.0.0" - } - }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "requires": { - "ee-first": "1.1.1" - } - }, - "on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "dev": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "dev": true, - "requires": { - "mimic-fn": "^1.0.0" - }, - "dependencies": { - "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "dev": true - } - } - }, - "opn": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/opn/-/opn-4.0.2.tgz", - "integrity": "sha1-erwi5kTf9jsKltWrfyeQwPAavJU=", - "dev": true, - "requires": { - "object-assign": "^4.0.1", - "pinkie-promise": "^2.0.0" - } - }, - "optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "dev": true, - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - } - }, - "os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", - "dev": true - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true - }, - "os-locale": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.0.1.tgz", - "integrity": "sha512-7g5e7dmXPtzcP4bgsZ8ixDVqA7oWYuEz4lOSujeWyliPai4gfVDiFIcwBg3aGCPnmSGfzOKTK3ccPn0CKv3DBw==", - "dev": true, - "requires": { - "execa": "^0.10.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" - } - }, - "os-name": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/os-name/-/os-name-2.0.1.tgz", - "integrity": "sha1-uaOGNhwXrjohc27wWZQFyajF3F4=", - "dev": true, - "requires": { - "macos-release": "^1.0.0", - "win-release": "^1.0.0" - } - }, - "os-shim": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/os-shim/-/os-shim-0.1.3.tgz", - "integrity": "sha1-a2LDeRz3kJ6jXtRuF2WLtBfLORc=", - "dev": true - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true - }, - "osenv": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "dev": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "outlayer": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/outlayer/-/outlayer-2.1.1.tgz", - "integrity": "sha1-KYY7beEOpdrf/8rfoNcokHOH6aI=", - "dev": true, - "requires": { - "ev-emitter": "^1.0.0", - "fizzy-ui-utils": "^2.0.0", - "get-size": "^2.0.2" - } - }, - "p-defer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", - "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", - "dev": true - }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true - }, - "p-is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", - "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", - "dev": true - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "pac-proxy-agent": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-2.0.2.tgz", - "integrity": "sha512-cDNAN1Ehjbf5EHkNY5qnRhGPUCp6SnpyVof5fRzN800QV1Y2OkzbH9rmjZkbBRa8igof903yOnjIl6z0SlAhxA==", - "dev": true, - "requires": { - "agent-base": "^4.2.0", - "debug": "^3.1.0", - "get-uri": "^2.0.0", - "http-proxy-agent": "^2.1.0", - "https-proxy-agent": "^2.2.1", - "pac-resolver": "^3.0.0", - "raw-body": "^2.2.0", - "socks-proxy-agent": "^3.0.0" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "timed-out": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", + "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", + "dev": true }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "pac-resolver": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-3.0.0.tgz", - "integrity": "sha512-tcc38bsjuE3XZ5+4vP96OfhOugrX+JcnpUbhfuc4LuXBLQhoTthOstZeoQJBDnQUDYzYmdImKsbz0xSl1/9qeA==", - "dev": true, - "requires": { - "co": "^4.6.0", - "degenerator": "^1.0.4", - "ip": "^1.1.5", - "netmask": "^1.0.6", - "thunkify": "^2.1.2" - } - }, - "package-json": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", - "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", - "dev": true, - "requires": { - "got": "^6.7.1", - "registry-auth-token": "^3.0.1", - "registry-url": "^3.0.3", - "semver": "^5.1.0" - } - }, - "pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true - }, - "parallel-transform": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", - "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", - "dev": true, - "requires": { - "cyclist": "^1.0.1", - "inherits": "^2.0.3", - "readable-stream": "^2.1.5" - } - }, - "parse-asn1": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", - "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", - "dev": true, - "requires": { - "asn1.js": "^4.0.0", - "browserify-aes": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" - } - }, - "parse-filepath": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", - "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=", - "dev": true, - "requires": { - "is-absolute": "^1.0.0", - "map-cache": "^0.2.0", - "path-root": "^0.1.1" - } - }, - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "parse-passwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", - "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", - "dev": true - }, - "parse5": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-3.0.3.tgz", - "integrity": "sha512-rgO9Zg5LLLkfJF9E6CCmXlSE4UVceloys8JrFqCcHloC3usd/kJCyPDwH2SOlzix2j3xaP9sUX3e8+kvkuleAA==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" - }, - "pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "dev": true - }, - "path": { - "version": "0.12.7", - "resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz", - "integrity": "sha1-1NwqUGxM4hl+tIHr/NWzbAFAsQ8=", - "dev": true, - "requires": { - "process": "^0.11.1", - "util": "^0.10.3" - } - }, - "path-browserify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", - "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", - "dev": true - }, - "path-dirname": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", - "dev": true - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-is-inside": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", - "dev": true - }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true - }, - "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", - "dev": true - }, - "path-root": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", - "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=", - "dev": true, - "requires": { - "path-root-regex": "^0.1.0" - } - }, - "path-root-regex": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", - "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=", - "dev": true - }, - "path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" - }, - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } - } - }, - "pathval": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz", - "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=", - "dev": true - }, - "pbkdf2": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.1.tgz", - "integrity": "sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==", - "dev": true, - "requires": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", - "dev": true - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "picomatch": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", - "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", - "dev": true, - "optional": true - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "pino": { - "version": "5.9.0", - "resolved": "https://registry.npmjs.org/pino/-/pino-5.9.0.tgz", - "integrity": "sha512-6sHy38gWsZbrmYq6vk343VCThy93ZdVfmLsHDVzbl/j621SjSaxCcS/ySmxK/hRmq8jpQb3n44dNRIeqbbQw6A==", - "dev": true, - "requires": { - "fast-json-parse": "^1.0.3", - "fast-redact": "^1.4.0", - "fast-safe-stringify": "^2.0.6", - "flatstr": "^1.0.5", - "pino-std-serializers": "^2.3.0", - "pump": "^3.0.0", - "quick-format-unescaped": "^3.0.0", - "sonic-boom": "^0.6.3" - }, - "dependencies": { - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - } - } - }, - "pino-std-serializers": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-2.4.2.tgz", - "integrity": "sha512-WaL504dO8eGs+vrK+j4BuQQq6GLKeCCcHaMB2ItygzVURcL1CycwNEUHTD/lHFHs/NL5qAz2UKrjYWXKSf4aMQ==", - "dev": true - }, - "pirates": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", - "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", - "dev": true, - "requires": { - "node-modules-regexp": "^1.0.0" - } - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, - "requires": { - "find-up": "^3.0.0" - } - }, - "pluralize": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", - "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", - "dev": true - }, - "po2json": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/po2json/-/po2json-0.4.5.tgz", - "integrity": "sha1-R7spUtoy1Yob4vJWpZjuvAt0URg=", - "dev": true, - "requires": { - "gettext-parser": "1.1.0", - "nomnom": "1.8.1" - } - }, - "popper.js": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", - "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", - "dev": true - }, - "portscanner": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/portscanner/-/portscanner-1.2.0.tgz", - "integrity": "sha1-sUu9olfRTDEPqcwJaCrwLUCWGAI=", - "dev": true, - "requires": { - "async": "1.5.2" - } - }, - "posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", - "dev": true - }, - "postcss": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.6.tgz", - "integrity": "sha512-Nq/rNjnHFcKgCDDZYO0lNsl6YWe6U7tTy+ESN+PnLxebL8uBtYX59HZqvrj7YLK5UCyll2hqDsJOo3ndzEW8Ug==", - "dev": true, - "requires": { - "chalk": "^2.4.1", - "source-map": "^0.6.1", - "supports-color": "^5.5.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", - "dev": true - }, - "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", - "dev": true - }, - "private": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", - "dev": true - }, - "probe-image-size": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/probe-image-size/-/probe-image-size-4.0.0.tgz", - "integrity": "sha512-nm7RvWUxps+2+jZKNLkd04mNapXNariS6G5WIEVzvAqjx7EUuKcY1Dp3e6oUK7GLwzJ+3gbSbPLFAASHFQrPcQ==", - "dev": true, - "requires": { - "any-promise": "^1.3.0", - "deepmerge": "^2.0.1", - "inherits": "^2.0.3", - "next-tick": "^1.0.0", - "request": "^2.83.0", - "stream-parser": "~0.3.1" - } - }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true - }, - "promise": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", - "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", - "dev": true, - "requires": { - "asap": "~2.0.3" - } - }, - "promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", - "dev": true - }, - "promise.any": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/promise.any/-/promise.any-0.1.1.tgz", - "integrity": "sha1-Fg+JisPHW1y7cw/yOgyi8XQHvzo=", - "dev": true - }, - "proxy-addr": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", - "integrity": "sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==", - "requires": { - "forwarded": "~0.1.2", - "ipaddr.js": "1.9.1" - } - }, - "proxy-agent": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-2.3.1.tgz", - "integrity": "sha512-CNKuhC1jVtm8KJYFTS2ZRO71VCBx3QSA92So/e6NrY6GoJonkx3Irnk4047EsCcswczwqAekRj3s8qLRGahSKg==", - "dev": true, - "requires": { - "agent-base": "^4.2.0", - "debug": "^3.1.0", - "http-proxy-agent": "^2.1.0", - "https-proxy-agent": "^2.2.1", - "lru-cache": "^4.1.2", - "pac-proxy-agent": "^2.0.1", - "proxy-from-env": "^1.0.0", - "socks-proxy-agent": "^3.0.0" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "timers-browserify": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", + "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", + "dev": true, + "requires": { + "setimmediate": "^1.0.4" + } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "proxy-from-env": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", - "dev": true - }, - "prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", - "dev": true - }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", - "dev": true - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, - "pug": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pug/-/pug-2.0.4.tgz", - "integrity": "sha512-XhoaDlvi6NIzL49nu094R2NA6P37ijtgMDuWE+ofekDChvfKnzFal60bhSdiy8y2PBO6fmz3oMEIcfpBVRUdvw==", - "dev": true, - "requires": { - "pug-code-gen": "^2.0.2", - "pug-filters": "^3.1.1", - "pug-lexer": "^4.1.0", - "pug-linker": "^3.0.6", - "pug-load": "^2.0.12", - "pug-parser": "^5.0.1", - "pug-runtime": "^2.0.5", - "pug-strip-comments": "^1.0.4" - } - }, - "pug-attrs": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-2.0.4.tgz", - "integrity": "sha512-TaZ4Z2TWUPDJcV3wjU3RtUXMrd3kM4Wzjbe3EWnSsZPsJ3LDI0F3yCnf2/W7PPFF+edUFQ0HgDL1IoxSz5K8EQ==", - "dev": true, - "requires": { - "constantinople": "^3.0.1", - "js-stringify": "^1.0.1", - "pug-runtime": "^2.0.5" - } - }, - "pug-code-gen": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-2.0.2.tgz", - "integrity": "sha512-kROFWv/AHx/9CRgoGJeRSm+4mLWchbgpRzTEn8XCiwwOy6Vh0gAClS8Vh5TEJ9DBjaP8wCjS3J6HKsEsYdvaCw==", - "dev": true, - "requires": { - "constantinople": "^3.1.2", - "doctypes": "^1.1.0", - "js-stringify": "^1.0.1", - "pug-attrs": "^2.0.4", - "pug-error": "^1.3.3", - "pug-runtime": "^2.0.5", - "void-elements": "^2.0.1", - "with": "^5.0.0" - } - }, - "pug-error": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-1.3.3.tgz", - "integrity": "sha512-qE3YhESP2mRAWMFJgKdtT5D7ckThRScXRwkfo+Erqga7dyJdY3ZquspprMCj/9sJ2ijm5hXFWQE/A3l4poMWiQ==", - "dev": true - }, - "pug-filters": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-3.1.1.tgz", - "integrity": "sha512-lFfjNyGEyVWC4BwX0WyvkoWLapI5xHSM3xZJFUhx4JM4XyyRdO8Aucc6pCygnqV2uSgJFaJWW3Ft1wCWSoQkQg==", - "dev": true, - "requires": { - "clean-css": "^4.1.11", - "constantinople": "^3.0.1", - "jstransformer": "1.0.0", - "pug-error": "^1.3.3", - "pug-walk": "^1.1.8", - "resolve": "^1.1.6", - "uglify-js": "^2.6.1" - } - }, - "pug-lexer": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-4.1.0.tgz", - "integrity": "sha512-i55yzEBtjm0mlplW4LoANq7k3S8gDdfC6+LThGEvsK4FuobcKfDAwt6V4jKPH9RtiE3a2Akfg5UpafZ1OksaPA==", - "dev": true, - "requires": { - "character-parser": "^2.1.1", - "is-expression": "^3.0.0", - "pug-error": "^1.3.3" - } - }, - "pug-linker": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-3.0.6.tgz", - "integrity": "sha512-bagfuHttfQOpANGy1Y6NJ+0mNb7dD2MswFG2ZKj22s8g0wVsojpRlqveEQHmgXXcfROB2RT6oqbPYr9EN2ZWzg==", - "dev": true, - "requires": { - "pug-error": "^1.3.3", - "pug-walk": "^1.1.8" - } - }, - "pug-load": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-2.0.12.tgz", - "integrity": "sha512-UqpgGpyyXRYgJs/X60sE6SIf8UBsmcHYKNaOccyVLEuT6OPBIMo6xMPhoJnqtB3Q3BbO4Z3Bjz5qDsUWh4rXsg==", - "dev": true, - "requires": { - "object-assign": "^4.1.0", - "pug-walk": "^1.1.8" - } - }, - "pug-parser": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-5.0.1.tgz", - "integrity": "sha512-nGHqK+w07p5/PsPIyzkTQfzlYfuqoiGjaoqHv1LjOv2ZLXmGX1O+4Vcvps+P4LhxZ3drYSljjq4b+Naid126wA==", - "dev": true, - "requires": { - "pug-error": "^1.3.3", - "token-stream": "0.0.1" - } - }, - "pug-runtime": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-2.0.5.tgz", - "integrity": "sha512-P+rXKn9un4fQY77wtpcuFyvFaBww7/91f3jHa154qU26qFAnOe6SW1CbIDcxiG5lLK9HazYrMCCuDvNgDQNptw==", - "dev": true - }, - "pug-strip-comments": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-1.0.4.tgz", - "integrity": "sha512-i5j/9CS4yFhSxHp5iKPHwigaig/VV9g+FgReLJWWHEHbvKsbqL0oP/K5ubuLco6Wu3Kan5p7u7qk8A4oLLh6vw==", - "dev": true, - "requires": { - "pug-error": "^1.3.3" - } - }, - "pug-walk": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-1.1.8.tgz", - "integrity": "sha512-GMu3M5nUL3fju4/egXwZO0XLi6fW/K3T3VTgFQ14GxNi8btlxgT5qZL//JwZFm/2Fa64J/PNS8AZeys3wiMkVA==", - "dev": true - }, - "pump": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", - "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "pumpify": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", - "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", - "dev": true, - "requires": { - "duplexify": "^3.6.0", - "inherits": "^2.0.3", - "pump": "^2.0.0" - } - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "puppeteer": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-1.20.0.tgz", - "integrity": "sha512-bt48RDBy2eIwZPrkgbcwHtb51mj2nKvHOPMaSH2IsWiv7lOG9k9zhaRzpDZafrk05ajMc3cu+lSQYYOfH2DkVQ==", - "dev": true, - "requires": { - "debug": "^4.1.0", - "extract-zip": "^1.6.6", - "https-proxy-agent": "^2.2.1", - "mime": "^2.0.3", - "progress": "^2.0.1", - "proxy-from-env": "^1.0.0", - "rimraf": "^2.6.1", - "ws": "^6.1.0" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "tiny-lr": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/tiny-lr/-/tiny-lr-1.1.1.tgz", + "integrity": "sha512-44yhA3tsaRoMOjQQ+5v5mVdqef+kH6Qze9jTpqtVufgYjYt08zyZAwNwwVBj3i1rJMnR52IxOW0LK0vBzgAkuA==", + "dev": true, + "requires": { + "body": "^5.1.0", + "debug": "^3.1.0", + "faye-websocket": "~0.10.0", + "livereload-js": "^2.3.0", + "object-assign": "^4.1.0", + "qs": "^6.4.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } }, - "mime": { - "version": "2.4.6", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", - "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==", - "dev": true + "tippy.js": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/tippy.js/-/tippy.js-2.6.0.tgz", + "integrity": "sha512-hBcy6UXK3epiFwpkycy7Pn1SSLofUmawpPnlYg5ginbXMc/3EX2ivjzHfjvr/WPEpUg71/7ssiovhxDtCWvL2A==", + "dev": true, + "requires": { + "popper.js": "^1.14.3" + } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "requires": { + "os-tmpdir": "~1.0.2" + } }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" - }, - "querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=" - }, - "querystring-es3": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", - "dev": true - }, - "quick-format-unescaped": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-3.0.3.tgz", - "integrity": "sha512-dy1yjycmn9blucmJLXOfZDx1ikZJUi6E8bBZLnhPG5gBrVhHXx2xVyqqgKBubVNEXmx51dBACMHpoMQK/N/AXQ==", - "dev": true - }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "requires": { - "safe-buffer": "^5.1.0" - } - }, - "randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "dev": true, - "requires": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" - }, - "raw-body": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", - "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", - "requires": { - "bytes": "3.1.0", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - } - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - } - }, - "react-zlib-js": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/react-zlib-js/-/react-zlib-js-1.0.5.tgz", - "integrity": "sha512-TLcPdmqhIl+ylwOwlfm1WUuI7NVvhAv3L74d1AabhjyaAbmLOROTA/Q4EQ/UMCFCOjIkVim9fT3UZOQSFk/mlA==", - "dev": true - }, - "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "dev": true, - "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - } - }, - "read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", - "dev": true, - "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - }, - "dependencies": { - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } + "to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", + "dev": true }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, - "requires": { - "pinkie-promise": "^2.0.0" - } - } - } - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - }, - "dependencies": { - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - } - }, - "readline2": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/readline2/-/readline2-1.0.1.tgz", - "integrity": "sha1-QQWWCP/BVHV7cV2ZidGZ/783LjU=", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "mute-stream": "0.0.5" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } + "to-buffer": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", + "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==", + "dev": true }, - "mute-stream": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.5.tgz", - "integrity": "sha1-j7+rsKmKJT0xhDMfno3rc3L6xsA=", - "dev": true - } - } - }, - "rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", - "dev": true, - "requires": { - "resolve": "^1.1.6" - } - }, - "recursive-readdir": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz", - "integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==", - "dev": true, - "requires": { - "minimatch": "3.0.4" - } - }, - "regenerate": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.1.tgz", - "integrity": "sha512-j2+C8+NtXQgEKWk49MMP5P/u2GhnahTtVkRIHr5R5lVRlbKvmQ+oS+A5aLKWp2ma5VkT8sh6v+v4hbH0YHR66A==", - "dev": true - }, - "regenerate-unicode-properties": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz", - "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==", - "dev": true, - "requires": { - "regenerate": "^1.4.0" - } - }, - "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==", - "dev": true - }, - "regenerator-transform": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz", - "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==", - "dev": true, - "requires": { - "@babel/runtime": "^7.8.4" - } - }, - "regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", - "dev": true, - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - } - }, - "regexp.prototype.flags": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", - "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" - } - }, - "regexpp": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-1.1.0.tgz", - "integrity": "sha512-LOPw8FpgdQF9etWMaAfG/WRthIdXJGYp4mJ2Jgn/2lpkbod9jPn0t9UqN7AxBOKNfzRbYyVfgc7Vk4t/MpnXgw==", - "dev": true - }, - "regexpu-core": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.0.tgz", - "integrity": "sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ==", - "dev": true, - "requires": { - "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^8.2.0", - "regjsgen": "^0.5.1", - "regjsparser": "^0.6.4", - "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.2.0" - } - }, - "registry-auth-token": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.4.0.tgz", - "integrity": "sha512-4LM6Fw8eBQdwMYcES4yTnn2TqIasbXuwDx3um+QRs7S55aMKCBKBxvPXl2RiUjHwuJLTyYfxSpmfSAjQpcuP+A==", - "dev": true, - "requires": { - "rc": "^1.1.6", - "safe-buffer": "^5.0.1" - } - }, - "registry-url": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", - "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", - "dev": true, - "requires": { - "rc": "^1.0.1" - } - }, - "regjsgen": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz", - "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==", - "dev": true - }, - "regjsparser": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz", - "integrity": "sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw==", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - }, - "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true - } - } - }, - "relaxed-json": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/relaxed-json/-/relaxed-json-1.0.1.tgz", - "integrity": "sha1-fI1KovCVcEzQIOMugJm8rhA/C9Q=", - "dev": true, - "requires": { - "chalk": "^1.0.0", - "commander": "^2.6.0" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "remove-trailing-separator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", - "dev": true - }, - "repeat-element": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", - "dev": true - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "dev": true - }, - "repeating": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", - "dev": true, - "requires": { - "is-finite": "^1.0.0" - } - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - }, - "dependencies": { - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true - } - } - }, - "request-promise-core": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.4.tgz", - "integrity": "sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==", - "dev": true, - "requires": { - "lodash": "^4.17.19" - } - }, - "request-promise-native": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.9.tgz", - "integrity": "sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==", - "dev": true, - "requires": { - "request-promise-core": "1.1.4", - "stealthy-require": "^1.1.1", - "tough-cookie": "^2.3.3" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-main-filename": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", - "dev": true - }, - "require-uncached": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", - "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", - "dev": true, - "requires": { - "caller-path": "^0.1.0", - "resolve-from": "^1.0.0" - } - }, - "resolve": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", - "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", - "dev": true, - "requires": { - "path-parse": "^1.0.6" - } - }, - "resolve-dir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", - "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", - "dev": true, - "requires": { - "expand-tilde": "^2.0.0", - "global-modules": "^1.0.0" - } - }, - "resolve-from": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz", - "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=", - "dev": true - }, - "resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", - "dev": true - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "dev": true, - "requires": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - } - }, - "ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", - "dev": true - }, - "right-align": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", - "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", - "dev": true, - "requires": { - "align-text": "^0.1.1" - } - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "dev": true - }, - "run-queue": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", - "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", - "dev": true, - "requires": { - "aproba": "^1.1.1" - } - }, - "rx-lite": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-3.1.2.tgz", - "integrity": "sha1-Gc5QLKVyZl87ZHsQk5+X/RYV8QI=", - "dev": true - }, - "rx-lite-aggregates": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", - "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", - "dev": true, - "requires": { - "rx-lite": "*" - } - }, - "rxjs": { - "version": "5.5.12", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz", - "integrity": "sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==", - "dev": true, - "requires": { - "symbol-observable": "1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "safe-json-parse": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/safe-json-parse/-/safe-json-parse-1.0.1.tgz", - "integrity": "sha1-PnZyPjjf3aE8mx0poeB//uSzC1c=", - "dev": true - }, - "safe-json-stringify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz", - "integrity": "sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg==", - "dev": true, - "optional": true - }, - "safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "dev": true, - "requires": { - "ret": "~0.1.10" - } - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "samsam": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/samsam/-/samsam-1.3.0.tgz", - "integrity": "sha512-1HwIYD/8UlOtFS3QO3w7ey+SdSDFE4HRNLZoZRYVQefrOY3l17epswImeB1ijgJFQJodIaHcwkp3r/myBjFVbg==", - "dev": true - }, - "sax": { - "version": "0.5.8", - "resolved": "https://registry.npmjs.org/sax/-/sax-0.5.8.tgz", - "integrity": "sha1-1HLbIo6zMcJQaw6MFVJK25OdEsE=", - "dev": true - }, - "schema-utils": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", - "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.4", - "ajv": "^6.12.2", - "ajv-keywords": "^3.4.1" - } - }, - "secure-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/secure-keys/-/secure-keys-1.0.0.tgz", - "integrity": "sha1-8MgtmKOxOah3aogIBQuCRDEIf8o=", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "semver-diff": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", - "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", - "dev": true, - "requires": { - "semver": "^5.0.3" - } - }, - "send": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", - "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", - "requires": { - "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "~1.7.2", - "mime": "1.6.0", - "ms": "2.1.1", - "on-finished": "~2.3.0", - "range-parser": "~1.2.1", - "statuses": "~1.5.0" - }, - "dependencies": { - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" - } - } - }, - "serialize-javascript": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.9.1.tgz", - "integrity": "sha512-0Vb/54WJ6k5v8sSWN09S0ora+Hnr+cX40r9F170nT+mSkaxltoE/7R3OrIdBSUv1OoiobH1QoWQbCnAO+e8J1A==", - "dev": true - }, - "serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", - "dev": true, - "requires": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "dependencies": { - "http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - } + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dev": true, + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - } - } - }, - "serve-static": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", - "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.17.1" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "set-immediate-shim": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", - "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", - "dev": true - }, - "set-value": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", - "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", - "dev": true - }, - "setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" - }, - "sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "shallow-clone": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-0.1.2.tgz", - "integrity": "sha1-WQnodLp3EG1zrEFM/sH/yofZcGA=", - "dev": true, - "requires": { - "is-extendable": "^0.1.1", - "kind-of": "^2.0.1", - "lazy-cache": "^0.2.3", - "mixin-object": "^2.0.1" - }, - "dependencies": { - "kind-of": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-2.0.1.tgz", - "integrity": "sha1-AY7HpM5+OobLkUG+UZ0kyPqpgbU=", - "dev": true, - "requires": { - "is-buffer": "^1.0.2" - } + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } }, - "lazy-cache": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-0.2.7.tgz", - "integrity": "sha1-f+3fLctu23fRHvHRF6tf/fCrG2U=", - "dev": true - } - } - }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true - }, - "shell-quote": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz", - "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=", - "dev": true, - "requires": { - "array-filter": "~0.0.0", - "array-map": "~0.0.0", - "array-reduce": "~0.0.0", - "jsonify": "~0.0.0" - } - }, - "shelljs": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.3.tgz", - "integrity": "sha512-fc0BKlAWiLpwZljmOvAOTE/gXawtCoNrP5oaY7KIaQbbyHeQVg01pSEuEGvGh3HEdBU4baCD7wQBwADmM/7f7A==", - "dev": true, - "requires": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" - } - }, - "shellwords": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", - "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", - "dev": true - }, - "sign-addon": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/sign-addon/-/sign-addon-0.3.1.tgz", - "integrity": "sha512-feaoG7+8IXr9SymOEd8VTZCSlVZArWcBDZ33IIdfXlU5NWWzXdCxCjPDqAkLQplFa7RRZr1S4lSmgMPn80Ze1A==", - "dev": true, - "requires": { - "babel-polyfill": "6.16.0", - "deepcopy": "0.6.3", - "es6-error": "4.0.0", - "es6-promisify": "5.0.0", - "jsonwebtoken": "8.2.1", - "mz": "2.5.0", - "request": "2.87.0", - "source-map-support": "0.4.6", - "stream-to-promise": "2.2.0", - "when": "3.7.7" - }, - "dependencies": { - "ajv": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", - "dev": true, - "requires": { - "co": "^4.6.0", - "fast-deep-equal": "^1.0.0", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.3.0" - } + "toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" }, - "babel-polyfill": { - "version": "6.16.0", - "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.16.0.tgz", - "integrity": "sha1-LUUCHfh+JqN0ttTRqcZZZNF/JCI=", - "dev": true, - "requires": { - "babel-runtime": "^6.9.1", - "core-js": "^2.4.0", - "regenerator-runtime": "^0.9.5" - } + "token-stream": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-0.0.1.tgz", + "integrity": "sha1-zu78cXp2xDFvEm0LnbqlXX598Bo=", + "dev": true }, - "es6-error": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.0.0.tgz", - "integrity": "sha1-8JTHBB9mJZm7EnINoFnWucf/D0A=", - "dev": true + "toml": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/toml/-/toml-2.3.6.tgz", + "integrity": "sha512-gVweAectJU3ebq//Ferr2JUY4WKSDe5N+z0FvjDncLGyHmIDoxgY/2Ie4qfEIDm4IS7OA6Rmdm7pdEEdMcV/xQ==", + "dev": true }, - "fast-deep-equal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", - "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", - "dev": true + "tosource": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/tosource/-/tosource-1.0.0.tgz", + "integrity": "sha1-QtiN0RZhi88A1hBt1URvNCeQL/E=", + "dev": true }, - "har-validator": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", - "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", - "dev": true, - "requires": { - "ajv": "^5.1.0", - "har-schema": "^2.0.0" - } + "tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "requires": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + } }, - "json-schema-traverse": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", - "dev": true + "tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } }, - "mz": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/mz/-/mz-2.5.0.tgz", - "integrity": "sha1-KFkCXfA9RrV7sxcXSxlkd85kzsE=", - "dev": true, - "requires": { - "any-promise": "^1.0.0", - "object-assign": "^4.0.1", - "thenify-all": "^1.0.0" - } + "traverse": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.4.6.tgz", + "integrity": "sha1-0EsigOTHkqWBVCnve4tgxkyczDQ=", + "dev": true }, - "oauth-sign": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", - "dev": true + "trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "dev": true }, - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true + "tslib": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", + "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", + "dev": true }, - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true + "tty-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", + "dev": true }, - "regenerator-runtime": { - "version": "0.9.6", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.9.6.tgz", - "integrity": "sha1-0z65XQ0gAaS+OWWXB8UbDLcc4Ck=", - "dev": true + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } }, - "request": { - "version": "2.87.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", - "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.6.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.5", - "extend": "~3.0.1", - "forever-agent": "~0.6.1", - "form-data": "~2.3.1", - "har-validator": "~5.0.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.17", - "oauth-sign": "~0.8.2", - "performance-now": "^2.1.0", - "qs": "~6.5.1", - "safe-buffer": "^5.1.1", - "tough-cookie": "~2.3.3", - "tunnel-agent": "^0.6.0", - "uuid": "^3.1.0" - } + "tv4": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/tv4/-/tv4-1.3.0.tgz", + "integrity": "sha1-0CDIRvrdUMhVq7JeuuzGj8EPeWM=", + "dev": true }, - "source-map-support": { - "version": "0.4.6", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.6.tgz", - "integrity": "sha1-MlUqpktFg5KoXqs7C17mFScWeus=", - "dev": true, - "requires": { - "source-map": "^0.5.3" - } + "tv4-formats": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/tv4-formats/-/tv4-formats-3.0.3.tgz", + "integrity": "sha1-a3l43S3IqjnQrCWU3dtvbAy/2SE=", + "dev": true, + "requires": { + "moment": "^2.10.6", + "validator": "^8.2.0" + } }, - "tough-cookie": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", - "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", - "dev": true, - "requires": { - "punycode": "^1.4.1" - } - } - } - }, - "signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", - "dev": true - }, - "sinon": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-4.5.0.tgz", - "integrity": "sha512-trdx+mB0VBBgoYucy6a9L7/jfQOmvGeaKZT4OOJ+lPAtI8623xyGr8wLiE4eojzBS8G9yXbhx42GHUOVLr4X2w==", - "dev": true, - "requires": { - "@sinonjs/formatio": "^2.0.0", - "diff": "^3.1.0", - "lodash.get": "^4.4.2", - "lolex": "^2.2.0", - "nise": "^1.2.0", - "supports-color": "^5.1.0", - "type-detect": "^4.0.5" - } - }, - "sinon-chai": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-2.14.0.tgz", - "integrity": "sha512-9stIF1utB0ywNHNT7RgiXbdmen8QDCRsrTjw+G9TgKt1Yexjiv8TOWZ6WHsTPz57Yky3DIswZvEqX8fpuHNDtQ==", - "dev": true - }, - "slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", - "dev": true - }, - "slice-ansi": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", - "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0" - } - }, - "smart-buffer": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-1.1.15.tgz", - "integrity": "sha1-fxFLW2X6s+KjWqd1uxLw0cZJvxY=", - "dev": true - }, - "snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "dev": true, - "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "dev": true, - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } + "type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==", + "dev": true }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2" + } }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } + "type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", - "dev": true, - "requires": { - "kind-of": "^3.2.0" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "snyk": { - "version": "1.110.2", - "resolved": "https://registry.npmjs.org/snyk/-/snyk-1.110.2.tgz", - "integrity": "sha512-SQE4sudrscd48EoRJqy5h5S6c8YBiOw0r0Se3rfg1l6ElJGgCB9je6XEzfe+UmfES06D7ueFYepiQPxTwH4Qww==", - "dev": true, - "requires": { - "abbrev": "^1.1.1", - "ansi-escapes": "^3.1.0", - "chalk": "^2.4.1", - "configstore": "^3.1.2", - "debug": "^3.1.0", - "hasbin": "^1.2.3", - "inquirer": "^3.0.0", - "lodash": "^4.17.5", - "needle": "^2.2.4", - "opn": "^5.2.0", - "os-name": "^2.0.1", - "proxy-agent": "^2.0.0", - "proxy-from-env": "^1.0.0", - "recursive-readdir": "^2.2.2", - "semver": "^5.5.0", - "snyk-config": "2.2.0", - "snyk-docker-plugin": "1.12.3", - "snyk-go-plugin": "1.6.0", - "snyk-gradle-plugin": "2.1.1", - "snyk-module": "1.9.1", - "snyk-mvn-plugin": "2.0.0", - "snyk-nodejs-lockfile-parser": "1.7.1", - "snyk-nuget-plugin": "1.6.5", - "snyk-php-plugin": "1.5.1", - "snyk-policy": "1.13.1", - "snyk-python-plugin": "1.9.0", - "snyk-resolve": "1.0.1", - "snyk-resolve-deps": "4.0.2", - "snyk-sbt-plugin": "2.0.0", - "snyk-tree": "^1.0.0", - "snyk-try-require": "1.3.1", - "source-map-support": "^0.5.9", - "tempfile": "^2.0.0", - "then-fs": "^2.0.0", - "undefsafe": "^2.0.0", - "uuid": "^3.2.1" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true + "type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } }, - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true }, - "inquirer": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", - "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", - "dev": true, - "requires": { - "ansi-escapes": "^3.0.0", - "chalk": "^2.0.0", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^2.0.4", - "figures": "^2.0.0", - "lodash": "^4.3.0", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rx-lite": "^4.0.8", - "rx-lite-aggregates": "^4.0.8", - "string-width": "^2.1.0", - "strip-ansi": "^4.0.0", - "through": "^2.3.6" - } + "uc.micro": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", + "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==", + "dev": true }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "uglify-js": { + "version": "2.8.29", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", + "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", + "dev": true, + "requires": { + "source-map": "~0.5.1", + "uglify-to-browserify": "~1.0.0", + "yargs": "~3.10.0" + } }, - "opn": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", - "integrity": "sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==", - "dev": true, - "requires": { - "is-wsl": "^1.1.0" - } + "uglify-to-browserify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", + "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", + "dev": true, + "optional": true }, - "rx-lite": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", - "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", - "dev": true + "uglifyjs-webpack-plugin": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.3.0.tgz", + "integrity": "sha512-ovHIch0AMlxjD/97j9AYovZxG5wnHOPkL7T1GKochBADp/Zwc44pEWNqpKl1Loupp1WhFg7SlYmHZRUfdAacgw==", + "dev": true, + "requires": { + "cacache": "^10.0.4", + "find-cache-dir": "^1.0.0", + "schema-utils": "^0.4.5", + "serialize-javascript": "^1.4.0", + "source-map": "^0.6.1", + "uglify-es": "^3.3.4", + "webpack-sources": "^1.1.0", + "worker-farm": "^1.5.2" + }, + "dependencies": { + "commander": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", + "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==", + "dev": true + }, + "find-cache-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", + "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^2.0.0" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "requires": { + "find-up": "^2.1.0" + } + }, + "schema-utils": { + "version": "0.4.7", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", + "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "uglify-es": { + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", + "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "dev": true, + "requires": { + "commander": "~2.13.0", + "source-map": "~0.6.1" + } + } + } }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "snyk-config": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/snyk-config/-/snyk-config-2.2.0.tgz", - "integrity": "sha512-mq0wbP/AgjcmRq5i5jg2akVVV3iSYUPTowZwKn7DChRLDL8ySOzWAwan+ImXiyNbrWo87FNI/15O6MpOnTxOIg==", - "dev": true, - "requires": { - "debug": "^3.1.0", - "lodash": "^4.17.5", - "nconf": "^0.10.0" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "unc-path-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", + "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=", + "dev": true }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "snyk-docker-plugin": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-1.12.3.tgz", - "integrity": "sha512-ZbvaFCPCd0wxhqxjzU/iyf39tKlq2nvI9nPW32uZV3RGdHrkQH55BzCtBCF9d0dapxX+PKgae/4u2BKNw8hd9Q==", - "dev": true, - "requires": { - "debug": "^3", - "dockerfile-ast": "0.0.12", - "tslib": "^1" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "undefsafe": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.3.tgz", + "integrity": "sha512-nrXZwwXrD/T/JXeygJqdCO6NZZ1L66HrxM/Z7mIq2oPanoN0F1nLx3lwJMu6AwJY69hdixaFQOuoYsMjE5/C2A==", + "dev": true, + "requires": { + "debug": "^2.2.0" + } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "snyk-go-plugin": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/snyk-go-plugin/-/snyk-go-plugin-1.6.0.tgz", - "integrity": "sha512-E6aYw7XAXSs2wJR3fU+vGQ1lVyjAw8PHIQYQwBwMkTHByhJIWPcu6Hy/jT5LcjJHlhYXlpOuk53HeLVK+kcXrQ==", - "dev": true, - "requires": { - "graphlib": "^2.1.1", - "tmp": "0.0.33", - "toml": "^2.3.2" - } - }, - "snyk-gradle-plugin": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snyk-gradle-plugin/-/snyk-gradle-plugin-2.1.1.tgz", - "integrity": "sha512-aFeVC5y3XkJ5BxknHhtYo76as3xJbzSQlXACGZrQZGQ/w/UhNdM8VI1QB6Eq4uEzexleB/hcJwYxNmhI2CNCeA==", - "dev": true, - "requires": { - "clone-deep": "^0.3.0" - } - }, - "snyk-module": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/snyk-module/-/snyk-module-1.9.1.tgz", - "integrity": "sha512-A+CCyBSa4IKok5uEhqT+hV/35RO6APFNLqk9DRRHg7xW2/j//nPX8wTSZUPF8QeRNEk/sX+6df7M1y6PBHGSHA==", - "dev": true, - "requires": { - "debug": "^3.1.0", - "hosted-git-info": "^2.7.1" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "underscore": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", + "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=", + "dev": true }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "snyk-mvn-plugin": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/snyk-mvn-plugin/-/snyk-mvn-plugin-2.0.0.tgz", - "integrity": "sha512-9jAhZhv+7YcqtoQYCYlgMoxK+dWBKlk+wkX27Ebg3vNddNop9q5jZitRXTjsXwfSUZHRt+Ptw1f8vei9kjzZVg==", - "dev": true - }, - "snyk-nodejs-lockfile-parser": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.7.1.tgz", - "integrity": "sha512-0gHELqMhzUxb/t3Tg6d6G9LTDioOXCrEMt9aetOeV8wD/ZRL5VFNjwcdrm8qILLqzDFaFjFIyMc66c0OL4zFAQ==", - "dev": true, - "requires": { - "@yarnpkg/lockfile": "^1.0.2", - "graphlib": "^2.1.5", - "lodash": "4.17.10", - "source-map-support": "^0.5.7", - "tslib": "^1.9.3", - "uuid": "^3.3.2" - }, - "dependencies": { - "lodash": { - "version": "4.17.10", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", - "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", - "dev": true - } - } - }, - "snyk-nuget-plugin": { - "version": "1.6.5", - "resolved": "https://registry.npmjs.org/snyk-nuget-plugin/-/snyk-nuget-plugin-1.6.5.tgz", - "integrity": "sha512-3qIndzkxCxiaGvAwMkqChbChGdwhNePPyfi0WjhC/nJGwecqU3Fb/NeTW7lgyT+xoq/dFnzW0DgBJ4+AyNA2gA==", - "dev": true, - "requires": { - "debug": "^3.1.0", - "jszip": "^3.1.5", - "lodash": "^4.17.10", - "xml2js": "^0.4.17" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "underscore.string": { + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.5.tgz", + "integrity": "sha512-g+dpmgn+XBneLmXXo+sGlW5xQEt4ErkS3mgeN2GFbremYeMBSJKr9Wf2KJplQVaiPY/f7FN6atosWYNm9ovrYg==", + "dev": true, + "requires": { + "sprintf-js": "^1.0.3", + "util-deprecate": "^1.0.2" + } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "snyk-php-plugin": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/snyk-php-plugin/-/snyk-php-plugin-1.5.1.tgz", - "integrity": "sha512-g5QSHBsRJ2O4cNxKC4zlWwnQYiSgQ77Y6QgGmo3ihPX3VLZrc1amaZIpPsNe1jwXirnGj2rvR5Xw+jDjbzvHFw==", - "dev": true, - "requires": { - "debug": "^3.1.0", - "lodash": "^4.17.5", - "path": "0.12.7" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "unicode-canonical-property-names-ecmascript": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", + "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", + "dev": true }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "snyk-policy": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/snyk-policy/-/snyk-policy-1.13.1.tgz", - "integrity": "sha512-l9evS3Yk70xyvajjg+I6Ij7fr7gxpVRMZl0J1xNpWps/IVu4DSGih3aMmXi47VJozr4A/eFyj7R1lIr2GhqJCA==", - "dev": true, - "requires": { - "debug": "^3.1.0", - "email-validator": "^2.0.4", - "js-yaml": "^3.12.0", - "lodash.clonedeep": "^4.5.0", - "semver": "^5.6.0", - "snyk-module": "^1.9.1", - "snyk-resolve": "^1.0.1", - "snyk-try-require": "^1.3.1", - "then-fs": "^2.0.0" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "unicode-match-property-ecmascript": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", + "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", + "dev": true, + "requires": { + "unicode-canonical-property-names-ecmascript": "^1.0.4", + "unicode-property-aliases-ecmascript": "^1.0.4" + } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "snyk-python-plugin": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/snyk-python-plugin/-/snyk-python-plugin-1.9.0.tgz", - "integrity": "sha512-zlyOHoCpmyVym9AwkboeepzEGrY3gHsM7eWP/nJ85TgCnQO5H5orKm3RL57PNbWRY+BnDmoQQ+udQgjym2+3sg==", - "dev": true, - "requires": { - "tmp": "0.0.33" - } - }, - "snyk-resolve": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/snyk-resolve/-/snyk-resolve-1.0.1.tgz", - "integrity": "sha512-7+i+LLhtBo1Pkth01xv+RYJU8a67zmJ8WFFPvSxyCjdlKIcsps4hPQFebhz+0gC5rMemlaeIV6cqwqUf9PEDpw==", - "dev": true, - "requires": { - "debug": "^3.1.0", - "then-fs": "^2.0.0" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "unicode-match-property-value-ecmascript": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", + "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==", + "dev": true }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "snyk-resolve-deps": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/snyk-resolve-deps/-/snyk-resolve-deps-4.0.2.tgz", - "integrity": "sha512-nlw62wiWhGOTw3BD3jVIwrUkRR4iNxEkkO4Y/PWs8BsUWseGu1H6QgLesFXJb3qx7ANJ5UbUCJMgV+eL0Lf9cA==", - "dev": true, - "requires": { - "ansicolors": "^0.3.2", - "debug": "^3.2.5", - "lodash.assign": "^4.2.0", - "lodash.assignin": "^4.2.0", - "lodash.clone": "^4.5.0", - "lodash.flatten": "^4.4.0", - "lodash.get": "^4.4.2", - "lodash.set": "^4.3.2", - "lru-cache": "^4.0.0", - "semver": "^5.5.1", - "snyk-module": "^1.6.0", - "snyk-resolve": "^1.0.0", - "snyk-tree": "^1.0.0", - "snyk-try-require": "^1.1.1", - "then-fs": "^2.0.0" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "unicode-property-aliases-ecmascript": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", + "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", + "dev": true }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "snyk-sbt-plugin": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/snyk-sbt-plugin/-/snyk-sbt-plugin-2.0.0.tgz", - "integrity": "sha512-bOUqsQ1Lysnwfnvf4QQIBfC0M0ZVuhlshTKd7pNwgAJ41YEPJNrPEpzOePl/HfKtwilEEwHh5YHvjYGegEKx0A==", - "dev": true - }, - "snyk-tree": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/snyk-tree/-/snyk-tree-1.0.0.tgz", - "integrity": "sha1-D7cxdtvzLngvGRAClBYESPkRHMg=", - "dev": true, - "requires": { - "archy": "^1.0.0" - } - }, - "snyk-try-require": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/snyk-try-require/-/snyk-try-require-1.3.1.tgz", - "integrity": "sha1-bgJvkuZK9/zM6h7lPVJIQeQYohI=", - "dev": true, - "requires": { - "debug": "^3.1.0", - "lodash.clonedeep": "^4.3.0", - "lru-cache": "^4.0.0", - "then-fs": "^2.0.0" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "socks": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/socks/-/socks-1.1.10.tgz", - "integrity": "sha1-W4t/x8jzQcU+0FbpKbe/Tei6e1o=", - "dev": true, - "requires": { - "ip": "^1.1.4", - "smart-buffer": "^1.0.13" - } - }, - "socks-proxy-agent": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-3.0.1.tgz", - "integrity": "sha512-ZwEDymm204mTzvdqyUqOdovVr2YRd2NYskrYrF2LXyZ9qDiMAoFESGK8CRphiO7rtbo2Y757k2Nia3x2hGtalA==", - "dev": true, - "requires": { - "agent-base": "^4.1.0", - "socks": "^1.1.10" - } - }, - "sonic-boom": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-0.6.3.tgz", - "integrity": "sha512-TMhj6kDJk9LLzCTTL8+HPCfFn4MwkE4P6k2Up89Rz949+DSRw90V62upRKC99rJEOmu4E9ljH5Otu2JSRmx+bg==", - "dev": true, - "requires": { - "flatstr": "^1.0.8" - } - }, - "source-list-map": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", - "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "source-map-resolve": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", - "dev": true, - "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, - "source-map-support": { - "version": "0.5.19", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", - "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "source-map-url": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", - "dev": true - }, - "spawn-sync": { - "version": "1.0.15", - "resolved": "https://registry.npmjs.org/spawn-sync/-/spawn-sync-1.0.15.tgz", - "integrity": "sha1-sAeZVX63+wyDdsKdROih6mfldHY=", - "dev": true, - "requires": { - "concat-stream": "^1.4.7", - "os-shim": "^0.1.2" - } - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", - "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", - "dev": true - }, - "split": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/split/-/split-0.3.3.tgz", - "integrity": "sha1-zQ7qXmOiEd//frDwkcQTPi0N0o8=", - "dev": true, - "requires": { - "through": "2" - } - }, - "split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "dev": true, - "requires": { - "extend-shallow": "^3.0.0" - } - }, - "sprintf-js": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", - "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", - "dev": true - }, - "sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "ssri": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-5.3.0.tgz", - "integrity": "sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ==", - "dev": true, - "requires": { - "safe-buffer": "^5.1.1" - } - }, - "static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "dev": true, - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" - }, - "stealthy-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", - "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", - "dev": true - }, - "stream-browserify": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", - "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", - "dev": true, - "requires": { - "inherits": "~2.0.1", - "readable-stream": "^2.0.2" - } - }, - "stream-each": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", - "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "stream-shift": "^1.0.0" - } - }, - "stream-http": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", - "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", - "dev": true, - "requires": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.3.6", - "to-arraybuffer": "^1.0.0", - "xtend": "^4.0.0" - } - }, - "stream-parser": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/stream-parser/-/stream-parser-0.3.1.tgz", - "integrity": "sha1-FhhUhpRCACGhGC/wrxkRwSl2F3M=", - "dev": true, - "requires": { - "debug": "2" - } - }, - "stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", - "dev": true - }, - "stream-to-array": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/stream-to-array/-/stream-to-array-2.3.0.tgz", - "integrity": "sha1-u/azn19D7DC8cbq8s3VXrOzzQ1M=", - "dev": true, - "requires": { - "any-promise": "^1.1.0" - } - }, - "stream-to-promise": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/stream-to-promise/-/stream-to-promise-2.2.0.tgz", - "integrity": "sha1-se2y4cjLESidG1A8CNPyrvUeZQ8=", - "dev": true, - "requires": { - "any-promise": "~1.3.0", - "end-of-stream": "~1.1.0", - "stream-to-array": "~2.3.0" - }, - "dependencies": { - "end-of-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.1.0.tgz", - "integrity": "sha1-6TUyWLqpEIll78QcsO+K3i88+wc=", - "dev": true, - "requires": { - "once": "~1.3.0" - } + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "requires": { + "unique-slug": "^2.0.0" + } }, - "once": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", - "integrity": "sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA=", - "dev": true, - "requires": { - "wrappy": "1" - } - } - } - }, - "string-template": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz", - "integrity": "sha1-QpMuWYo1LQH8IuwzZ9nYTuxsmt0=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true + "unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4" + } }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "string.prototype.matchall": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-2.0.0.tgz", - "integrity": "sha512-WoZ+B2ypng1dp4iFLF2kmZlwwlE19gmjgKuhL1FJfDgCREWb3ye3SDVHSzLH6bxfnvYmkCxbzkmWcQZHA4P//Q==", - "dev": true, - "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.10.0", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "regexp.prototype.flags": "^1.2.0" - } - }, - "string.prototype.trimend": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", - "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" - } - }, - "string.prototype.trimstart": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", - "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" - } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", - "dev": true - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - }, - "strip-bom-buf": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-1.0.0.tgz", - "integrity": "sha1-HLRar1dTD0yvhsf3UXnSyaUd1XI=", - "dev": true, - "requires": { - "is-utf8": "^0.2.1" - } - }, - "strip-bom-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-3.0.0.tgz", - "integrity": "sha1-lWvMXYRDD2klapDtgjdlzYWOFZw=", - "dev": true, - "requires": { - "first-chunk-stream": "^2.0.0", - "strip-bom-buf": "^1.0.0" - } - }, - "strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "dev": true - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - }, - "stylus": { - "version": "0.54.8", - "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.8.tgz", - "integrity": "sha512-vr54Or4BZ7pJafo2mpf0ZcwA74rpuYCZbxrHBsH8kbcXOwSfvBFwsRfpGO5OD5fhG5HDCFW737PKaawI7OqEAg==", - "dev": true, - "requires": { - "css-parse": "~2.0.0", - "debug": "~3.1.0", - "glob": "^7.1.6", - "mkdirp": "~1.0.4", - "safer-buffer": "^2.1.2", - "sax": "~1.2.4", - "semver": "^6.3.0", - "source-map": "^0.7.3" - }, - "dependencies": { - "css-parse": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-2.0.0.tgz", - "integrity": "sha1-pGjuZnwW2BzPBcWMONKpfHgNv9Q=", - "dev": true, - "requires": { - "css": "^2.0.0" - } + "unique-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", + "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", + "dev": true, + "requires": { + "crypto-random-string": "^1.0.0" + } }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } + "universal-user-agent": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", + "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==" }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dev": true, + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dev": true, + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "dev": true + } + } }, - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true - } - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "symbol-observable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", - "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=", - "dev": true - }, - "table": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/table/-/table-4.0.3.tgz", - "integrity": "sha512-S7rnFITmBH1EnyKcvxBh1LjYeQMmnZtCXSEbHcH6S0NoKit24ZuFO/T1vDcLdYsLQkM188PVVhQmzKIuThNkKg==", - "dev": true, - "requires": { - "ajv": "^6.0.1", - "ajv-keywords": "^3.0.0", - "chalk": "^2.1.0", - "lodash": "^4.17.4", - "slice-ansi": "1.0.0", - "string-width": "^2.1.1" - } - }, - "tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true - }, - "tar-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", - "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", - "dev": true, - "requires": { - "bl": "^1.0.0", - "buffer-alloc": "^1.2.0", - "end-of-stream": "^1.0.0", - "fs-constants": "^1.0.0", - "readable-stream": "^2.3.0", - "to-buffer": "^1.1.1", - "xtend": "^4.0.0" - } - }, - "temp-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", - "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", - "dev": true - }, - "tempfile": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-2.0.0.tgz", - "integrity": "sha1-awRGhWqbERTRhW/8vlCczLCXcmU=", - "dev": true, - "requires": { - "temp-dir": "^1.0.0", - "uuid": "^3.0.1" - } - }, - "term-size": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", - "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", - "dev": true, - "requires": { - "execa": "^0.7.0" - }, - "dependencies": { - "cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } + "unzip-response": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", + "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", + "dev": true + }, + "upath": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.0.tgz", + "integrity": "sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==", + "dev": true + }, + "update-notifier": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.3.0.tgz", + "integrity": "sha1-TognpruRUUCrCTVZ1wFOPruDdFE=", + "dev": true, + "requires": { + "boxen": "^1.2.1", + "chalk": "^2.0.1", + "configstore": "^3.0.0", + "import-lazy": "^2.1.0", + "is-installed-globally": "^0.1.0", + "is-npm": "^1.0.0", + "latest-version": "^3.0.0", + "semver-diff": "^2.0.0", + "xdg-basedir": "^3.0.0" + } + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "dev": true + }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dev": true, + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + } + } }, - "execa": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", - "dev": true, - "requires": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - } - } - }, - "terser": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", - "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", - "dev": true, - "requires": { - "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "terser-webpack-plugin": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.4.tgz", - "integrity": "sha512-U4mACBHIegmfoEe5fdongHESNJWqsGU+W0S/9+BmYGVQDw1+c2Ow05TpMhxjPK1sRb7cuYq1BPl1e5YHJMTCqA==", - "dev": true, - "requires": { - "cacache": "^12.0.2", - "find-cache-dir": "^2.1.0", - "is-wsl": "^1.1.0", - "schema-utils": "^1.0.0", - "serialize-javascript": "^3.1.0", - "source-map": "^0.6.1", - "terser": "^4.1.2", - "webpack-sources": "^1.4.0", - "worker-farm": "^1.7.0" - }, - "dependencies": { - "cacache": { - "version": "12.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", - "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", - "dev": true, - "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", - "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" - } + "url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "dev": true, + "requires": { + "prepend-http": "^1.0.1" + } }, - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } + "use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true }, - "mississippi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", - "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", - "dev": true, - "requires": { - "concat-stream": "^1.5.0", - "duplexify": "^3.4.2", - "end-of-stream": "^1.1.0", - "flush-write-stream": "^1.0.0", - "from2": "^2.1.0", - "parallel-transform": "^1.1.0", - "pump": "^3.0.0", - "pumpify": "^1.3.3", - "stream-each": "^1.1.0", - "through2": "^2.0.0" - } + "user-home": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/user-home/-/user-home-2.0.0.tgz", + "integrity": "sha1-nHC/2Babwdy/SGBODwS4tJzenp8=", + "dev": true, + "requires": { + "os-homedir": "^1.0.0" + } }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } + "util": { + "version": "0.10.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", + "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", + "dev": true, + "requires": { + "inherits": "2.0.3" + } }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true }, - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" }, - "serialize-javascript": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-3.1.0.tgz", - "integrity": "sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg==", - "dev": true, - "requires": { - "randombytes": "^2.1.0" - } + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "dev": true }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "v8flags": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.1.3.tgz", + "integrity": "sha512-amh9CCg3ZxkzQ48Mhcb8iX7xpAfYJgePHxWMQCBWECpOSqJUXgY26ncA61UTV0BkPqfhcy6mzwCIoP4ygxpW8w==", + "dev": true, + "requires": { + "homedir-polyfill": "^1.0.1" + } }, - "ssri": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", - "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1" - } + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - } - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true - }, - "then-fs": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/then-fs/-/then-fs-2.0.0.tgz", - "integrity": "sha1-cveS3Z0xcFqRrhnr/Piz+WjIHaI=", - "dev": true, - "requires": { - "promise": ">=3.2 <8" - } - }, - "thenify": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", - "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", - "dev": true, - "requires": { - "any-promise": "^1.0.0" - } - }, - "thenify-all": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", - "integrity": "sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY=", - "dev": true, - "requires": { - "thenify": ">= 3.1.0 < 4" - } - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", - "dev": true - }, - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, - "thunkify": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/thunkify/-/thunkify-2.1.2.tgz", - "integrity": "sha1-+qDp0jDFGsyVyhOjYawFyn4EVT0=", - "dev": true - }, - "timed-out": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", - "dev": true - }, - "timers-browserify": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", - "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", - "dev": true, - "requires": { - "setimmediate": "^1.0.4" - } - }, - "tiny-lr": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/tiny-lr/-/tiny-lr-1.1.1.tgz", - "integrity": "sha512-44yhA3tsaRoMOjQQ+5v5mVdqef+kH6Qze9jTpqtVufgYjYt08zyZAwNwwVBj3i1rJMnR52IxOW0LK0vBzgAkuA==", - "dev": true, - "requires": { - "body": "^5.1.0", - "debug": "^3.1.0", - "faye-websocket": "~0.10.0", - "livereload-js": "^2.3.0", - "object-assign": "^4.1.0", - "qs": "^6.4.0" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "validator": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-8.2.0.tgz", + "integrity": "sha512-Yw5wW34fSv5spzTXNkokD6S6/Oq92d8q/t14TqsS3fAiA1RYnxSFSIZ+CY3n6PGGRCq5HhJTSepQvFUS2QUDxA==", + "dev": true }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "tippy.js": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/tippy.js/-/tippy.js-2.6.0.tgz", - "integrity": "sha512-hBcy6UXK3epiFwpkycy7Pn1SSLofUmawpPnlYg5ginbXMc/3EX2ivjzHfjvr/WPEpUg71/7ssiovhxDtCWvL2A==", - "dev": true, - "requires": { - "popper.js": "^1.14.3" - } - }, - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "requires": { - "os-tmpdir": "~1.0.2" - } - }, - "to-arraybuffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", - "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", - "dev": true - }, - "to-buffer": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", - "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==", - "dev": true - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true - }, - "to-object-path": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "dev": true, - "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - }, - "toidentifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", - "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" - }, - "token-stream": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-0.0.1.tgz", - "integrity": "sha1-zu78cXp2xDFvEm0LnbqlXX598Bo=", - "dev": true - }, - "toml": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/toml/-/toml-2.3.6.tgz", - "integrity": "sha512-gVweAectJU3ebq//Ferr2JUY4WKSDe5N+z0FvjDncLGyHmIDoxgY/2Ie4qfEIDm4IS7OA6Rmdm7pdEEdMcV/xQ==", - "dev": true - }, - "tosource": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/tosource/-/tosource-1.0.0.tgz", - "integrity": "sha1-QtiN0RZhi88A1hBt1URvNCeQL/E=", - "dev": true - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tr46": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", - "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "traverse": { - "version": "0.4.6", - "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.4.6.tgz", - "integrity": "sha1-0EsigOTHkqWBVCnve4tgxkyczDQ=", - "dev": true - }, - "trim-right": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", - "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", - "dev": true - }, - "tslib": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", - "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", - "dev": true - }, - "tty-browserify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", - "dev": true - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tv4": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/tv4/-/tv4-1.3.0.tgz", - "integrity": "sha1-0CDIRvrdUMhVq7JeuuzGj8EPeWM=", - "dev": true - }, - "tv4-formats": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/tv4-formats/-/tv4-formats-3.0.3.tgz", - "integrity": "sha1-a3l43S3IqjnQrCWU3dtvbAy/2SE=", - "dev": true, - "requires": { - "moment": "^2.10.6", - "validator": "^8.2.0" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - }, - "type": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", - "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==", - "dev": true - }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2" - } - }, - "type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true - }, - "type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - } - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, - "uc.micro": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", - "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==", - "dev": true - }, - "uglify-js": { - "version": "2.8.29", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", - "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", - "dev": true, - "requires": { - "source-map": "~0.5.1", - "uglify-to-browserify": "~1.0.0", - "yargs": "~3.10.0" - } - }, - "uglify-to-browserify": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", - "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", - "dev": true, - "optional": true - }, - "uglifyjs-webpack-plugin": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.3.0.tgz", - "integrity": "sha512-ovHIch0AMlxjD/97j9AYovZxG5wnHOPkL7T1GKochBADp/Zwc44pEWNqpKl1Loupp1WhFg7SlYmHZRUfdAacgw==", - "dev": true, - "requires": { - "cacache": "^10.0.4", - "find-cache-dir": "^1.0.0", - "schema-utils": "^0.4.5", - "serialize-javascript": "^1.4.0", - "source-map": "^0.6.1", - "uglify-es": "^3.3.4", - "webpack-sources": "^1.1.0", - "worker-farm": "^1.5.2" - }, - "dependencies": { - "commander": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", - "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==", - "dev": true + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" }, - "find-cache-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", - "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^1.0.0", - "pkg-dir": "^2.0.0" - } + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } }, - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } + "vm-browserify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", + "dev": true }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } + "void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", + "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", + "dev": true }, - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } + "vscode-languageserver-types": { + "version": "3.15.1", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.15.1.tgz", + "integrity": "sha512-+a9MPUQrNGRrGU630OGbYVQ+11iOIovjCkqxajPa9w57Sd5ruK8WQNsslzpa0x/QJqC8kRc2DUxWjIFwoNm4ZQ==", + "dev": true }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } + "walkdir": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/walkdir/-/walkdir-0.0.11.tgz", + "integrity": "sha1-oW0CXrkxvQO1LzCMrtD0D86+lTI=", + "dev": true }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } + "watchpack": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.5.0.tgz", + "integrity": "sha512-RSlipNQB1u48cq0wH/BNfCu1tD/cJ8ydFIkNYhp9o+3d+8unClkIovpW5qpFPgmL9OE48wfAnlZydXByWP82AA==", + "dev": true, + "requires": { + "chokidar": "^2.0.2", + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0" + } }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true + "watchpack-chokidar2": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz", + "integrity": "sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA==", + "dev": true, + "optional": true, + "requires": { + "chokidar": "^2.1.8" + } }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true + "wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "dev": true, + "requires": { + "defaults": "^1.0.3" + } }, - "pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "dev": true, - "requires": { - "find-up": "^2.1.0" - } + "web-ext": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/web-ext/-/web-ext-2.9.3.tgz", + "integrity": "sha512-aZnlxuYOMUUBS5C8NBhhAj7T0ouJexlW5Cx5ObtOheoguG3fqXUl+KTY19L1Am/bJoyHC8otGTgew9Z0WHeTtg==", + "dev": true, + "requires": { + "@cliqz-oss/firefox-client": "0.3.1", + "@cliqz-oss/node-firefox-connect": "1.2.1", + "adbkit": "2.11.0", + "addons-linter": "1.4.1", + "babel-polyfill": "6.26.0", + "babel-runtime": "6.26.0", + "bunyan": "1.8.12", + "camelcase": "4.1.0", + "debounce": "1.1.0", + "decamelize": "2.0.0", + "es6-error": "4.1.1", + "es6-promisify": "5.0.0", + "event-to-promise": "0.8.0", + "firefox-profile": "1.2.0", + "fx-runner": "1.0.9", + "git-rev-sync": "1.9.1", + "mkdirp": "0.5.1", + "multimatch": "2.1.0", + "mz": "2.7.0", + "node-notifier": "5.2.1", + "opn": "5.3.0", + "parse-json": "4.0.0", + "regenerator-runtime": "0.11.1", + "require-uncached": "1.0.3", + "sign-addon": "0.3.1", + "source-map-support": "0.5.3", + "stream-to-promise": "2.2.0", + "strip-json-comments": "2.0.1", + "tmp": "0.0.33", + "update-notifier": "2.3.0", + "watchpack": "1.5.0", + "yargs": "6.6.0", + "zip-dir": "1.0.2" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" + } + }, + "decamelize": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", + "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", + "dev": true, + "requires": { + "xregexp": "4.0.0" + } + }, + "invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "dev": true, + "requires": { + "invert-kv": "^1.0.0" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "opn": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.3.0.tgz", + "integrity": "sha512-bYJHo/LOmoTd+pfiYhfZDnf9zekVJrY+cnS2a5F2x+w5ppvTqObojTP7WiFG+kVZs9Inw+qQ/lw7TroWwhdd2g==", + "dev": true, + "requires": { + "is-wsl": "^1.1.0" + } + }, + "os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "dev": true, + "requires": { + "lcid": "^1.0.0" + } + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "source-map-support": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.3.tgz", + "integrity": "sha512-eKkTgWYeBOQqFGXRfKabMFdnWepo51vWqEdoeikaEPFiJC7MCU5j2h4+6Q8npkZTeLGbSyecZvRxiSoWl3rh+w==", + "dev": true, + "requires": { + "source-map": "^0.6.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "which-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", + "dev": true + }, + "xregexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", + "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", + "dev": true + }, + "y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "dev": true + }, + "yargs": { + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz", + "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=", + "dev": true, + "requires": { + "camelcase": "^3.0.0", + "cliui": "^3.2.0", + "decamelize": "^1.1.1", + "get-caller-file": "^1.0.1", + "os-locale": "^1.4.0", + "read-pkg-up": "^1.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^1.0.2", + "which-module": "^1.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^4.2.0" + }, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "dev": true + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + } + } + }, + "yargs-parser": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-4.2.1.tgz", + "integrity": "sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=", + "dev": true, + "requires": { + "camelcase": "^3.0.0" + }, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "dev": true + } + } + } + } }, - "schema-utils": { - "version": "0.4.7", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", - "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-keywords": "^3.1.0" - } + "webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", + "dev": true }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "uglify-es": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", - "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", - "dev": true, - "requires": { - "commander": "~2.13.0", - "source-map": "~0.6.1" - } - } - } - }, - "unc-path-regex": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", - "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=", - "dev": true - }, - "undefsafe": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.3.tgz", - "integrity": "sha512-nrXZwwXrD/T/JXeygJqdCO6NZZ1L66HrxM/Z7mIq2oPanoN0F1nLx3lwJMu6AwJY69hdixaFQOuoYsMjE5/C2A==", - "dev": true, - "requires": { - "debug": "^2.2.0" - } - }, - "underscore": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=", - "dev": true - }, - "underscore.string": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.5.tgz", - "integrity": "sha512-g+dpmgn+XBneLmXXo+sGlW5xQEt4ErkS3mgeN2GFbremYeMBSJKr9Wf2KJplQVaiPY/f7FN6atosWYNm9ovrYg==", - "dev": true, - "requires": { - "sprintf-js": "^1.0.3", - "util-deprecate": "^1.0.2" - } - }, - "unicode-canonical-property-names-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", - "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", - "dev": true - }, - "unicode-match-property-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", - "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", - "dev": true, - "requires": { - "unicode-canonical-property-names-ecmascript": "^1.0.4", - "unicode-property-aliases-ecmascript": "^1.0.4" - } - }, - "unicode-match-property-value-ecmascript": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", - "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==", - "dev": true - }, - "unicode-property-aliases-ecmascript": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", - "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", - "dev": true - }, - "union-value": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", - "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" - } - }, - "unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, - "requires": { - "unique-slug": "^2.0.0" - } - }, - "unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4" - } - }, - "unique-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", - "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", - "dev": true, - "requires": { - "crypto-random-string": "^1.0.0" - } - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" - }, - "unset-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "dev": true, - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "dev": true, - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "requires": { - "isarray": "1.0.0" - } + "webpack": { + "version": "4.44.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.44.1.tgz", + "integrity": "sha512-4UOGAohv/VGUNQJstzEywwNxqX417FnjZgZJpJQegddzPmTvph37eBIRbRTfdySXzVtJXLJfbMN3mMYhM6GdmQ==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/wasm-edit": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "acorn": "^6.4.1", + "ajv": "^6.10.2", + "ajv-keywords": "^3.4.1", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^4.3.0", + "eslint-scope": "^4.0.3", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^2.4.0", + "loader-utils": "^1.2.3", + "memory-fs": "^0.4.1", + "micromatch": "^3.1.10", + "mkdirp": "^0.5.3", + "neo-async": "^2.6.1", + "node-libs-browser": "^2.2.1", + "schema-utils": "^1.0.0", + "tapable": "^1.1.3", + "terser-webpack-plugin": "^1.4.3", + "watchpack": "^1.7.4", + "webpack-sources": "^1.4.1" + }, + "dependencies": { + "acorn": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", + "dev": true + }, + "anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "optional": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "binary-extensions": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", + "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", + "dev": true, + "optional": true + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "optional": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "chokidar": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.1.tgz", + "integrity": "sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g==", + "dev": true, + "optional": true, + "requires": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "fsevents": "~2.1.2", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.4.0" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "optional": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "fsevents": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", + "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", + "dev": true, + "optional": true + }, + "glob-parent": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", + "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "dev": true, + "optional": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "optional": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "optional": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "optional": true + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "optional": true + }, + "readdirp": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", + "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", + "dev": true, + "optional": true, + "requires": { + "picomatch": "^2.2.1" + } + }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "optional": true, + "requires": { + "is-number": "^7.0.0" + } + }, + "watchpack": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.4.tgz", + "integrity": "sha512-aWAgTW4MoSJzZPAicljkO1hsi1oKj/RRq/OJQh2PKI2UKL04c2Bs+MBOB+BBABHTXJpf9mCwHN7ANCvYsvY2sg==", + "dev": true, + "requires": { + "chokidar": "^3.4.1", + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0", + "watchpack-chokidar2": "^2.0.0" + } + } } - } }, - "has-values": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", - "dev": true - } - } - }, - "unzip-response": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", - "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", - "dev": true - }, - "upath": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.0.tgz", - "integrity": "sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==", - "dev": true - }, - "update-notifier": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.3.0.tgz", - "integrity": "sha1-TognpruRUUCrCTVZ1wFOPruDdFE=", - "dev": true, - "requires": { - "boxen": "^1.2.1", - "chalk": "^2.0.1", - "configstore": "^3.0.0", - "import-lazy": "^2.1.0", - "is-installed-globally": "^0.1.0", - "is-npm": "^1.0.0", - "latest-version": "^3.0.0", - "semver-diff": "^2.0.0", - "xdg-basedir": "^3.0.0" - } - }, - "uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", - "dev": true - }, - "url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", - "dev": true, - "requires": { - "punycode": "1.3.2", - "querystring": "0.2.0" - }, - "dependencies": { - "punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", - "dev": true - } - } - }, - "url-parse-lax": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", - "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", - "dev": true, - "requires": { - "prepend-http": "^1.0.1" - } - }, - "use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", - "dev": true - }, - "user-home": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/user-home/-/user-home-2.0.0.tgz", - "integrity": "sha1-nHC/2Babwdy/SGBODwS4tJzenp8=", - "dev": true, - "requires": { - "os-homedir": "^1.0.0" - } - }, - "util": { - "version": "0.10.4", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", - "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", - "dev": true, - "requires": { - "inherits": "2.0.3" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - }, - "v8flags": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.1.3.tgz", - "integrity": "sha512-amh9CCg3ZxkzQ48Mhcb8iX7xpAfYJgePHxWMQCBWECpOSqJUXgY26ncA61UTV0BkPqfhcy6mzwCIoP4ygxpW8w==", - "dev": true, - "requires": { - "homedir-polyfill": "^1.0.1" - } - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validator": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/validator/-/validator-8.2.0.tgz", - "integrity": "sha512-Yw5wW34fSv5spzTXNkokD6S6/Oq92d8q/t14TqsS3fAiA1RYnxSFSIZ+CY3n6PGGRCq5HhJTSepQvFUS2QUDxA==", - "dev": true - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "vm-browserify": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", - "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", - "dev": true - }, - "void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", - "dev": true - }, - "vscode-languageserver-types": { - "version": "3.15.1", - "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.15.1.tgz", - "integrity": "sha512-+a9MPUQrNGRrGU630OGbYVQ+11iOIovjCkqxajPa9w57Sd5ruK8WQNsslzpa0x/QJqC8kRc2DUxWjIFwoNm4ZQ==", - "dev": true - }, - "walkdir": { - "version": "0.0.11", - "resolved": "https://registry.npmjs.org/walkdir/-/walkdir-0.0.11.tgz", - "integrity": "sha1-oW0CXrkxvQO1LzCMrtD0D86+lTI=", - "dev": true - }, - "watchpack": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.5.0.tgz", - "integrity": "sha512-RSlipNQB1u48cq0wH/BNfCu1tD/cJ8ydFIkNYhp9o+3d+8unClkIovpW5qpFPgmL9OE48wfAnlZydXByWP82AA==", - "dev": true, - "requires": { - "chokidar": "^2.0.2", - "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0" - } - }, - "watchpack-chokidar2": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz", - "integrity": "sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA==", - "dev": true, - "optional": true, - "requires": { - "chokidar": "^2.1.8" - } - }, - "wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", - "dev": true, - "requires": { - "defaults": "^1.0.3" - } - }, - "web-ext": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/web-ext/-/web-ext-2.9.3.tgz", - "integrity": "sha512-aZnlxuYOMUUBS5C8NBhhAj7T0ouJexlW5Cx5ObtOheoguG3fqXUl+KTY19L1Am/bJoyHC8otGTgew9Z0WHeTtg==", - "dev": true, - "requires": { - "@cliqz-oss/firefox-client": "0.3.1", - "@cliqz-oss/node-firefox-connect": "1.2.1", - "adbkit": "2.11.0", - "addons-linter": "1.4.1", - "babel-polyfill": "6.26.0", - "babel-runtime": "6.26.0", - "bunyan": "1.8.12", - "camelcase": "4.1.0", - "debounce": "1.1.0", - "decamelize": "2.0.0", - "es6-error": "4.1.1", - "es6-promisify": "5.0.0", - "event-to-promise": "0.8.0", - "firefox-profile": "1.2.0", - "fx-runner": "1.0.9", - "git-rev-sync": "1.9.1", - "mkdirp": "0.5.1", - "multimatch": "2.1.0", - "mz": "2.7.0", - "node-notifier": "5.2.1", - "opn": "5.3.0", - "parse-json": "4.0.0", - "regenerator-runtime": "0.11.1", - "require-uncached": "1.0.3", - "sign-addon": "0.3.1", - "source-map-support": "0.5.3", - "stream-to-promise": "2.2.0", - "strip-json-comments": "2.0.1", - "tmp": "0.0.33", - "update-notifier": "2.3.0", - "watchpack": "1.5.0", - "yargs": "6.6.0", - "zip-dir": "1.0.2" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true + "webpack-merge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.2.tgz", + "integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==", + "dev": true, + "requires": { + "lodash": "^4.17.15" + } }, - "cliui": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wrap-ansi": "^2.0.0" - } + "webpack-sources": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", + "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", + "dev": true, + "requires": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } }, - "decamelize": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", - "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", - "dev": true, - "requires": { - "xregexp": "4.0.0" - } + "websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "dev": true, + "requires": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + } }, - "invert-kv": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", - "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", - "dev": true + "websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", + "dev": true }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } + "whatwg-url": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.0.0.tgz", + "integrity": "sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ==", + "dev": true, + "requires": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } }, - "lcid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", - "dev": true, - "requires": { - "invert-kv": "^1.0.0" - } + "when": { + "version": "3.7.7", + "resolved": "https://registry.npmjs.org/when/-/when-3.7.7.tgz", + "integrity": "sha1-q6A/w7tzbWyIsJHQE9io5ZDYRxg=", + "dev": true }, - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, - "requires": { - "minimist": "0.0.8" - } + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true }, - "opn": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/opn/-/opn-5.3.0.tgz", - "integrity": "sha512-bYJHo/LOmoTd+pfiYhfZDnf9zekVJrY+cnS2a5F2x+w5ppvTqObojTP7WiFG+kVZs9Inw+qQ/lw7TroWwhdd2g==", - "dev": true, - "requires": { - "is-wsl": "^1.1.0" - } + "widest-line": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz", + "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==", + "dev": true, + "requires": { + "string-width": "^2.1.1" + } }, - "os-locale": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", - "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", - "dev": true, - "requires": { - "lcid": "^1.0.0" - } + "win-release": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/win-release/-/win-release-1.1.1.tgz", + "integrity": "sha1-X6VeAr58qTTt/BJmVjLoSbcuUgk=", + "dev": true, + "requires": { + "semver": "^5.0.1" + } }, - "regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", - "dev": true + "window-size": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", + "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", + "dev": true }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "winreg": { + "version": "0.0.12", + "resolved": "https://registry.npmjs.org/winreg/-/winreg-0.0.12.tgz", + "integrity": "sha1-BxBVVLoanQiXklHRKUdb/64wBrc=", + "dev": true }, - "source-map-support": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.3.tgz", - "integrity": "sha512-eKkTgWYeBOQqFGXRfKabMFdnWepo51vWqEdoeikaEPFiJC7MCU5j2h4+6Q8npkZTeLGbSyecZvRxiSoWl3rh+w==", - "dev": true, - "requires": { - "source-map": "^0.6.0" - } + "with": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/with/-/with-5.1.1.tgz", + "integrity": "sha1-+k2qktrzLE6pTtRTyB8EaGtXXf4=", + "dev": true, + "requires": { + "acorn": "^3.1.0", + "acorn-globals": "^3.0.0" + } }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } + "word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true }, - "which-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", - "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", - "dev": true + "wordwrap": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", + "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", + "dev": true }, - "xregexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", - "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", - "dev": true + "worker-farm": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", + "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", + "dev": true, + "requires": { + "errno": "~0.1.7" + } }, - "y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", - "dev": true + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + } + } }, - "yargs": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz", - "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=", - "dev": true, - "requires": { - "camelcase": "^3.0.0", - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "os-locale": "^1.4.0", - "read-pkg-up": "^1.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^1.0.2", - "which-module": "^1.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^4.2.0" - }, - "dependencies": { - "camelcase": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", - "dev": true - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - } - } + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, - "yargs-parser": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-4.2.1.tgz", - "integrity": "sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=", - "dev": true, - "requires": { - "camelcase": "^3.0.0" - }, - "dependencies": { - "camelcase": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", - "dev": true - } - } - } - } - }, - "webidl-conversions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", - "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", - "dev": true - }, - "webpack": { - "version": "4.44.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.44.1.tgz", - "integrity": "sha512-4UOGAohv/VGUNQJstzEywwNxqX417FnjZgZJpJQegddzPmTvph37eBIRbRTfdySXzVtJXLJfbMN3mMYhM6GdmQ==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-module-context": "1.9.0", - "@webassemblyjs/wasm-edit": "1.9.0", - "@webassemblyjs/wasm-parser": "1.9.0", - "acorn": "^6.4.1", - "ajv": "^6.10.2", - "ajv-keywords": "^3.4.1", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^4.3.0", - "eslint-scope": "^4.0.3", - "json-parse-better-errors": "^1.0.2", - "loader-runner": "^2.4.0", - "loader-utils": "^1.2.3", - "memory-fs": "^0.4.1", - "micromatch": "^3.1.10", - "mkdirp": "^0.5.3", - "neo-async": "^2.6.1", - "node-libs-browser": "^2.2.1", - "schema-utils": "^1.0.0", - "tapable": "^1.1.3", - "terser-webpack-plugin": "^1.4.3", - "watchpack": "^1.7.4", - "webpack-sources": "^1.4.1" - }, - "dependencies": { - "acorn": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", - "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", - "dev": true + "write": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz", + "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", + "dev": true, + "requires": { + "mkdirp": "^0.5.1" + } }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "optional": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } + "write-file-atomic": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", + "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } }, - "binary-extensions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", - "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", - "dev": true, - "optional": true + "ws": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz", + "integrity": "sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==", + "dev": true, + "requires": { + "async-limiter": "~1.0.0" + } }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "optional": true, - "requires": { - "fill-range": "^7.0.1" - } + "xdg-basedir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", + "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", + "dev": true }, - "chokidar": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.1.tgz", - "integrity": "sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g==", - "dev": true, - "optional": true, - "requires": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "fsevents": "~2.1.2", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.4.0" - } + "xhr-mock": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/xhr-mock/-/xhr-mock-2.5.1.tgz", + "integrity": "sha512-UKOjItqjFgPUwQGPmRAzNBn8eTfIhcGjBVGvKYAWxUQPQsXNGD6KEckGTiHwyaAUp9C9igQlnN1Mp79KWCg7CQ==", + "dev": true, + "requires": { + "global": "^4.3.0", + "url": "^0.11.0" + } }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "optional": true, - "requires": { - "to-regex-range": "^5.0.1" - } + "xml2js": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", + "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", + "dev": true, + "requires": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + }, + "dependencies": { + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + } + } }, - "fsevents": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", - "dev": true, - "optional": true + "xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "dev": true }, - "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", - "dev": true, - "optional": true, - "requires": { - "is-glob": "^4.0.1" - } + "xmldom": { + "version": "0.1.27", + "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.27.tgz", + "integrity": "sha1-1QH5ezvbQDr4757MIFcxh6rawOk=", + "dev": true }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "optional": true, - "requires": { - "binary-extensions": "^2.0.0" - } + "xregexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz", + "integrity": "sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM=", + "dev": true }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, - "optional": true, - "requires": { - "is-extglob": "^2.1.1" - } + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "optional": true + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "dev": true }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "optional": true + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true }, - "readdirp": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", - "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", - "dev": true, - "optional": true, - "requires": { - "picomatch": "^2.2.1" - } + "yargs": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", + "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", + "dev": true, + "requires": { + "camelcase": "^1.0.2", + "cliui": "^2.1.0", + "decamelize": "^1.0.0", + "window-size": "0.1.0" + } }, - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } + "yargs-parser": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", + "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, + "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + } + } }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "optional": true, - "requires": { - "is-number": "^7.0.0" - } + "yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", + "dev": true, + "requires": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } }, - "watchpack": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.4.tgz", - "integrity": "sha512-aWAgTW4MoSJzZPAicljkO1hsi1oKj/RRq/OJQh2PKI2UKL04c2Bs+MBOB+BBABHTXJpf9mCwHN7ANCvYsvY2sg==", - "dev": true, - "requires": { - "chokidar": "^3.4.1", - "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0", - "watchpack-chokidar2": "^2.0.0" - } - } - } - }, - "webpack-merge": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.2.tgz", - "integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==", - "dev": true, - "requires": { - "lodash": "^4.17.15" - } - }, - "webpack-sources": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", - "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", - "dev": true, - "requires": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "websocket-driver": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", - "dev": true, - "requires": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - } - }, - "websocket-extensions": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true - }, - "whatwg-url": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.0.0.tgz", - "integrity": "sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ==", - "dev": true, - "requires": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" - } - }, - "when": { - "version": "3.7.7", - "resolved": "https://registry.npmjs.org/when/-/when-3.7.7.tgz", - "integrity": "sha1-q6A/w7tzbWyIsJHQE9io5ZDYRxg=", - "dev": true - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "widest-line": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz", - "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==", - "dev": true, - "requires": { - "string-width": "^2.1.1" - } - }, - "win-release": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/win-release/-/win-release-1.1.1.tgz", - "integrity": "sha1-X6VeAr58qTTt/BJmVjLoSbcuUgk=", - "dev": true, - "requires": { - "semver": "^5.0.1" - } - }, - "window-size": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", - "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", - "dev": true - }, - "winreg": { - "version": "0.0.12", - "resolved": "https://registry.npmjs.org/winreg/-/winreg-0.0.12.tgz", - "integrity": "sha1-BxBVVLoanQiXklHRKUdb/64wBrc=", - "dev": true - }, - "with": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/with/-/with-5.1.1.tgz", - "integrity": "sha1-+k2qktrzLE6pTtRTyB8EaGtXXf4=", - "dev": true, - "requires": { - "acorn": "^3.1.0", - "acorn-globals": "^3.0.0" - } - }, - "word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true - }, - "wordwrap": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", - "dev": true - }, - "worker-farm": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", - "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", - "dev": true, - "requires": { - "errno": "~0.1.7" - } - }, - "wrap-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } + "zip-dir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/zip-dir/-/zip-dir-1.0.2.tgz", + "integrity": "sha1-JT+QeurWKiGs2HIdi4gDKyQRwFE=", + "dev": true, + "requires": { + "async": "^1.5.2", + "jszip": "^2.4.0" + }, + "dependencies": { + "jszip": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-2.6.1.tgz", + "integrity": "sha1-uI86ey5noqBIFSmCx6N1bZxIKPA=", + "dev": true, + "requires": { + "pako": "~1.0.2" + } + } + } }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "write": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz", - "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", - "dev": true, - "requires": { - "mkdirp": "^0.5.1" - } - }, - "write-file-atomic": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", - "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - } - }, - "ws": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz", - "integrity": "sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==", - "dev": true, - "requires": { - "async-limiter": "~1.0.0" - } - }, - "xdg-basedir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", - "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", - "dev": true - }, - "xhr-mock": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/xhr-mock/-/xhr-mock-2.5.1.tgz", - "integrity": "sha512-UKOjItqjFgPUwQGPmRAzNBn8eTfIhcGjBVGvKYAWxUQPQsXNGD6KEckGTiHwyaAUp9C9igQlnN1Mp79KWCg7CQ==", - "dev": true, - "requires": { - "global": "^4.3.0", - "url": "^0.11.0" - } - }, - "xml2js": { - "version": "0.4.23", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", - "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", - "dev": true, - "requires": { - "sax": ">=0.6.0", - "xmlbuilder": "~11.0.0" - }, - "dependencies": { - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - } - } - }, - "xmlbuilder": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", - "dev": true - }, - "xmldom": { - "version": "0.1.27", - "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.27.tgz", - "integrity": "sha1-1QH5ezvbQDr4757MIFcxh6rawOk=", - "dev": true - }, - "xregexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz", - "integrity": "sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM=", - "dev": true - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true - }, - "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true - }, - "yargs": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", - "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", - "dev": true, - "requires": { - "camelcase": "^1.0.2", - "cliui": "^2.1.0", - "decamelize": "^1.0.0", - "window-size": "0.1.0" - } - }, - "yargs-parser": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", - "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - } - } - }, - "yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", - "dev": true, - "requires": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, - "zip-dir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/zip-dir/-/zip-dir-1.0.2.tgz", - "integrity": "sha1-JT+QeurWKiGs2HIdi4gDKyQRwFE=", - "dev": true, - "requires": { - "async": "^1.5.2", - "jszip": "^2.4.0" - }, - "dependencies": { - "jszip": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-2.6.1.tgz", - "integrity": "sha1-uI86ey5noqBIFSmCx6N1bZxIKPA=", - "dev": true, - "requires": { - "pako": "~1.0.2" - } + "zip-stream": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-1.2.0.tgz", + "integrity": "sha1-qLxF9MG0lpnGuQGYuqyqzbzUugQ=", + "dev": true, + "requires": { + "archiver-utils": "^1.3.0", + "compress-commons": "^1.2.0", + "lodash": "^4.8.0", + "readable-stream": "^2.0.0" + } } - } - }, - "zip-stream": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-1.2.0.tgz", - "integrity": "sha1-qLxF9MG0lpnGuQGYuqyqzbzUugQ=", - "dev": true, - "requires": { - "archiver-utils": "^1.3.0", - "compress-commons": "^1.2.0", - "lodash": "^4.8.0", - "readable-stream": "^2.0.0" - } } - } } diff --git a/package.json b/package.json index 10bb47fc..3df112e2 100644 --- a/package.json +++ b/package.json @@ -6,9 +6,12 @@ "url": "https://github.com/jsonwebtoken/jsonwebtoken.github.io" }, "dependencies": { + "@octokit/rest": "^18.0.12", + "dotenv": "^8.2.0", "express": "^4.17.1", "express-sslify": "^1.2.0", "lodash.debounce": "^4.0.8", + "octokit": "^1.0.0-hello-world", "querystring": "^0.2.0" }, "devEngines": { @@ -72,8 +75,10 @@ "start": "node server.js", "test": "grunt test", "test:unit": "grunt unit-tests", - "build": "grunt build-website", - "build:extension": "grunt build-extension" + "build": "npm run build:libraries && grunt build-website", + "build:extension": "npm run build:libraries && grunt build-extension", + "build:libraries": "node libraries.js", + "grunt": "grunt build-website" }, "heroku-run-build-script": true } diff --git a/server.js b/server.js index 8bc4e4fa..b91fcbed 100644 --- a/server.js +++ b/server.js @@ -1,23 +1,32 @@ -const express = require('express'); -const enforce = require('express-sslify'); - +const express = require("express"); +const enforce = require("express-sslify"); +const languages = require("./libraries.json"); const app = express(); -if(process.env.NODE_ENV === 'production') { - console.log('Redirecting to TLS endpoint.'); - app.use(enforce.HTTPS({ - // Required for proper use under a reverse proxy (Heroku, etc.). - trustProtoHeader: true - })); +app.set("view engine", "pug"); +app.set("views", __dirname + "/views/website"); + +if (process.env.NODE_ENV === "production") { + console.log("Redirecting to TLS endpoint."); + app.use( + enforce.HTTPS({ + // Required for proper use under a reverse proxy (Heroku, etc.). + trustProtoHeader: true, + }) + ); } -app.use('/', express.static('dist/website')); +// app.use(fetchGithubStars); +app.use(express.static("dist/website")); +app.get("/", function(req, res) { + res.render("index", { test: "This is a test", languages: languages }); +}); // Fallback for the homepage JWT handbook CTA A/B experiment we ran -app.get('/home', function (req, res) { - res.redirect('/'); +app.get("/home", function(req, res) { + res.redirect("/"); }); app.listen(process.env.PORT || 3000, function() { - console.log('Started.'); -}); + console.log("Started."); +}); \ No newline at end of file diff --git a/src/website/libraries.js b/src/website/libraries.js index eeb9e3b8..05641604 100644 --- a/src/website/libraries.js +++ b/src/website/libraries.js @@ -1,88 +1,34 @@ -import { safeLocalStorageSetItem } from '../utils.js'; -import { httpGet } from '../utils.js'; -import { - starsElements, - librariesElement, - librariesSelect -} from './dom-elements.js'; +import { httpGet } from "../utils.js"; +import { librariesElement, librariesSelect } from "./dom-elements.js"; -import Isotope from 'isotope-layout'; -import log from 'loglevel'; +import Isotope from "isotope-layout"; const librariesGrid = new Isotope(librariesElement, { - layoutMode: 'fitRows', - itemSelector: 'article', - percentPosition: true, - masonry: { - columnWidth: 'article' - } + layoutMode: "fitRows", + itemSelector: "article", + percentPosition: true, + masonry: { + columnWidth: "article", + }, }); function getStarsFromUrl(url) { - return httpGet(url).then(data => { - const parsed = JSON.parse(data); - const count = parsed.stargazers_count; - - if(Number.isInteger(count)) { - return count; - } else { - throw new Error('Bad data received for stars count.'); - } - }); -} - -function insertStarCount(starElement, count) { - const span = document.createElement('span'); - span.textContent = count; - starElement.insertBefore(span, null); - starElement.style.display = 'inline'; -} - -function getStarsForGitHubRepos() { - Array.prototype.forEach.call(starsElements, element => { - const repo = element.getAttribute('data-repo'); - if (!repo) { - return; - } - - const key = `stars_v2_${repo}`; - - const now = Date.now(); - try { - const stored = JSON.parse(localStorage.getItem(key)); - const diff = now - stored.date; - // Cached for a week - const maxdiff = 7 * 24 * 60 * 60 * 1000; - if (diff < maxdiff) { - insertStarCount(element, stored.count); - return; - } - } catch (e) { - // Ignore bad data - log.warn('Bad data in stored stars count, ignoring...', e); - } - - const url = `https://api.github.com/repos/${repo}`; - getStarsFromUrl(url).then(count => { - safeLocalStorageSetItem(key, JSON.stringify({ - date: now, - count: count - })); - - insertStarCount(element, count); - }).catch(e => { - log.warn('Failed to get GitHub stars count for repository, ' + - 'is the repository URL OK? ', e); + return httpGet(url).then((data) => { + const parsed = JSON.parse(data); + const count = parsed.stargazers_count; + + if (Number.isInteger(count)) { + return count; + } else { + throw new Error("Bad data received for stars count."); + } }); - }); } export function setupLibraries() { - getStarsForGitHubRepos(); - - librariesSelect.addEventListener('change', event => { - librariesGrid.arrange({ - filter: event.target.value + librariesSelect.addEventListener("change", (event) => { + librariesGrid.arrange({ + filter: event.target.value, + }); }); - }); -} +} \ No newline at end of file diff --git a/views/website/libraries/support/get-languages.js b/views/website/libraries/support/get-languages.js index 9463d8f5..d04b7901 100644 --- a/views/website/libraries/support/get-languages.js +++ b/views/website/libraries/support/get-languages.js @@ -1,26 +1,27 @@ -const fs = require('fs'); +const fs = require("fs"); function numericCompare(a, b) { - const lhs = parseInt(a, 10); - const rhs = parseInt(b, 10); + const lhs = parseInt(a, 10); + const rhs = parseInt(b, 10); - return lhs - rhs; + return lhs - rhs; } module.exports = function getLanguages() { - let dirEntries = fs.readdirSync(`${__dirname}/../`); - dirEntries = dirEntries.filter(e => e.endsWith('.json')); - dirEntries.sort(numericCompare); + let dirEntries = fs.readdirSync(`${__dirname}/../`); + dirEntries = dirEntries.filter((e) => e.endsWith(".json")); + dirEntries.sort(numericCompare); - console.log('Found languages:\n', dirEntries); + console.log("Found languages:\n", dirEntries); - const result = []; - dirEntries.forEach(entry => { - const data = JSON.parse( - fs.readFileSync(`${__dirname}/../${entry}`).toString()); + const result = []; + dirEntries.forEach((entry) => { + const data = JSON.parse( + fs.readFileSync(`${__dirname}/../${entry}`).toString() + ); - result.push(data); - }); + result.push(data); + }); - return result; -} + return result; +}; \ No newline at end of file diff --git a/views/website/libraries/template.pug b/views/website/libraries/template.pug index 7761468e..1364f705 100644 --- a/views/website/libraries/template.pug +++ b/views/website/libraries/template.pug @@ -98,8 +98,9 @@ article(data-accordion, class=`accordion ${lang.uniqueClass}`) i.icon-budicon-333(data-toggle='tooltip', title='', data-original-title='Maintainer') | #{lib.authorName} if lib.gitHubRepoPath - span.stars(data-repo=lib.gitHubRepoPath, style='display: inline;') + span.stars( style='display: inline;') i.icon-budicon-466 + | #{lib.stars} .repository i.icon-1392070209-icon-social-github a(href=lib.repoUrl, data-metrics-lib-id=lib.repoUrl) View Repo diff --git a/views/website/token-editor.pug b/views/website/token-editor.pug index 7632a8cf..6164e089 100644 --- a/views/website/token-editor.pug +++ b/views/website/token-editor.pug @@ -2,7 +2,6 @@ section#debugger-io.debugger-jwt .container //- a(name='debugger') h1 Debugger - .jwt-playground .warning strong Warning: diff --git a/webpack.common.js b/webpack.common.js index 9903d3a7..701e5316 100644 --- a/webpack.common.js +++ b/webpack.common.js @@ -1,36 +1,38 @@ -const webpack = require('webpack'); +const webpack = require("webpack"); +const getLanguages = require("./views/website/libraries/support/get-languages.js"); module.exports = { - devtool: 'source-map', - module: { - rules: [{ - test: /\.js$/, - exclude: /(node_modules|bower_components)/, - use: { - loader: 'babel-loader', - options: { - presets: [[ - '@babel/preset-env', { - targets: { - browsers: [ - '> 0.25%', - 'not dead', - ], - android: 7, - ios: 10, - ie: 11, - }, - modules: false - } - ]] - } - } - }] - }, - plugins: [ - new webpack.ProvidePlugin({ - $: "jquery", - jQuery: "jquery" - }) - ] -}; + devtool: "source-map", + module: { + rules: [{ + test: /\.js$/, + exclude: /(node_modules|bower_components)/, + use: { + loader: "babel-loader", + options: { + presets: [ + [ + "@babel/preset-env", + { + targets: { + browsers: ["> 0.25%", "not dead"], + android: 7, + ios: 10, + ie: 11, + }, + modules: false, + }, + ], + ], + }, + }, + }, ], + }, + plugins: [ + new webpack.ProvidePlugin({ + $: "jquery", + jQuery: "jquery", + languages: getLanguages(), + }), + ], +}; \ No newline at end of file From 53aa90a844713d4dc6f59c716c14539551e81f03 Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 14 Dec 2020 12:03:05 +0100 Subject: [PATCH 302/456] Fix introductions page --- server.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/server.js b/server.js index b91fcbed..141b4b62 100644 --- a/server.js +++ b/server.js @@ -19,7 +19,11 @@ if (process.env.NODE_ENV === "production") { // app.use(fetchGithubStars); app.use(express.static("dist/website")); app.get("/", function(req, res) { - res.render("index", { test: "This is a test", languages: languages }); + res.render("index", { languages: languages }); +}); + +app.get("/introduction", function(req, res) { + res.render("introduction"); }); // Fallback for the homepage JWT handbook CTA A/B experiment we ran From 66c22a03e7bb0aed5564c85d3f37ed298cea6415 Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 14 Dec 2020 12:47:54 +0100 Subject: [PATCH 303/456] Cleanup --- Gruntfile.js | 9 +++++++++ package-lock.json | 11 ----------- package.json | 6 ++---- src/website/libraries.js | 13 ------------- webpack.common.js | 2 -- 5 files changed, 11 insertions(+), 30 deletions(-) diff --git a/Gruntfile.js b/Gruntfile.js index 43498478..3b7f261b 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -4,6 +4,7 @@ const getLanguages = require("./views/website/libraries/support/get-languages.js module.exports = (grunt) => { grunt.loadNpmTasks("grunt-contrib-copy"); grunt.loadNpmTasks("grunt-contrib-stylus"); + grunt.loadNpmTasks("grunt-contrib-pug"); grunt.loadNpmTasks("grunt-webpack"); grunt.loadNpmTasks("grunt-contrib-watch"); grunt.loadNpmTasks("grunt-contrib-clean"); @@ -117,6 +118,14 @@ module.exports = (grunt) => { }, }, + pug: { + extension: { + files: { + "dist/extension/index.html": "views/extension/index.pug", + }, + }, + }, + webpack: { websiteProd: require("./webpack.website-prod.js"), websiteDev: require("./webpack.website-dev.js"), diff --git a/package-lock.json b/package-lock.json index ae6d7133..5dcd16aa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,7 +13,6 @@ "express": "^4.17.1", "express-sslify": "^1.2.0", "lodash.debounce": "^4.0.8", - "octokit": "^1.0.0-hello-world", "querystring": "^0.2.0" }, "devDependencies": { @@ -9177,11 +9176,6 @@ "isobject": "^3.0.1" } }, - "node_modules/octokit": { - "version": "1.0.0-hello-world", - "resolved": "https://registry.npmjs.org/octokit/-/octokit-1.0.0-hello-world.tgz", - "integrity": "sha1-mX8irutd/iiB54xpQYxJKBqt+Y8=" - }, "node_modules/on-finished": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", @@ -23215,11 +23209,6 @@ "isobject": "^3.0.1" } }, - "octokit": { - "version": "1.0.0-hello-world", - "resolved": "https://registry.npmjs.org/octokit/-/octokit-1.0.0-hello-world.tgz", - "integrity": "sha1-mX8irutd/iiB54xpQYxJKBqt+Y8=" - }, "on-finished": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", diff --git a/package.json b/package.json index 3df112e2..455c6c4a 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,6 @@ "express": "^4.17.1", "express-sslify": "^1.2.0", "lodash.debounce": "^4.0.8", - "octokit": "^1.0.0-hello-world", "querystring": "^0.2.0" }, "devEngines": { @@ -77,8 +76,7 @@ "test:unit": "grunt unit-tests", "build": "npm run build:libraries && grunt build-website", "build:extension": "npm run build:libraries && grunt build-extension", - "build:libraries": "node libraries.js", - "grunt": "grunt build-website" + "build:libraries": "node libraries.js" }, "heroku-run-build-script": true -} +} \ No newline at end of file diff --git a/src/website/libraries.js b/src/website/libraries.js index 05641604..b57799f5 100644 --- a/src/website/libraries.js +++ b/src/website/libraries.js @@ -12,19 +12,6 @@ const librariesGrid = new Isotope(librariesElement, { }, }); -function getStarsFromUrl(url) { - return httpGet(url).then((data) => { - const parsed = JSON.parse(data); - const count = parsed.stargazers_count; - - if (Number.isInteger(count)) { - return count; - } else { - throw new Error("Bad data received for stars count."); - } - }); -} - export function setupLibraries() { librariesSelect.addEventListener("change", (event) => { librariesGrid.arrange({ diff --git a/webpack.common.js b/webpack.common.js index 701e5316..34aef2cb 100644 --- a/webpack.common.js +++ b/webpack.common.js @@ -1,5 +1,4 @@ const webpack = require("webpack"); -const getLanguages = require("./views/website/libraries/support/get-languages.js"); module.exports = { devtool: "source-map", @@ -32,7 +31,6 @@ module.exports = { new webpack.ProvidePlugin({ $: "jquery", jQuery: "jquery", - languages: getLanguages(), }), ], }; \ No newline at end of file From 9bf2de5febbedad79ba06e11e4b251333d6fc540 Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 14 Dec 2020 13:16:22 +0100 Subject: [PATCH 304/456] Fix pug --- libraries.js | 1 + package-lock.json | 254 ++++++++++++---------------------------------- package.json | 4 +- 3 files changed, 68 insertions(+), 191 deletions(-) diff --git a/libraries.js b/libraries.js index 6348f4e2..204a634a 100644 --- a/libraries.js +++ b/libraries.js @@ -35,6 +35,7 @@ function fetchGithubStars() { lib.stars = repo.data.stargazers_count; return repo.data.stargazers_count; }) + .catch((error) => console.log(error)) ); } }); diff --git a/package-lock.json b/package-lock.json index 5dcd16aa..07f452a2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,6 +13,7 @@ "express": "^4.17.1", "express-sslify": "^1.2.0", "lodash.debounce": "^4.0.8", + "pug": "^2.0.4", "querystring": "^0.2.0" }, "devDependencies": { @@ -53,7 +54,6 @@ "mocha": "^5.2.0", "node-jose": "^1.1.4", "promise.any": "^0.1.1", - "pug": "^2.0.3", "puppeteer": "^1.17.0", "request-promise-native": "^1.0.7", "sinon": "^4.5.0", @@ -1427,14 +1427,12 @@ "node_modules/@types/babel-types": { "version": "7.0.8", "resolved": "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.8.tgz", - "integrity": "sha512-jvu8g4LR7+p6ao30RhTREnEhHxmP4/R9D9/rOR/Kq14FztORty9SKgtOZUNZNMB9CXLxZ54EWu4dArUE8WdTsw==", - "dev": true + "integrity": "sha512-jvu8g4LR7+p6ao30RhTREnEhHxmP4/R9D9/rOR/Kq14FztORty9SKgtOZUNZNMB9CXLxZ54EWu4dArUE8WdTsw==" }, "node_modules/@types/babylon": { "version": "6.16.5", "resolved": "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.5.tgz", "integrity": "sha512-xH2e58elpj1X4ynnKp9qSnWlsRTIs6n3tgLGNfwAGHwePw0mulHQllV34n0T25uYSu1k0hRKkWXF890B1yS47w==", - "dev": true, "dependencies": { "@types/babel-types": "*" } @@ -1661,14 +1659,12 @@ "node_modules/acorn": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", - "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", - "dev": true + "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=" }, "node_modules/acorn-globals": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz", "integrity": "sha1-/YJw9x+7SZawBPqIDuXUZXOnMb8=", - "dev": true, "dependencies": { "acorn": "^4.0.4" } @@ -1676,8 +1672,7 @@ "node_modules/acorn-globals/node_modules/acorn": { "version": "4.0.13", "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", - "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", - "dev": true + "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=" }, "node_modules/acorn-jsx": { "version": "5.2.0", @@ -2010,7 +2005,6 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", - "dev": true, "dependencies": { "kind-of": "^3.0.2", "longest": "^1.0.1", @@ -2021,7 +2015,6 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, "dependencies": { "is-buffer": "^1.1.5" } @@ -2246,8 +2239,7 @@ "node_modules/asap": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", - "dev": true + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" }, "node_modules/asn1": { "version": "0.2.3", @@ -2599,7 +2591,6 @@ "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", - "dev": true, "dependencies": { "core-js": "^2.4.0", "regenerator-runtime": "^0.11.0" @@ -2608,8 +2599,7 @@ "node_modules/babel-runtime/node_modules/regenerator-runtime": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", - "dev": true + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" }, "node_modules/babel-template": { "version": "6.26.0", @@ -2651,7 +2641,6 @@ "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", - "dev": true, "dependencies": { "babel-runtime": "^6.26.0", "esutils": "^2.0.2", @@ -2662,14 +2651,12 @@ "node_modules/babel-types/node_modules/to-fast-properties": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", - "dev": true + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" }, "node_modules/babylon": { "version": "6.18.0", "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" }, "node_modules/balanced-match": { "version": "1.0.0", @@ -3214,8 +3201,7 @@ "node_modules/camelcase": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", - "dev": true + "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=" }, "node_modules/caniuse-lite": { "version": "1.0.30001111", @@ -3239,7 +3225,6 @@ "version": "0.1.3", "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", - "dev": true, "dependencies": { "align-text": "^0.1.3", "lazy-cache": "^1.0.3" @@ -3299,7 +3284,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", "integrity": "sha1-x84o821LzZdE5f/CxfzeHHMmH8A=", - "dev": true, "dependencies": { "is-regex": "^1.0.3" } @@ -3441,7 +3425,6 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz", "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==", - "dev": true, "dependencies": { "source-map": "~0.6.0" } @@ -3449,8 +3432,7 @@ "node_modules/clean-css/node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" }, "node_modules/cli-boxes": { "version": "1.0.0", @@ -3483,7 +3465,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", - "dev": true, "dependencies": { "center-align": "^0.1.1", "right-align": "^0.1.1", @@ -3696,7 +3677,6 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-3.1.2.tgz", "integrity": "sha512-yePcBqEFhLOqSBtwYOGGS1exHo/s1xjekXiinh4itpNQGCu4KA1euPh1fg07N2wMITZXQkBz75Ntdt1ctGZouw==", - "dev": true, "dependencies": { "@types/babel-types": "^7.0.0", "@types/babylon": "^6.16.2", @@ -3780,8 +3760,7 @@ "node_modules/core-js": { "version": "2.6.11", "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", - "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==", - "dev": true + "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==" }, "node_modules/core-js-compat": { "version": "3.6.5", @@ -4028,8 +4007,7 @@ "node_modules/decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" }, "node_modules/decode-uri-component": { "version": "0.2.0", @@ -4366,8 +4344,7 @@ "node_modules/doctypes": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", - "integrity": "sha1-6oCxBqh1OHdOijpKWv4pPeSJ4Kk=", - "dev": true + "integrity": "sha1-6oCxBqh1OHdOijpKWv4pPeSJ4Kk=" }, "node_modules/dom-serializer": { "version": "0.1.1", @@ -5249,8 +5226,7 @@ "node_modules/esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" }, "node_modules/etag": { "version": "1.8.1", @@ -6677,8 +6653,7 @@ "node_modules/has-symbols": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", - "dev": true + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" }, "node_modules/has-value": { "version": "1.0.0", @@ -7151,8 +7126,7 @@ "node_modules/is-buffer": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "dev": true + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" }, "node_modules/is-callable": { "version": "1.2.0", @@ -7205,7 +7179,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-3.0.0.tgz", "integrity": "sha1-Oayqa+f9HzRx3ELHQW5hwkMXrJ8=", - "dev": true, "dependencies": { "acorn": "~4.0.2", "object-assign": "^4.0.1" @@ -7214,8 +7187,7 @@ "node_modules/is-expression/node_modules/acorn": { "version": "4.0.13", "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", - "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", - "dev": true + "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=" }, "node_modules/is-extendable": { "version": "0.1.1", @@ -7336,8 +7308,7 @@ "node_modules/is-promise": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", - "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", - "dev": true + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==" }, "node_modules/is-property": { "version": "1.0.2", @@ -7355,7 +7326,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz", "integrity": "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==", - "dev": true, "dependencies": { "has-symbols": "^1.0.1" } @@ -7497,8 +7467,7 @@ "node_modules/js-stringify": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", - "integrity": "sha1-Fzb939lyTyijaCrcYjCufk6Weds=", - "dev": true + "integrity": "sha1-Fzb939lyTyijaCrcYjCufk6Weds=" }, "node_modules/js-tokens": { "version": "4.0.0", @@ -7658,7 +7627,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", "integrity": "sha1-7Yvwkh4vPx7U1cGkT2hwntJHIsM=", - "dev": true, "dependencies": { "is-promise": "^2.0.0", "promise": "^7.0.1" @@ -7730,8 +7698,7 @@ "node_modules/lazy-cache": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", - "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", - "dev": true + "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=" }, "node_modules/lazystream": { "version": "1.0.0", @@ -7904,8 +7871,7 @@ "node_modules/lodash": { "version": "4.17.19", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", - "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==", - "dev": true + "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==" }, "node_modules/lodash.assign": { "version": "4.2.0", @@ -8023,8 +7989,7 @@ "node_modules/longest": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", - "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", - "dev": true + "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=" }, "node_modules/loose-envify": { "version": "1.4.0", @@ -9070,8 +9035,7 @@ "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, "node_modules/object-copy": { "version": "0.1.0", @@ -9528,8 +9492,7 @@ "node_modules/path-parse": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", - "dev": true + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" }, "node_modules/path-root": { "version": "0.1.1", @@ -9785,7 +9748,6 @@ "version": "7.3.1", "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", - "dev": true, "dependencies": { "asap": "~2.0.3" } @@ -9890,7 +9852,6 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/pug/-/pug-2.0.4.tgz", "integrity": "sha512-XhoaDlvi6NIzL49nu094R2NA6P37ijtgMDuWE+ofekDChvfKnzFal60bhSdiy8y2PBO6fmz3oMEIcfpBVRUdvw==", - "dev": true, "dependencies": { "pug-code-gen": "^2.0.2", "pug-filters": "^3.1.1", @@ -9906,7 +9867,6 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-2.0.4.tgz", "integrity": "sha512-TaZ4Z2TWUPDJcV3wjU3RtUXMrd3kM4Wzjbe3EWnSsZPsJ3LDI0F3yCnf2/W7PPFF+edUFQ0HgDL1IoxSz5K8EQ==", - "dev": true, "dependencies": { "constantinople": "^3.0.1", "js-stringify": "^1.0.1", @@ -9917,7 +9877,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-2.0.2.tgz", "integrity": "sha512-kROFWv/AHx/9CRgoGJeRSm+4mLWchbgpRzTEn8XCiwwOy6Vh0gAClS8Vh5TEJ9DBjaP8wCjS3J6HKsEsYdvaCw==", - "dev": true, "dependencies": { "constantinople": "^3.1.2", "doctypes": "^1.1.0", @@ -9932,14 +9891,12 @@ "node_modules/pug-error": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-1.3.3.tgz", - "integrity": "sha512-qE3YhESP2mRAWMFJgKdtT5D7ckThRScXRwkfo+Erqga7dyJdY3ZquspprMCj/9sJ2ijm5hXFWQE/A3l4poMWiQ==", - "dev": true + "integrity": "sha512-qE3YhESP2mRAWMFJgKdtT5D7ckThRScXRwkfo+Erqga7dyJdY3ZquspprMCj/9sJ2ijm5hXFWQE/A3l4poMWiQ==" }, "node_modules/pug-filters": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-3.1.1.tgz", "integrity": "sha512-lFfjNyGEyVWC4BwX0WyvkoWLapI5xHSM3xZJFUhx4JM4XyyRdO8Aucc6pCygnqV2uSgJFaJWW3Ft1wCWSoQkQg==", - "dev": true, "dependencies": { "clean-css": "^4.1.11", "constantinople": "^3.0.1", @@ -9954,7 +9911,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-4.1.0.tgz", "integrity": "sha512-i55yzEBtjm0mlplW4LoANq7k3S8gDdfC6+LThGEvsK4FuobcKfDAwt6V4jKPH9RtiE3a2Akfg5UpafZ1OksaPA==", - "dev": true, "dependencies": { "character-parser": "^2.1.1", "is-expression": "^3.0.0", @@ -9965,7 +9921,6 @@ "version": "3.0.6", "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-3.0.6.tgz", "integrity": "sha512-bagfuHttfQOpANGy1Y6NJ+0mNb7dD2MswFG2ZKj22s8g0wVsojpRlqveEQHmgXXcfROB2RT6oqbPYr9EN2ZWzg==", - "dev": true, "dependencies": { "pug-error": "^1.3.3", "pug-walk": "^1.1.8" @@ -9975,7 +9930,6 @@ "version": "2.0.12", "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-2.0.12.tgz", "integrity": "sha512-UqpgGpyyXRYgJs/X60sE6SIf8UBsmcHYKNaOccyVLEuT6OPBIMo6xMPhoJnqtB3Q3BbO4Z3Bjz5qDsUWh4rXsg==", - "dev": true, "dependencies": { "object-assign": "^4.1.0", "pug-walk": "^1.1.8" @@ -9985,7 +9939,6 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-5.0.1.tgz", "integrity": "sha512-nGHqK+w07p5/PsPIyzkTQfzlYfuqoiGjaoqHv1LjOv2ZLXmGX1O+4Vcvps+P4LhxZ3drYSljjq4b+Naid126wA==", - "dev": true, "dependencies": { "pug-error": "^1.3.3", "token-stream": "0.0.1" @@ -9994,14 +9947,12 @@ "node_modules/pug-runtime": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-2.0.5.tgz", - "integrity": "sha512-P+rXKn9un4fQY77wtpcuFyvFaBww7/91f3jHa154qU26qFAnOe6SW1CbIDcxiG5lLK9HazYrMCCuDvNgDQNptw==", - "dev": true + "integrity": "sha512-P+rXKn9un4fQY77wtpcuFyvFaBww7/91f3jHa154qU26qFAnOe6SW1CbIDcxiG5lLK9HazYrMCCuDvNgDQNptw==" }, "node_modules/pug-strip-comments": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-1.0.4.tgz", "integrity": "sha512-i5j/9CS4yFhSxHp5iKPHwigaig/VV9g+FgReLJWWHEHbvKsbqL0oP/K5ubuLco6Wu3Kan5p7u7qk8A4oLLh6vw==", - "dev": true, "dependencies": { "pug-error": "^1.3.3" } @@ -10009,8 +9960,7 @@ "node_modules/pug-walk": { "version": "1.1.8", "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-1.1.8.tgz", - "integrity": "sha512-GMu3M5nUL3fju4/egXwZO0XLi6fW/K3T3VTgFQ14GxNi8btlxgT5qZL//JwZFm/2Fa64J/PNS8AZeys3wiMkVA==", - "dev": true + "integrity": "sha512-GMu3M5nUL3fju4/egXwZO0XLi6fW/K3T3VTgFQ14GxNi8btlxgT5qZL//JwZFm/2Fa64J/PNS8AZeys3wiMkVA==" }, "node_modules/pump": { "version": "2.0.1", @@ -10439,8 +10389,7 @@ "node_modules/repeat-string": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "dev": true + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" }, "node_modules/repeating": { "version": "2.0.1", @@ -10531,7 +10480,6 @@ "version": "1.17.0", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", - "dev": true, "dependencies": { "path-parse": "^1.0.6" } @@ -10578,7 +10526,6 @@ "version": "0.1.3", "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", - "dev": true, "dependencies": { "align-text": "^0.1.1" } @@ -11687,8 +11634,7 @@ "node_modules/source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" }, "node_modules/source-map-resolve": { "version": "0.5.3", @@ -12535,8 +12481,7 @@ "node_modules/token-stream": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-0.0.1.tgz", - "integrity": "sha1-zu78cXp2xDFvEm0LnbqlXX598Bo=", - "dev": true + "integrity": "sha1-zu78cXp2xDFvEm0LnbqlXX598Bo=" }, "node_modules/toml": { "version": "2.3.6", @@ -12670,7 +12615,6 @@ "version": "2.8.29", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", - "dev": true, "dependencies": { "source-map": "~0.5.1", "uglify-to-browserify": "~1.0.0", @@ -12684,7 +12628,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", - "dev": true, "optional": true }, "node_modules/uglifyjs-webpack-plugin": { @@ -13123,8 +13066,7 @@ "node_modules/void-elements": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", - "dev": true + "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=" }, "node_modules/vscode-languageserver-types": { "version": "3.15.1", @@ -13681,8 +13623,7 @@ "node_modules/window-size": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", - "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", - "dev": true + "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=" }, "node_modules/winreg": { "version": "0.0.12", @@ -13694,7 +13635,6 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/with/-/with-5.1.1.tgz", "integrity": "sha1-+k2qktrzLE6pTtRTyB8EaGtXXf4=", - "dev": true, "dependencies": { "acorn": "^3.1.0", "acorn-globals": "^3.0.0" @@ -13709,8 +13649,7 @@ "node_modules/wordwrap": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", - "dev": true + "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=" }, "node_modules/worker-farm": { "version": "1.7.0", @@ -13857,7 +13796,6 @@ "version": "3.10.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", - "dev": true, "dependencies": { "camelcase": "^1.0.2", "cliui": "^2.1.0", @@ -15282,14 +15220,12 @@ "@types/babel-types": { "version": "7.0.8", "resolved": "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.8.tgz", - "integrity": "sha512-jvu8g4LR7+p6ao30RhTREnEhHxmP4/R9D9/rOR/Kq14FztORty9SKgtOZUNZNMB9CXLxZ54EWu4dArUE8WdTsw==", - "dev": true + "integrity": "sha512-jvu8g4LR7+p6ao30RhTREnEhHxmP4/R9D9/rOR/Kq14FztORty9SKgtOZUNZNMB9CXLxZ54EWu4dArUE8WdTsw==" }, "@types/babylon": { "version": "6.16.5", "resolved": "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.5.tgz", "integrity": "sha512-xH2e58elpj1X4ynnKp9qSnWlsRTIs6n3tgLGNfwAGHwePw0mulHQllV34n0T25uYSu1k0hRKkWXF890B1yS47w==", - "dev": true, "requires": { "@types/babel-types": "*" } @@ -15516,14 +15452,12 @@ "acorn": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", - "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", - "dev": true + "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=" }, "acorn-globals": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz", "integrity": "sha1-/YJw9x+7SZawBPqIDuXUZXOnMb8=", - "dev": true, "requires": { "acorn": "^4.0.4" }, @@ -15531,8 +15465,7 @@ "acorn": { "version": "4.0.13", "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", - "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", - "dev": true + "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=" } } }, @@ -15870,7 +15803,6 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", - "dev": true, "requires": { "kind-of": "^3.0.2", "longest": "^1.0.1", @@ -15881,7 +15813,6 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -16112,8 +16043,7 @@ "asap": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", - "dev": true + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" }, "asn1": { "version": "0.2.3", @@ -16479,7 +16409,6 @@ "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", - "dev": true, "requires": { "core-js": "^2.4.0", "regenerator-runtime": "^0.11.0" @@ -16488,8 +16417,7 @@ "regenerator-runtime": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", - "dev": true + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" } } }, @@ -16535,7 +16463,6 @@ "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", - "dev": true, "requires": { "babel-runtime": "^6.26.0", "esutils": "^2.0.2", @@ -16546,16 +16473,14 @@ "to-fast-properties": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", - "dev": true + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" } } }, "babylon": { "version": "6.18.0", "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" }, "balanced-match": { "version": "1.0.0", @@ -17109,8 +17034,7 @@ "camelcase": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", - "dev": true + "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=" }, "caniuse-lite": { "version": "1.0.30001111", @@ -17134,7 +17058,6 @@ "version": "0.1.3", "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", - "dev": true, "requires": { "align-text": "^0.1.3", "lazy-cache": "^1.0.3" @@ -17194,7 +17117,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", "integrity": "sha1-x84o821LzZdE5f/CxfzeHHMmH8A=", - "dev": true, "requires": { "is-regex": "^1.0.3" } @@ -17337,7 +17259,6 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz", "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==", - "dev": true, "requires": { "source-map": "~0.6.0" }, @@ -17345,8 +17266,7 @@ "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" } } }, @@ -17381,7 +17301,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", - "dev": true, "requires": { "center-align": "^0.1.1", "right-align": "^0.1.1", @@ -17598,7 +17517,6 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-3.1.2.tgz", "integrity": "sha512-yePcBqEFhLOqSBtwYOGGS1exHo/s1xjekXiinh4itpNQGCu4KA1euPh1fg07N2wMITZXQkBz75Ntdt1ctGZouw==", - "dev": true, "requires": { "@types/babel-types": "^7.0.0", "@types/babylon": "^6.16.2", @@ -17684,8 +17602,7 @@ "core-js": { "version": "2.6.11", "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", - "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==", - "dev": true + "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==" }, "core-js-compat": { "version": "3.6.5", @@ -17938,8 +17855,7 @@ "decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" }, "decode-uri-component": { "version": "0.2.0", @@ -18284,8 +18200,7 @@ "doctypes": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", - "integrity": "sha1-6oCxBqh1OHdOijpKWv4pPeSJ4Kk=", - "dev": true + "integrity": "sha1-6oCxBqh1OHdOijpKWv4pPeSJ4Kk=" }, "dom-serializer": { "version": "0.1.1", @@ -19185,8 +19100,7 @@ "esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" }, "etag": { "version": "1.8.1", @@ -20651,8 +20565,7 @@ "has-symbols": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", - "dev": true + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" }, "has-value": { "version": "1.0.0", @@ -21139,8 +21052,7 @@ "is-buffer": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "dev": true + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" }, "is-callable": { "version": "1.2.0", @@ -21197,7 +21109,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-3.0.0.tgz", "integrity": "sha1-Oayqa+f9HzRx3ELHQW5hwkMXrJ8=", - "dev": true, "requires": { "acorn": "~4.0.2", "object-assign": "^4.0.1" @@ -21206,8 +21117,7 @@ "acorn": { "version": "4.0.13", "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", - "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", - "dev": true + "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=" } } }, @@ -21332,8 +21242,7 @@ "is-promise": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", - "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", - "dev": true + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==" }, "is-property": { "version": "1.0.2", @@ -21351,7 +21260,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz", "integrity": "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==", - "dev": true, "requires": { "has-symbols": "^1.0.1" } @@ -21493,8 +21401,7 @@ "js-stringify": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", - "integrity": "sha1-Fzb939lyTyijaCrcYjCufk6Weds=", - "dev": true + "integrity": "sha1-Fzb939lyTyijaCrcYjCufk6Weds=" }, "js-tokens": { "version": "4.0.0", @@ -21656,7 +21563,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", "integrity": "sha1-7Yvwkh4vPx7U1cGkT2hwntJHIsM=", - "dev": true, "requires": { "is-promise": "^2.0.0", "promise": "^7.0.1" @@ -21728,8 +21634,7 @@ "lazy-cache": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", - "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", - "dev": true + "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=" }, "lazystream": { "version": "1.0.0", @@ -21908,8 +21813,7 @@ "lodash": { "version": "4.17.19", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", - "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==", - "dev": true + "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==" }, "lodash.assign": { "version": "4.2.0", @@ -22027,8 +21931,7 @@ "longest": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", - "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", - "dev": true + "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=" }, "loose-envify": { "version": "1.4.0", @@ -23101,8 +23004,7 @@ "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, "object-copy": { "version": "0.1.0", @@ -23565,8 +23467,7 @@ "path-parse": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", - "dev": true + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" }, "path-root": { "version": "0.1.1", @@ -23828,7 +23729,6 @@ "version": "7.3.1", "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", - "dev": true, "requires": { "asap": "~2.0.3" } @@ -23937,7 +23837,6 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/pug/-/pug-2.0.4.tgz", "integrity": "sha512-XhoaDlvi6NIzL49nu094R2NA6P37ijtgMDuWE+ofekDChvfKnzFal60bhSdiy8y2PBO6fmz3oMEIcfpBVRUdvw==", - "dev": true, "requires": { "pug-code-gen": "^2.0.2", "pug-filters": "^3.1.1", @@ -23953,7 +23852,6 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-2.0.4.tgz", "integrity": "sha512-TaZ4Z2TWUPDJcV3wjU3RtUXMrd3kM4Wzjbe3EWnSsZPsJ3LDI0F3yCnf2/W7PPFF+edUFQ0HgDL1IoxSz5K8EQ==", - "dev": true, "requires": { "constantinople": "^3.0.1", "js-stringify": "^1.0.1", @@ -23964,7 +23862,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-2.0.2.tgz", "integrity": "sha512-kROFWv/AHx/9CRgoGJeRSm+4mLWchbgpRzTEn8XCiwwOy6Vh0gAClS8Vh5TEJ9DBjaP8wCjS3J6HKsEsYdvaCw==", - "dev": true, "requires": { "constantinople": "^3.1.2", "doctypes": "^1.1.0", @@ -23979,14 +23876,12 @@ "pug-error": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-1.3.3.tgz", - "integrity": "sha512-qE3YhESP2mRAWMFJgKdtT5D7ckThRScXRwkfo+Erqga7dyJdY3ZquspprMCj/9sJ2ijm5hXFWQE/A3l4poMWiQ==", - "dev": true + "integrity": "sha512-qE3YhESP2mRAWMFJgKdtT5D7ckThRScXRwkfo+Erqga7dyJdY3ZquspprMCj/9sJ2ijm5hXFWQE/A3l4poMWiQ==" }, "pug-filters": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-3.1.1.tgz", "integrity": "sha512-lFfjNyGEyVWC4BwX0WyvkoWLapI5xHSM3xZJFUhx4JM4XyyRdO8Aucc6pCygnqV2uSgJFaJWW3Ft1wCWSoQkQg==", - "dev": true, "requires": { "clean-css": "^4.1.11", "constantinople": "^3.0.1", @@ -24001,7 +23896,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-4.1.0.tgz", "integrity": "sha512-i55yzEBtjm0mlplW4LoANq7k3S8gDdfC6+LThGEvsK4FuobcKfDAwt6V4jKPH9RtiE3a2Akfg5UpafZ1OksaPA==", - "dev": true, "requires": { "character-parser": "^2.1.1", "is-expression": "^3.0.0", @@ -24012,7 +23906,6 @@ "version": "3.0.6", "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-3.0.6.tgz", "integrity": "sha512-bagfuHttfQOpANGy1Y6NJ+0mNb7dD2MswFG2ZKj22s8g0wVsojpRlqveEQHmgXXcfROB2RT6oqbPYr9EN2ZWzg==", - "dev": true, "requires": { "pug-error": "^1.3.3", "pug-walk": "^1.1.8" @@ -24022,7 +23915,6 @@ "version": "2.0.12", "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-2.0.12.tgz", "integrity": "sha512-UqpgGpyyXRYgJs/X60sE6SIf8UBsmcHYKNaOccyVLEuT6OPBIMo6xMPhoJnqtB3Q3BbO4Z3Bjz5qDsUWh4rXsg==", - "dev": true, "requires": { "object-assign": "^4.1.0", "pug-walk": "^1.1.8" @@ -24032,7 +23924,6 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-5.0.1.tgz", "integrity": "sha512-nGHqK+w07p5/PsPIyzkTQfzlYfuqoiGjaoqHv1LjOv2ZLXmGX1O+4Vcvps+P4LhxZ3drYSljjq4b+Naid126wA==", - "dev": true, "requires": { "pug-error": "^1.3.3", "token-stream": "0.0.1" @@ -24041,14 +23932,12 @@ "pug-runtime": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-2.0.5.tgz", - "integrity": "sha512-P+rXKn9un4fQY77wtpcuFyvFaBww7/91f3jHa154qU26qFAnOe6SW1CbIDcxiG5lLK9HazYrMCCuDvNgDQNptw==", - "dev": true + "integrity": "sha512-P+rXKn9un4fQY77wtpcuFyvFaBww7/91f3jHa154qU26qFAnOe6SW1CbIDcxiG5lLK9HazYrMCCuDvNgDQNptw==" }, "pug-strip-comments": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-1.0.4.tgz", "integrity": "sha512-i5j/9CS4yFhSxHp5iKPHwigaig/VV9g+FgReLJWWHEHbvKsbqL0oP/K5ubuLco6Wu3Kan5p7u7qk8A4oLLh6vw==", - "dev": true, "requires": { "pug-error": "^1.3.3" } @@ -24056,8 +23945,7 @@ "pug-walk": { "version": "1.1.8", "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-1.1.8.tgz", - "integrity": "sha512-GMu3M5nUL3fju4/egXwZO0XLi6fW/K3T3VTgFQ14GxNi8btlxgT5qZL//JwZFm/2Fa64J/PNS8AZeys3wiMkVA==", - "dev": true + "integrity": "sha512-GMu3M5nUL3fju4/egXwZO0XLi6fW/K3T3VTgFQ14GxNi8btlxgT5qZL//JwZFm/2Fa64J/PNS8AZeys3wiMkVA==" }, "pump": { "version": "2.0.1", @@ -24498,8 +24386,7 @@ "repeat-string": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "dev": true + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" }, "repeating": { "version": "2.0.1", @@ -24592,7 +24479,6 @@ "version": "1.17.0", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", - "dev": true, "requires": { "path-parse": "^1.0.6" } @@ -24639,7 +24525,6 @@ "version": "0.1.3", "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", - "dev": true, "requires": { "align-text": "^0.1.1" } @@ -25786,8 +25671,7 @@ "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" }, "source-map-resolve": { "version": "0.5.3", @@ -26654,8 +26538,7 @@ "token-stream": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-0.0.1.tgz", - "integrity": "sha1-zu78cXp2xDFvEm0LnbqlXX598Bo=", - "dev": true + "integrity": "sha1-zu78cXp2xDFvEm0LnbqlXX598Bo=" }, "toml": { "version": "2.3.6", @@ -26789,7 +26672,6 @@ "version": "2.8.29", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", - "dev": true, "requires": { "source-map": "~0.5.1", "uglify-to-browserify": "~1.0.0", @@ -26800,7 +26682,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", - "dev": true, "optional": true }, "uglifyjs-webpack-plugin": { @@ -27247,8 +27128,7 @@ "void-elements": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", - "dev": true + "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=" }, "vscode-languageserver-types": { "version": "3.15.1", @@ -27811,8 +27691,7 @@ "window-size": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", - "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", - "dev": true + "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=" }, "winreg": { "version": "0.0.12", @@ -27824,7 +27703,6 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/with/-/with-5.1.1.tgz", "integrity": "sha1-+k2qktrzLE6pTtRTyB8EaGtXXf4=", - "dev": true, "requires": { "acorn": "^3.1.0", "acorn-globals": "^3.0.0" @@ -27839,8 +27717,7 @@ "wordwrap": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", - "dev": true + "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=" }, "worker-farm": { "version": "1.7.0", @@ -27991,7 +27868,6 @@ "version": "3.10.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", - "dev": true, "requires": { "camelcase": "^1.0.2", "cliui": "^2.1.0", diff --git a/package.json b/package.json index 455c6c4a..1cb3344d 100644 --- a/package.json +++ b/package.json @@ -11,6 +11,7 @@ "express": "^4.17.1", "express-sslify": "^1.2.0", "lodash.debounce": "^4.0.8", + "pug": "^2.0.4", "querystring": "^0.2.0" }, "devEngines": { @@ -55,7 +56,6 @@ "mocha": "^5.2.0", "node-jose": "^1.1.4", "promise.any": "^0.1.1", - "pug": "^2.0.3", "puppeteer": "^1.17.0", "request-promise-native": "^1.0.7", "sinon": "^4.5.0", @@ -79,4 +79,4 @@ "build:libraries": "node libraries.js" }, "heroku-run-build-script": true -} \ No newline at end of file +} From cac91a6b22846bc67d47849519017bddf705038b Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 14 Dec 2020 13:21:37 +0100 Subject: [PATCH 305/456] Move jstransformer-markdown-it to deps instead of devdeps --- package-lock.json | 132 +++++++++++++++++++--------------------------- package.json | 2 +- 2 files changed, 54 insertions(+), 80 deletions(-) diff --git a/package-lock.json b/package-lock.json index 07f452a2..64d2bcc2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,6 +12,7 @@ "dotenv": "^8.2.0", "express": "^4.17.1", "express-sslify": "^1.2.0", + "jstransformer-markdown": "^1.2.1", "lodash.debounce": "^4.0.8", "pug": "^2.0.4", "querystring": "^0.2.0" @@ -48,7 +49,6 @@ "inject-loader": "^3.0.1", "isotope-layout": "^3.0.6", "jquery": "^3.4.1", - "jstransformer-markdown-it": "^2.1.0", "lodash": "^4.17.13", "loglevel": "^1.6.2", "mocha": "^5.2.0", @@ -1644,8 +1644,7 @@ "node_modules/abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, "node_modules/accepts": { "version": "1.3.7", @@ -7632,13 +7631,15 @@ "promise": "^7.0.1" } }, - "node_modules/jstransformer-markdown-it": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/jstransformer-markdown-it/-/jstransformer-markdown-it-2.1.0.tgz", - "integrity": "sha1-aewwzkUYvtWZezjwJ2SOjChekvc=", - "dev": true, + "node_modules/jstransformer-markdown": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/jstransformer-markdown/-/jstransformer-markdown-1.2.1.tgz", + "integrity": "sha512-rNLxNC3LIGAc26Qcro73eWoosKymqyNVDn909KIq2QHVHGWZ+d+JzOCrHsmUt3DNAKF+hkJQJ1JufAhFEdZ5gw==", "dependencies": { - "markdown-it": "^8.0.0" + "markdown": "^0.5.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/jszip": { @@ -7780,15 +7781,6 @@ "resolve-dir": "^1.0.1" } }, - "node_modules/linkify-it": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", - "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==", - "dev": true, - "dependencies": { - "uc.micro": "^1.0.1" - } - }, "node_modules/livereload-js": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/livereload-js/-/livereload-js-2.4.0.tgz", @@ -8065,17 +8057,29 @@ "object-visit": "^1.0.0" } }, - "node_modules/markdown-it": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz", - "integrity": "sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==", - "dev": true, + "node_modules/markdown": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/markdown/-/markdown-0.5.0.tgz", + "integrity": "sha1-KCBbVlqK51kt4gdGPWY33BgnIrI=", "dependencies": { - "argparse": "^1.0.7", - "entities": "~1.1.1", - "linkify-it": "^2.0.0", - "mdurl": "^1.0.1", - "uc.micro": "^1.0.5" + "nopt": "~2.1.1" + }, + "bin": { + "md2html": "bin/md2html.js" + }, + "engines": { + "node": "*" + } + }, + "node_modules/markdown/node_modules/nopt": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-2.1.2.tgz", + "integrity": "sha1-bMzZd7gBMqB3MdbozljCyDA8+a8=", + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" } }, "node_modules/masonry-layout": { @@ -8099,12 +8103,6 @@ "safe-buffer": "^5.1.2" } }, - "node_modules/mdurl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=", - "dev": true - }, "node_modules/media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", @@ -12605,12 +12603,6 @@ "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", "dev": true }, - "node_modules/uc.micro": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", - "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==", - "dev": true - }, "node_modules/uglify-js": { "version": "2.8.29", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", @@ -15437,8 +15429,7 @@ "abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, "accepts": { "version": "1.3.7", @@ -21568,13 +21559,12 @@ "promise": "^7.0.1" } }, - "jstransformer-markdown-it": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/jstransformer-markdown-it/-/jstransformer-markdown-it-2.1.0.tgz", - "integrity": "sha1-aewwzkUYvtWZezjwJ2SOjChekvc=", - "dev": true, + "jstransformer-markdown": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/jstransformer-markdown/-/jstransformer-markdown-1.2.1.tgz", + "integrity": "sha512-rNLxNC3LIGAc26Qcro73eWoosKymqyNVDn909KIq2QHVHGWZ+d+JzOCrHsmUt3DNAKF+hkJQJ1JufAhFEdZ5gw==", "requires": { - "markdown-it": "^8.0.0" + "markdown": "^0.5.0" } }, "jszip": { @@ -21718,15 +21708,6 @@ } } }, - "linkify-it": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", - "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==", - "dev": true, - "requires": { - "uc.micro": "^1.0.1" - } - }, "livereload-js": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/livereload-js/-/livereload-js-2.4.0.tgz", @@ -22007,17 +21988,22 @@ "object-visit": "^1.0.0" } }, - "markdown-it": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz", - "integrity": "sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==", - "dev": true, + "markdown": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/markdown/-/markdown-0.5.0.tgz", + "integrity": "sha1-KCBbVlqK51kt4gdGPWY33BgnIrI=", "requires": { - "argparse": "^1.0.7", - "entities": "~1.1.1", - "linkify-it": "^2.0.0", - "mdurl": "^1.0.1", - "uc.micro": "^1.0.5" + "nopt": "~2.1.1" + }, + "dependencies": { + "nopt": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-2.1.2.tgz", + "integrity": "sha1-bMzZd7gBMqB3MdbozljCyDA8+a8=", + "requires": { + "abbrev": "1" + } + } } }, "masonry-layout": { @@ -22041,12 +22027,6 @@ "safe-buffer": "^5.1.2" } }, - "mdurl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=", - "dev": true - }, "media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", @@ -26662,12 +26642,6 @@ "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", "dev": true }, - "uc.micro": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", - "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==", - "dev": true - }, "uglify-js": { "version": "2.8.29", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", diff --git a/package.json b/package.json index 1cb3344d..fad27c7e 100644 --- a/package.json +++ b/package.json @@ -10,6 +10,7 @@ "dotenv": "^8.2.0", "express": "^4.17.1", "express-sslify": "^1.2.0", + "jstransformer-markdown": "^1.2.1", "lodash.debounce": "^4.0.8", "pug": "^2.0.4", "querystring": "^0.2.0" @@ -50,7 +51,6 @@ "inject-loader": "^3.0.1", "isotope-layout": "^3.0.6", "jquery": "^3.4.1", - "jstransformer-markdown-it": "^2.1.0", "lodash": "^4.17.13", "loglevel": "^1.6.2", "mocha": "^5.2.0", From effae09484c61f5954eec10bdfa7f30d45a34680 Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 14 Dec 2020 13:40:03 +0100 Subject: [PATCH 306/456] Fix markdown-it --- package-lock.json | 97 ++++++++++++++++++++++++++++++++++++++++++----- package.json | 1 + server.js | 1 + 3 files changed, 89 insertions(+), 10 deletions(-) diff --git a/package-lock.json b/package-lock.json index 64d2bcc2..ec5e429b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,6 +13,7 @@ "express": "^4.17.1", "express-sslify": "^1.2.0", "jstransformer-markdown": "^1.2.1", + "jstransformer-markdown-it": "^2.1.0", "lodash.debounce": "^4.0.8", "pug": "^2.0.4", "querystring": "^0.2.0" @@ -2132,7 +2133,6 @@ "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, "dependencies": { "sprintf-js": "~1.0.2" } @@ -2140,8 +2140,7 @@ "node_modules/argparse/node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" }, "node_modules/arr-diff": { "version": "4.0.0", @@ -4556,8 +4555,7 @@ "node_modules/entities": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", - "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", - "dev": true + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" }, "node_modules/errno": { "version": "0.1.7", @@ -7642,6 +7640,17 @@ "node": ">=4" } }, + "node_modules/jstransformer-markdown-it": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/jstransformer-markdown-it/-/jstransformer-markdown-it-2.1.0.tgz", + "integrity": "sha1-aewwzkUYvtWZezjwJ2SOjChekvc=", + "dependencies": { + "markdown-it": "^8.0.0" + }, + "engines": { + "node": ">=7" + } + }, "node_modules/jszip": { "version": "3.5.0", "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.5.0.tgz", @@ -7781,6 +7790,14 @@ "resolve-dir": "^1.0.1" } }, + "node_modules/linkify-it": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", + "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==", + "dependencies": { + "uc.micro": "^1.0.1" + } + }, "node_modules/livereload-js": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/livereload-js/-/livereload-js-2.4.0.tgz", @@ -8071,6 +8088,21 @@ "node": "*" } }, + "node_modules/markdown-it": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz", + "integrity": "sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==", + "dependencies": { + "argparse": "^1.0.7", + "entities": "~1.1.1", + "linkify-it": "^2.0.0", + "mdurl": "^1.0.1", + "uc.micro": "^1.0.5" + }, + "bin": { + "markdown-it": "bin/markdown-it.js" + } + }, "node_modules/markdown/node_modules/nopt": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/nopt/-/nopt-2.1.2.tgz", @@ -8103,6 +8135,11 @@ "safe-buffer": "^5.1.2" } }, + "node_modules/mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=" + }, "node_modules/media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", @@ -12603,6 +12640,11 @@ "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", "dev": true }, + "node_modules/uc.micro": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", + "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" + }, "node_modules/uglify-js": { "version": "2.8.29", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", @@ -15926,7 +15968,6 @@ "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, "requires": { "sprintf-js": "~1.0.2" }, @@ -15934,8 +15975,7 @@ "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" } } }, @@ -18407,8 +18447,7 @@ "entities": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", - "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", - "dev": true + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" }, "errno": { "version": "0.1.7", @@ -21567,6 +21606,14 @@ "markdown": "^0.5.0" } }, + "jstransformer-markdown-it": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/jstransformer-markdown-it/-/jstransformer-markdown-it-2.1.0.tgz", + "integrity": "sha1-aewwzkUYvtWZezjwJ2SOjChekvc=", + "requires": { + "markdown-it": "^8.0.0" + } + }, "jszip": { "version": "3.5.0", "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.5.0.tgz", @@ -21708,6 +21755,14 @@ } } }, + "linkify-it": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", + "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==", + "requires": { + "uc.micro": "^1.0.1" + } + }, "livereload-js": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/livereload-js/-/livereload-js-2.4.0.tgz", @@ -22006,6 +22061,18 @@ } } }, + "markdown-it": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz", + "integrity": "sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==", + "requires": { + "argparse": "^1.0.7", + "entities": "~1.1.1", + "linkify-it": "^2.0.0", + "mdurl": "^1.0.1", + "uc.micro": "^1.0.5" + } + }, "masonry-layout": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/masonry-layout/-/masonry-layout-4.2.2.tgz", @@ -22027,6 +22094,11 @@ "safe-buffer": "^5.1.2" } }, + "mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=" + }, "media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", @@ -26642,6 +26714,11 @@ "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", "dev": true }, + "uc.micro": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", + "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" + }, "uglify-js": { "version": "2.8.29", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", diff --git a/package.json b/package.json index fad27c7e..4df340ae 100644 --- a/package.json +++ b/package.json @@ -11,6 +11,7 @@ "express": "^4.17.1", "express-sslify": "^1.2.0", "jstransformer-markdown": "^1.2.1", + "jstransformer-markdown-it": "^2.1.0", "lodash.debounce": "^4.0.8", "pug": "^2.0.4", "querystring": "^0.2.0" diff --git a/server.js b/server.js index 141b4b62..cac04cbc 100644 --- a/server.js +++ b/server.js @@ -1,6 +1,7 @@ const express = require("express"); const enforce = require("express-sslify"); const languages = require("./libraries.json"); + const app = express(); app.set("view engine", "pug"); From 98aa909726c9022b49a962f8ca117f831c2105c9 Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 14 Dec 2020 14:05:01 +0100 Subject: [PATCH 307/456] Fix Base64 encoded secret length check --- src/editor/secret-length-tooltip.js | 59 ++++++++++++++--------------- 1 file changed, 28 insertions(+), 31 deletions(-) diff --git a/src/editor/secret-length-tooltip.js b/src/editor/secret-length-tooltip.js index 6314fdc5..3727585f 100644 --- a/src/editor/secret-length-tooltip.js +++ b/src/editor/secret-length-tooltip.js @@ -1,40 +1,37 @@ -import { getSelectedAlgorithm } from './utils.js'; -import { - secretInput, - secretBase64Checkbox, -} from '../dom-elements.js'; +import { getSelectedAlgorithm } from "./utils.js"; +import { secretInput, secretBase64Checkbox } from "../dom-elements.js"; -import log from 'loglevel'; -import tippy from 'tippy.js'; -import b64u from 'base64url'; +import log from "loglevel"; +import tippy from "tippy.js"; +import b64u from "base64url"; export function minSecretLengthCheck(event) { - const alg = getSelectedAlgorithm(); - if(alg.indexOf('HS') !== 0) { - log.error(`Secret input tooltip handler for wrong algorithm: ${alg}`); - return; - } + const alg = getSelectedAlgorithm(); + if (alg.indexOf("HS") !== 0) { + log.error(`Secret input tooltip handler for wrong algorithm: ${alg}`); + return; + } - const algBits = parseInt(alg.substr(2)); - const inputBits = secretBase64Checkbox.checked ? - b64u.decode(secretInput.value).length * 8 : - Buffer.from(secretInput.value).length * 8; + const algBits = parseInt(alg.substr(2)); + const inputBits = secretBase64Checkbox.checked ? + b64u.toBuffer(secretInput.value).length * 8 : + Buffer.from(secretInput.value).length * 8; - if(inputBits < algBits) { - if(!secretInput._tippy.state.visible) { - secretInput._tippy.show(); + if (inputBits < algBits) { + if (!secretInput._tippy.state.visible) { + secretInput._tippy.show(); + } + } else { + secretInput._tippy.hide(); } - } else { - secretInput._tippy.hide(); - } } export function setupSecretLengthTooltip() { - tippy(secretInput, { - trigger: 'manual', - placement: 'right', - arrow: true, - arrowTransform: 'scale(0.75)', - size: 'large' - }); -} + tippy(secretInput, { + trigger: "manual", + placement: "right", + arrow: true, + arrowTransform: "scale(0.75)", + size: "large", + }); +} \ No newline at end of file From 9ab519a2f49b4ae97cb9915de166f1119f7264ce Mon Sep 17 00:00:00 2001 From: Stefan Saasen <746+juretta@users.noreply.github.com> Date: Thu, 17 Dec 2020 09:02:55 +0100 Subject: [PATCH 308/456] Update 11-Haskell.json The Haskell `jwt` library is maintained by Brian McKenna --- views/website/libraries/11-Haskell.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/views/website/libraries/11-Haskell.json b/views/website/libraries/11-Haskell.json index 673889ba..6b35d5ac 100644 --- a/views/website/libraries/11-Haskell.json +++ b/views/website/libraries/11-Haskell.json @@ -29,10 +29,10 @@ "ps384": false, "ps512": false }, - "authorUrl": "https://bitbucket.org/ssaasen", - "authorName": "Stefan Saasen", + "authorUrl": "https://hackage.haskell.org/package/jwt", + "authorName": "Brian McKenna", "gitHubRepoPath": null, - "repoUrl": "https://bitbucket.org/ssaasen/haskell-jwt", + "repoUrl": "https://bitbucket.org/puffnfresh/haskell-jwt", "installCommandHtml": "cabal install jwt" }, { From 89c4705d2ec8548a844d101c39ed23acafaf1237 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Tue, 12 Jan 2021 15:07:37 +0100 Subject: [PATCH 309/456] feat: add "typ" (Type) Header Parameter check --- views/website/libraries/2-Node.js.json | 1 + views/website/libraries/4-JavaScript.json | 1 + views/website/libraries/support/get-libs-data.js | 2 +- views/website/libraries/template.pug | 4 ++++ 4 files changed, 7 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/2-Node.js.json b/views/website/libraries/2-Node.js.json index 08584714..fbbe4d26 100644 --- a/views/website/libraries/2-Node.js.json +++ b/views/website/libraries/2-Node.js.json @@ -49,6 +49,7 @@ "nbf": true, "iat": true, "jti": true, + "typ": true, "hs256": true, "hs384": true, "hs512": true, diff --git a/views/website/libraries/4-JavaScript.json b/views/website/libraries/4-JavaScript.json index 531c8366..8fd6e50a 100644 --- a/views/website/libraries/4-JavaScript.json +++ b/views/website/libraries/4-JavaScript.json @@ -16,6 +16,7 @@ "nbf": true, "iat": true, "jti": true, + "typ": true, "hs256": true, "hs384": true, "hs512": true, diff --git a/views/website/libraries/support/get-libs-data.js b/views/website/libraries/support/get-libs-data.js index 5df52911..5e8ac423 100644 --- a/views/website/libraries/support/get-libs-data.js +++ b/views/website/libraries/support/get-libs-data.js @@ -37,7 +37,7 @@ function getLibs() { let orderedKeys = ['sign', 'verify', 'iss', 'sub', 'aud', 'exp', - 'nbf', 'iat', 'jti']; + 'nbf', 'iat', 'jti', 'typ']; for(let i = 0; i < orderedKeys.length; ++i) { r.support[orderedKeys[i]] = diff --git a/views/website/libraries/template.pug b/views/website/libraries/template.pug index 1364f705..bb64bef2 100644 --- a/views/website/libraries/template.pug +++ b/views/website/libraries/template.pug @@ -44,6 +44,10 @@ article(data-accordion, class=`accordion ${lang.uniqueClass}`) i(class=lib.support.jti ? 'icon-budicon-500' : 'icon-budicon-501') code jti | check + p + i(class=lib.support.typ ? 'icon-budicon-500' : (lib.support.typ !== undefined ? 'icon-budicon-501' : 'icon-unknown')) + code typ + | check .column p i(class=lib.support.hs256 ? 'icon-budicon-500' : 'icon-budicon-501') From 15fb25603acc4538d9ebc0f5b129cd414740afcb Mon Sep 17 00:00:00 2001 From: Glitched Polygons <37942667+GlitchedPolygons@users.noreply.github.com> Date: Wed, 13 Jan 2021 22:40:00 +0100 Subject: [PATCH 310/456] Update 20-C.json Implemented l8w8jwt support for ES256K (see pull-request 11) https://github.com/GlitchedPolygons/l8w8jwt --- views/website/libraries/20-C.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/20-C.json b/views/website/libraries/20-C.json index fa2c4388..22cb5bd7 100644 --- a/views/website/libraries/20-C.json +++ b/views/website/libraries/20-C.json @@ -88,7 +88,8 @@ "es512": true, "ps256": true, "ps384": true, - "ps512": true + "ps512": true, + "es256k": true }, "authorUrl": "https://github.com/GlitchedPolygons", "authorName": "Glitched Polygons", From f90b915da12cd4b6ef7a7defcffb3f72eeed5034 Mon Sep 17 00:00:00 2001 From: Glitched Polygons <37942667+GlitchedPolygons@users.noreply.github.com> Date: Fri, 15 Jan 2021 23:12:45 +0100 Subject: [PATCH 311/456] Update 20-C.json EdDSA support was added to l8w8jwt (C library). --- views/website/libraries/20-C.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/20-C.json b/views/website/libraries/20-C.json index 22cb5bd7..817eb5a1 100644 --- a/views/website/libraries/20-C.json +++ b/views/website/libraries/20-C.json @@ -89,7 +89,8 @@ "ps256": true, "ps384": true, "ps512": true, - "es256k": true + "es256k": true, + "eddsa": true }, "authorUrl": "https://github.com/GlitchedPolygons", "authorName": "Glitched Polygons", From 2f81e4cb6bd7c90d4d12703792feed6504846909 Mon Sep 17 00:00:00 2001 From: Glitched Polygons <37942667+GlitchedPolygons@users.noreply.github.com> Date: Tue, 19 Jan 2021 19:59:27 +0100 Subject: [PATCH 312/456] Update 20-C.json Implemented "typ" check (l8w8jwt repo commit 74e38a7c). --- views/website/libraries/20-C.json | 1 + 1 file changed, 1 insertion(+) diff --git a/views/website/libraries/20-C.json b/views/website/libraries/20-C.json index 817eb5a1..4d5ba25e 100644 --- a/views/website/libraries/20-C.json +++ b/views/website/libraries/20-C.json @@ -77,6 +77,7 @@ "nbf": true, "iat": true, "jti": true, + "typ": true, "hs256": true, "hs384": true, "hs512": true, From 35939900e82642699c72880ed26e211547a40fad Mon Sep 17 00:00:00 2001 From: lestrrat <49281+lestrrat@users.noreply.github.com> Date: Sun, 24 Jan 2021 21:21:21 +0900 Subject: [PATCH 313/456] Update 9-Go.json github.com/lestrrat-go/jwx supports EdDSA since v1.0.7 https://github.com/lestrrat-go/jwx/releases/tag/v1.0.7 --- views/website/libraries/9-Go.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index 419af8af..f8d7b2a3 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -182,7 +182,8 @@ "es512": true, "ps256": true, "ps384": true, - "ps512": true + "ps512": true, + "eddsa": true }, "authorUrl": "https://github.com/lestrrat", "authorName": "lestrrat", From deb1cc561d632969c49a90ad6829df268712d50b Mon Sep 17 00:00:00 2001 From: Alexander Batishchev Date: Sun, 24 Jan 2021 14:48:05 -0800 Subject: [PATCH 314/456] Update 0-.NET.json --- views/website/libraries/0-.NET.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/views/website/libraries/0-.NET.json b/views/website/libraries/0-.NET.json index a3beef25..642be0b6 100644 --- a/views/website/libraries/0-.NET.json +++ b/views/website/libraries/0-.NET.json @@ -130,19 +130,19 @@ "support": { "sign": true, "verify": true, - "iss": false, - "sub": false, - "aud": false, + "iss": true, + "sub": true, + "aud": true, "exp": true, "nbf": true, - "iat": false, + "iat": true, "jti": false, "hs256": true, "hs384": true, "hs512": true, "rs256": true, - "rs384": false, - "rs512": false, + "rs384": true, + "rs512": true, "es256": false, "es384": false, "es512": false, @@ -151,7 +151,7 @@ "ps512": false }, "authorUrl": "https://github.com/jwt-dotnet/jwt", - "authorName": "Alexander Batishchev, John Sheehan, Michael Lehenbauer", + "authorName": "Alexander Batishchev", "gitHubRepoPath": "jwt-dotnet/jwt", "repoUrl": "https://github.com/jwt-dotnet/jwt", "installCommandHtml": "Install-Package
JWT" From 24f3baad209a0744c4afd7d8c16d31e96c0e71f9 Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 25 Jan 2021 13:48:35 +0100 Subject: [PATCH 315/456] Add cannonical links to the pages --- views/title.pug | 1 + views/website/introduction.pug | 1 + 2 files changed, 2 insertions(+) diff --git a/views/title.pug b/views/title.pug index 3aa95947..ab9c5a17 100644 --- a/views/title.pug +++ b/views/title.pug @@ -5,3 +5,4 @@ block meta meta(name='viewport', content='width=device-width, minimum-scale=1.0, maximum-scale=1.0') meta(name='author', content='auth0.com') meta(name='description', content='JSON Web Token (JWT) is a compact URL-safe means of representing claims to be transferred between two parties. The claims in a JWT are encoded as a JSON object that is digitally signed using JSON Web Signature (JWS).') + link(rel="canonical", href="https://jwt.io/") diff --git a/views/website/introduction.pug b/views/website/introduction.pug index 76e96e4d..0ac91ef2 100644 --- a/views/website/introduction.pug +++ b/views/website/introduction.pug @@ -8,6 +8,7 @@ block meta meta(name='author', content='auth0.com') meta(name='description', content='JSON Web Token (JWT) is a compact URL-safe means of representing claims to be transferred between two parties. Learn more about them, how they work, when and why you should use JWTs.') meta(name='canonical', content='https://auth0.com/learn/json-web-tokens/') + link(rel="canonical", href="https://jwt.io/introduction") block twittercard meta(name='twitter:card', content='summary_large_image') From e5b9595a8455e214f0b9e5bc231fa418d0b149f8 Mon Sep 17 00:00:00 2001 From: Alexander Batishchev Date: Sat, 6 Feb 2021 12:51:18 -0800 Subject: [PATCH 316/456] Added ES* to JWT.NET --- views/website/libraries/0-.NET.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/views/website/libraries/0-.NET.json b/views/website/libraries/0-.NET.json index 642be0b6..b473bc2b 100644 --- a/views/website/libraries/0-.NET.json +++ b/views/website/libraries/0-.NET.json @@ -143,9 +143,9 @@ "rs256": true, "rs384": true, "rs512": true, - "es256": false, - "es384": false, - "es512": false, + "es256": true, + "es384": true, + "es512": true, "ps256": false, "ps384": false, "ps512": false From 2a334984bf8a8d9a8aec959bcb570b6dbb0cfcc9 Mon Sep 17 00:00:00 2001 From: Alexander Batishchev Date: Sat, 6 Feb 2021 12:54:43 -0800 Subject: [PATCH 317/456] Update 0-.NET.json --- views/website/libraries/0-.NET.json | 62 ++++++++++++++--------------- 1 file changed, 31 insertions(+), 31 deletions(-) diff --git a/views/website/libraries/0-.NET.json b/views/website/libraries/0-.NET.json index b473bc2b..7f0b588e 100644 --- a/views/website/libraries/0-.NET.json +++ b/views/website/libraries/0-.NET.json @@ -35,6 +35,37 @@ "repoUrl": "https://github.com/MSOpenTech/azure-activedirectory-identitymodel-extensions-for-dotnet", "installCommandHtml": "Install-Package
System.IdentityModel.Tokens.Jwt" }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false + }, + "authorUrl": "https://github.com/jwt-dotnet/jwt", + "authorName": "Alexander Batishchev", + "gitHubRepoPath": "jwt-dotnet/jwt", + "repoUrl": "https://github.com/jwt-dotnet/jwt", + "installCommandHtml": "Install-Package
JWT.NET" + }, { "minimumVersion": null, "support": { @@ -125,37 +156,6 @@ "repoUrl": "https://github.com/nuscien/trivial", "installCommandHtml": "Install-Package
Trivial" }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true, - "ps256": false, - "ps384": false, - "ps512": false - }, - "authorUrl": "https://github.com/jwt-dotnet/jwt", - "authorName": "Alexander Batishchev", - "gitHubRepoPath": "jwt-dotnet/jwt", - "repoUrl": "https://github.com/jwt-dotnet/jwt", - "installCommandHtml": "Install-Package
JWT" - }, { "minimumVersion": null, "support": { From c2adc15678c76b1950613e3bdc687aced119455e Mon Sep 17 00:00:00 2001 From: Alex Date: Tue, 9 Feb 2021 22:24:07 +0100 Subject: [PATCH 318/456] Adding new PowerShell library for JWT creation. --- views/website/libraries/32-PowerShell.json | 33 +++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/32-PowerShell.json b/views/website/libraries/32-PowerShell.json index bda25055..48ff5e89 100644 --- a/views/website/libraries/32-PowerShell.json +++ b/views/website/libraries/32-PowerShell.json @@ -34,7 +34,38 @@ "gitHubRepoPath": "SP3269/posh-jwt", "repoUrl": "https://github.com/SP3269/posh-jwt", "installCommandHtml": "Install-Module JWT" + }, + { + "minimumVersion": "6.0.0", + "support": { + "sign": true, + "verify": true, + "iss": false, + "sub": false, + "aud": false, + "exp": false, + "nbf": false, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false + }, + "authorUrl": "https://github.com/DigitalAXPP", + "authorName": "Alexander Piepenhagen", + "gitHubRepoPath": "DigitalAXPP/jwtPS", + "repoUrl": "https://github.com/DigitalAXPP/jwtPS", + "installCommandHtml": "Install-Module jwtPS" } ] } - \ No newline at end of file + From 37d7527ada03d307cb70400669a724d18ecabdd2 Mon Sep 17 00:00:00 2001 From: Paolo Date: Tue, 16 Feb 2021 08:25:15 +0100 Subject: [PATCH 319/456] Added ECDSA support to Delphi JOSE and JWT --- views/website/libraries/23-Delphi.json | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/views/website/libraries/23-Delphi.json b/views/website/libraries/23-Delphi.json index fa8e50f3..04a13b48 100644 --- a/views/website/libraries/23-Delphi.json +++ b/views/website/libraries/23-Delphi.json @@ -16,18 +16,21 @@ "nbf": true, "iat": true, "jti": true, + "typ": true, "hs256": true, "hs384": true, "hs512": true, "rs256": true, "rs384": true, "rs512": true, - "es256": false, - "es384": false, - "es512": false, + "es256": true, + "es256k": true, + "es384": true, + "es512": true, "ps256": false, "ps384": false, - "ps512": false + "ps512": false, + "eddsa": false }, "authorUrl": "https://github.com/paolo-rossi", "authorName": "Paolo Rossi", From ec240eea42b643cc4c942422cbb108859cdc8d45 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 19 Feb 2021 23:31:47 +0100 Subject: [PATCH 320/456] Update 32-PowerShell.json Adding new payload verification feature. --- views/website/libraries/32-PowerShell.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/views/website/libraries/32-PowerShell.json b/views/website/libraries/32-PowerShell.json index 48ff5e89..81f4594a 100644 --- a/views/website/libraries/32-PowerShell.json +++ b/views/website/libraries/32-PowerShell.json @@ -40,13 +40,13 @@ "support": { "sign": true, "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, "hs256": true, "hs384": true, "hs512": true, From 786ea061f0d7c233fcd1215184298129aa6a5dad Mon Sep 17 00:00:00 2001 From: lestrrat <49281+lestrrat@users.noreply.github.com> Date: Mon, 22 Feb 2021 23:37:50 +0900 Subject: [PATCH 321/456] Update 9-Go.json github.com/lestrrat-go/jwx supports es256k as of v1.1.3 --- views/website/libraries/9-Go.json | 1 + 1 file changed, 1 insertion(+) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index f8d7b2a3..d6540459 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -210,6 +210,7 @@ "rs384": true, "rs512": true, "es256": true, + "es256k": true, "es384": true, "es512": true }, From 9f65e7593ba0ee2cc234b9f749221f9076359bca Mon Sep 17 00:00:00 2001 From: lestrrat <49281+lestrrat@users.noreply.github.com> Date: Tue, 23 Feb 2021 00:09:10 +0900 Subject: [PATCH 322/456] Update 9-Go.json Wrong line was edited in #527 --- views/website/libraries/9-Go.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index d6540459..35bf2153 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -178,6 +178,7 @@ "rs384": true, "rs512": true, "es256": true, + "es256k": true, "es384": true, "es512": true, "ps256": true, @@ -210,7 +211,6 @@ "rs384": true, "rs512": true, "es256": true, - "es256k": true, "es384": true, "es512": true }, From f8c3c5c37aae59f314ce0bdbebd127334d5dcd9e Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 25 Feb 2021 09:16:54 +0100 Subject: [PATCH 323/456] Remove chrome extension storage permission --- manifest.json | 1 - 1 file changed, 1 deletion(-) diff --git a/manifest.json b/manifest.json index 503a3894..6c536aaf 100644 --- a/manifest.json +++ b/manifest.json @@ -35,7 +35,6 @@ "permissions": [ "activeTab", "cookies", - "storage", "clipboardRead", "clipboardWrite" ] From f7eeebd7002a3a447cde3b09def24da6da1bfa12 Mon Sep 17 00:00:00 2001 From: Sambego Date: Thu, 25 Feb 2021 09:17:04 +0100 Subject: [PATCH 324/456] 3.3.0 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index ec5e429b..b21b2393 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "jwt.io", - "version": "3.2.0", + "version": "3.3.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "jwt.io", - "version": "3.2.0", + "version": "3.3.0", "dependencies": { "@octokit/rest": "^18.0.12", "dotenv": "^8.2.0", diff --git a/package.json b/package.json index 4df340ae..b4105f15 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jwt.io", - "version": "3.2.0", + "version": "3.3.0", "repository": { "type": "git", "url": "https://github.com/jsonwebtoken/jsonwebtoken.github.io" From dfc5332d673bb39f7f1682e77adf0584587aeadc Mon Sep 17 00:00:00 2001 From: Alex Date: Thu, 4 Mar 2021 00:06:08 +0100 Subject: [PATCH 325/456] Update 32-PowerShell.json --- views/website/libraries/32-PowerShell.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/views/website/libraries/32-PowerShell.json b/views/website/libraries/32-PowerShell.json index 81f4594a..01652cc3 100644 --- a/views/website/libraries/32-PowerShell.json +++ b/views/website/libraries/32-PowerShell.json @@ -53,9 +53,9 @@ "rs256": true, "rs384": true, "rs512": true, - "es256": false, - "es384": false, - "es512": false, + "es256": true, + "es384": true, + "es512": true, "ps256": false, "ps384": false, "ps512": false From 4beef1e4cc7c7229cc0831b4a2fdb67f9f7f24ca Mon Sep 17 00:00:00 2001 From: Nicolas Mora Date: Sun, 7 Mar 2021 08:28:05 -0500 Subject: [PATCH 326/456] Complete rhonabwy capabilities --- views/website/libraries/20-C.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/20-C.json b/views/website/libraries/20-C.json index 4d5ba25e..3f5ea023 100644 --- a/views/website/libraries/20-C.json +++ b/views/website/libraries/20-C.json @@ -142,6 +142,7 @@ "nbf": true, "iat": true, "jti": true, + "typ": true, "hs256": true, "hs384": true, "hs512": true, @@ -154,7 +155,8 @@ "ps256": true, "ps384": true, "ps512": true, - "eddsa": true + "eddsa": true, + "es256k": false }, "authorUrl": "https://babelouest.github.io/", "authorName": "babelouest", From 044a96e5465e67b432581ebfd355f5585a86626c Mon Sep 17 00:00:00 2001 From: Nicolas Mora Date: Mon, 8 Mar 2021 07:23:39 -0500 Subject: [PATCH 327/456] Set es256k to true for rhonabwy --- views/website/libraries/20-C.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/20-C.json b/views/website/libraries/20-C.json index 3f5ea023..6f55c14c 100644 --- a/views/website/libraries/20-C.json +++ b/views/website/libraries/20-C.json @@ -156,7 +156,7 @@ "ps384": true, "ps512": true, "eddsa": true, - "es256k": false + "es256k": true }, "authorUrl": "https://babelouest.github.io/", "authorName": "babelouest", From 9627d8557e1ed45cb4e798bb42e906d9d2211e3e Mon Sep 17 00:00:00 2001 From: Nicolas Mora Date: Sun, 14 Mar 2021 18:02:46 -0400 Subject: [PATCH 328/456] Remove es256k support from rhonabwy --- views/website/libraries/20-C.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/20-C.json b/views/website/libraries/20-C.json index 6f55c14c..3f5ea023 100644 --- a/views/website/libraries/20-C.json +++ b/views/website/libraries/20-C.json @@ -156,7 +156,7 @@ "ps384": true, "ps512": true, "eddsa": true, - "es256k": true + "es256k": false }, "authorUrl": "https://babelouest.github.io/", "authorName": "babelouest", From 2bd0a867b4954f44b768258c539e5ba04dc71fea Mon Sep 17 00:00:00 2001 From: Andrii Danyleiko Date: Thu, 27 May 2021 02:26:03 +0200 Subject: [PATCH 329/456] Add es256k alg for PyJWT from version 2.1.0 pyjwt supports es256k --- views/website/libraries/1-Python.json | 1 + 1 file changed, 1 insertion(+) diff --git a/views/website/libraries/1-Python.json b/views/website/libraries/1-Python.json index 98a3f5d1..bbe9ed48 100644 --- a/views/website/libraries/1-Python.json +++ b/views/website/libraries/1-Python.json @@ -23,6 +23,7 @@ "rs384": true, "rs512": true, "es256": true, + "es256k": true, "es384": true, "es512": true, "ps256": true, From 40d0b52c01a3dacbad83ac4a04c91733fde4d823 Mon Sep 17 00:00:00 2001 From: Weston Schmidt Date: Thu, 10 Jun 2021 20:55:16 -0700 Subject: [PATCH 330/456] Add cjwt link. Signed-off-by: Weston Schmidt --- views/website/libraries/20-C.json | 34 +++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/views/website/libraries/20-C.json b/views/website/libraries/20-C.json index 3f5ea023..6dd0bbc0 100644 --- a/views/website/libraries/20-C.json +++ b/views/website/libraries/20-C.json @@ -163,6 +163,40 @@ "gitHubRepoPath": "babelouest/rhonabwy", "repoUrl": "https://github.com/babelouest/rhonabwy", "installCommandHtml": "Download release package or install from source" + }, + { + "minimumVersion": "2.0.0", + "support": { + "sign": false, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "typ": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true, + "eddsa": false, + "es256k": false + }, + "authorUrl": "https://comcast.github.io/", + "authorName": "Comcast", + "gitHubRepoPath": "xmidt-org/cjwt", + "repoUrl": "https://github.com/xmidt-org/cjwt", + "installCommandHtml": "git clone https://github.com/xmidt-org/cjwt.git" } ] } From 6614f26cc42bf9c586d174d9a931c3cc2142bc16 Mon Sep 17 00:00:00 2001 From: Christian Banse Date: Sun, 20 Jun 2021 11:40:56 +0200 Subject: [PATCH 331/456] A new home for dgrijalva/jwt-go --- views/website/libraries/9-Go.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index 35bf2153..9938354c 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -14,7 +14,7 @@ "aud": false, "exp": true, "nbf": true, - "iat": false, + "iat": true, "jti": false, "hs256": true, "hs384": true, @@ -29,11 +29,11 @@ "ps384": false, "ps512": false }, - "authorUrl": "https://github.com/dgrijalva", - "authorName": "dgrijalva", - "gitHubRepoPath": "dgrijalva/jwt-go", - "repoUrl": "https://github.com/dgrijalva/jwt-go", - "installCommandHtml": "go get github.com/dgrijalva/jwt-go" + "authorUrl": "https://github.com/golang-jwt", + "authorName": "golang-jwt", + "gitHubRepoPath": "golang-jwt/jwt", + "repoUrl": "https://github.com/golang-jwt/jwt", + "installCommandHtml": "go get github.com/golang-jwt/jwt" }, { "minimumVersion": null, @@ -474,4 +474,4 @@ "installCommandHtml": "go get github.com/kataras/jwt" } ] -} +} \ No newline at end of file From 42f8975d4410e182cb9bfacdd0b122a90e53a471 Mon Sep 17 00:00:00 2001 From: Simo Sorce Date: Wed, 14 Jul 2021 06:46:34 -0400 Subject: [PATCH 332/456] add typ support to jwcrypto typ support was added in jwcrypto master tree --- views/website/libraries/1-Python.json | 1 + 1 file changed, 1 insertion(+) diff --git a/views/website/libraries/1-Python.json b/views/website/libraries/1-Python.json index bbe9ed48..4da66b7f 100644 --- a/views/website/libraries/1-Python.json +++ b/views/website/libraries/1-Python.json @@ -80,6 +80,7 @@ "nbf": true, "iat": true, "jti": true, + "typ": true, "hs256": true, "hs384": true, "hs512": true, From 010b9419f0bf5b22eb8543d2ab58590c50df3071 Mon Sep 17 00:00:00 2001 From: Tobias Hagemann Date: Wed, 28 Jul 2021 10:22:57 +0200 Subject: [PATCH 333/456] Update 19-Swift.json --- views/website/libraries/19-Swift.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/views/website/libraries/19-Swift.json b/views/website/libraries/19-Swift.json index 1b10c86c..482b87bf 100644 --- a/views/website/libraries/19-Swift.json +++ b/views/website/libraries/19-Swift.json @@ -142,9 +142,9 @@ "nbf": false, "iat": false, "jti": false, - "hs256": false, - "hs384": false, - "hs512": false, + "hs256": true, + "hs384": true, + "hs512": true, "rs256": true, "rs384": true, "rs512": true, From 019cd0fe9890116a346e00b67941085bd94b7914 Mon Sep 17 00:00:00 2001 From: Christian Banse Date: Tue, 3 Aug 2021 15:17:24 +0200 Subject: [PATCH 334/456] golang-jwt: Added support for EdDSA https://github.com/golang-jwt/jwt/releases/tag/v3.2.2 added support for EdDSA signatures --- views/website/libraries/9-Go.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index 9938354c..657fdbef 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -27,7 +27,8 @@ "es512": true, "ps256": false, "ps384": false, - "ps512": false + "ps512": false, + "eddsa": true }, "authorUrl": "https://github.com/golang-jwt", "authorName": "golang-jwt", @@ -474,4 +475,4 @@ "installCommandHtml": "go get github.com/kataras/jwt" } ] -} \ No newline at end of file +} From 2d51ec36e94488f8b1f2526876decc41e85e7d1a Mon Sep 17 00:00:00 2001 From: Christian Banse Date: Tue, 3 Aug 2021 20:06:31 +0200 Subject: [PATCH 335/456] Updated golang-jwt feature set * We just released v4, so this should be set as the default * We require a minimum Go version of 1.15 * We do support `aud` verification. Fixes https://github.com/golang-jwt/jwt/issues/65 --- views/website/libraries/9-Go.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index 657fdbef..7cd56639 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -5,13 +5,13 @@ "bgColor": "rgb(71, 182, 196)", "libs": [ { - "minimumVersion": null, + "minimumVersion": "1.15", "support": { "sign": true, "verify": true, "iss": false, "sub": false, - "aud": false, + "aud": true, "exp": true, "nbf": true, "iat": true, @@ -34,7 +34,7 @@ "authorName": "golang-jwt", "gitHubRepoPath": "golang-jwt/jwt", "repoUrl": "https://github.com/golang-jwt/jwt", - "installCommandHtml": "go get github.com/golang-jwt/jwt" + "installCommandHtml": "go get github.com/golang-jwt/jwt/v4" }, { "minimumVersion": null, From 77d3a7ae8b25a081c71bf6327fe59933910a2258 Mon Sep 17 00:00:00 2001 From: Sam Bellen Date: Wed, 4 Aug 2021 09:54:53 +0200 Subject: [PATCH 336/456] Update minimum version --- views/website/libraries/9-Go.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index 7cd56639..5d1852c6 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -5,7 +5,7 @@ "bgColor": "rgb(71, 182, 196)", "libs": [ { - "minimumVersion": "1.15", + "minimumVersion": "v3.2.2", "support": { "sign": true, "verify": true, From 1dd2645280f433dba2c324ceb68fe88bf1684b6b Mon Sep 17 00:00:00 2001 From: Dominik Thalhammer Date: Wed, 18 Aug 2021 09:19:32 +0200 Subject: [PATCH 337/456] Update Thalhammer/jwt-cpp jwt-cpp has supported both eddsa and the "typ" check for quite some time now and just recently got official support for es256k. --- views/website/libraries/21-C++.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/21-C++.json b/views/website/libraries/21-C++.json index e9992ecf..0a38709c 100644 --- a/views/website/libraries/21-C++.json +++ b/views/website/libraries/21-C++.json @@ -48,6 +48,7 @@ "nbf": true, "iat": true, "jti": true, + "typ": true, "hs256": true, "hs384": true, "hs512": true, @@ -55,11 +56,13 @@ "rs384": true, "rs512": true, "es256": true, + "es256k": true, "es384": true, "es512": true, "ps256": true, "ps384": true, - "ps512": true + "ps512": true, + "eddsa": true }, "authorUrl": "https://github.com/Thalhammer", "authorName": "Dominik Thalhammer", From 56256c4356b067a98a728228b2a6ace394f3ecfb Mon Sep 17 00:00:00 2001 From: Dominik Thalhammer Date: Wed, 18 Aug 2021 09:27:59 +0200 Subject: [PATCH 338/456] Update language-schema.js to include typ field The typ field is expected and in use by multiple libraries, yet it is missing in the schema. --- views/website/libraries/support/language-schema.js | 1 + 1 file changed, 1 insertion(+) diff --git a/views/website/libraries/support/language-schema.js b/views/website/libraries/support/language-schema.js index 7fabbb68..34a364aa 100644 --- a/views/website/libraries/support/language-schema.js +++ b/views/website/libraries/support/language-schema.js @@ -73,6 +73,7 @@ module.exports = { nbf: { type: 'boolean' }, iat: { type: 'boolean' }, jti: { type: 'boolean' }, + typ: { type: 'boolean' }, hs256: { type: 'boolean' }, hs384: { type: 'boolean' }, hs512: { type: 'boolean' }, From c34e96ac3f7582a6147d4217a6235b7dc7523599 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Wed, 18 Aug 2021 18:19:09 +0200 Subject: [PATCH 339/456] add deno --- img/website/33.png | Bin 0 -> 17540 bytes views/website/libraries/33-Deno.json | 42 +++++++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 img/website/33.png create mode 100644 views/website/libraries/33-Deno.json diff --git a/img/website/33.png b/img/website/33.png new file mode 100644 index 0000000000000000000000000000000000000000..dcd89492033111844729410054f7c688ddaf7520 GIT binary patch literal 17540 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 SF2!R20000 Date: Tue, 14 Sep 2021 16:29:47 +0200 Subject: [PATCH 340/456] Update debugger extension version --- manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifest.json b/manifest.json index 6c536aaf..bf3f2d35 100644 --- a/manifest.json +++ b/manifest.json @@ -3,7 +3,7 @@ "name": "JWT Debugger", "description": "The JWT.io debugger as a Web Extension", - "version": "3.2.0", + "version": "3.3.0", "browser_action": { "default_icon": "img/favicon/favicon-96x96.png", From e0419c6399d40b0d0090ca19fc4e91fbd5f63131 Mon Sep 17 00:00:00 2001 From: Sambego Date: Tue, 14 Sep 2021 16:55:52 +0200 Subject: [PATCH 341/456] Mave navigation to a separate view block --- views/website/navigation.pug | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 views/website/navigation.pug diff --git a/views/website/navigation.pug b/views/website/navigation.pug new file mode 100644 index 00000000..fdc38ac0 --- /dev/null +++ b/views/website/navigation.pug @@ -0,0 +1,25 @@ +nav.navbar.closed + .container + .top-mobile + .menu-trigger + span + + a.brand(href='http://github.com/') + img(src='http://github.com/img/pic_logo.svg' alt='JWT logo').icon + img(src='http://github.com/img/logo.svg' alt='JWT logo').logo + + nav.menu + a(href='http://github.com/').scrollto Debugger + a(href='http://github.com/libraries').scrollto Libraries + a(href='http://github.com/introduction') Introduction + a(href='https://community.auth0.com/c/identity/jwt', target='_blank') Ask + + .social + a.a0(href='https://auth0.com/developers?utm_source=jwtio&utm_medium=navbar_whats_auth0&utm_campaign=jwt_nav_cta_12_2019', target='_blank') + span.by-text Crafted by + img(src='http://github.com/img/pic_logo_ft.svg', alt='Crafted by Auth0 - JWT.io Token Based Authentication') + span.crafted-by__question-mark ? + + a.supported(href='https://auth0.com/?utm_source=jwtio&utm_campaign=craftedby', target="_blank") + | Supported by + img(src='http://github.com/img/ico_logo.svg', alt='Supported by Auth0 - JWT.io Token Based Authentication') \ No newline at end of file From fac715bad35d3141351d950536e51ea01409bf12 Mon Sep 17 00:00:00 2001 From: Sambego Date: Tue, 14 Sep 2021 16:56:14 +0200 Subject: [PATCH 342/456] Move libraries from homepage to a separate page --- server.js | 6 ++- stylus/website/index.styl | 1 + views/website/index.pug | 31 +------------- views/website/introduction.pug | 27 ------------ views/website/layout.pug | 2 + views/website/libraries.pug | 78 ++++++++++++++++++++++------------ 6 files changed, 61 insertions(+), 84 deletions(-) diff --git a/server.js b/server.js index cac04cbc..92c4ae77 100644 --- a/server.js +++ b/server.js @@ -20,13 +20,17 @@ if (process.env.NODE_ENV === "production") { // app.use(fetchGithubStars); app.use(express.static("dist/website")); app.get("/", function(req, res) { - res.render("index", { languages: languages }); + res.render("index"); }); app.get("/introduction", function(req, res) { res.render("introduction"); }); +app.get("/libraries", function(req, res) { + res.render("libraries", { languages: languages }); +}); + // Fallback for the homepage JWT handbook CTA A/B experiment we ran app.get("/home", function(req, res) { res.redirect("/"); diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 033fcc64..5d9a288d 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -714,6 +714,7 @@ body float left .filter display inline-block + margin 0 auto 2rem auto +breakpoint("tablet") float right diff --git a/views/website/index.pug b/views/website/index.pug index 6b43a18e..b7b454e5 100644 --- a/views/website/index.pug +++ b/views/website/index.pug @@ -1,33 +1,6 @@ extends layout - + block content - nav.navbar.closed - .container - .top-mobile - .menu-trigger - span - - a.brand(href='http://github.com/') - img(src='http://github.com/img/pic_logo.svg' alt='JWT logo').icon - img(src='http://github.com/img/logo.svg' alt='JWT logo').logo - - nav.menu - a(href='#debugger-io').scrollto Debugger - a(href='#libraries-io').scrollto Libraries - a(href='http://github.com/introduction') Introduction - a(href='https://community.auth0.com/c/identity/jwt', target='_blank') Ask - a(href='http://swag.auth0.com/', target='_blank') Get a T-shirt! - - .social - a.a0(href='https://auth0.com/developers?utm_source=jwtio&utm_medium=navbar_whats_auth0&utm_campaign=jwt_nav_cta_12_2019', target='_blank') - span.by-text Crafted by - img(src='http://github.com/img/pic_logo_ft.svg', alt='Crafted by Auth0 - JWT.io Token Based Authentication') - span.crafted-by__question-mark ? - - a.supported(href='https://auth0.com/?utm_source=jwtio&utm_campaign=craftedby', target="_blank") - | Supported by - img(src='http://github.com/img/ico_logo.svg', alt='Supported by Auth0 - JWT.io Token Based Authentication') - section.banner-jwt .container a.logo(href='http://github.com/') @@ -45,8 +18,6 @@ block content include token-editor.pug - include libraries.pug - include assets.pug include counter.pug diff --git a/views/website/introduction.pug b/views/website/introduction.pug index 0ac91ef2..4de19604 100644 --- a/views/website/introduction.pug +++ b/views/website/introduction.pug @@ -29,33 +29,6 @@ block opengraph meta(property='og:image:height', content='630') block content - nav.navbar.closed - .container - .top-mobile - .menu-trigger - span - - a.brand(href='http://github.com/') - img(src='http://github.com/img/pic_logo.svg' alt='JWT logo').icon - img(src='http://github.com/img/logo.svg' alt='JWT logo').logo - - nav.menu - a(href='http://github.com/#debugger-io').scrollto Debugger - a(href='http://github.com/#libraries-io').scrollto Libraries - a(href='http://github.com/introduction').active Introduction - a(href='https://community.auth0.com/', target='_blank') Ask - a(href='http://swag.auth0.com/', target='_blank') Get a T-shirt! - - .social - a.a0(href='https://auth0.com/developers?utm_source=jwtio&utm_medium=navbar_whats_auth0&utm_campaign=jwt_nav_cta_12_2019', target='_blank') - span.by-text Crafted by - img(src='http://github.com/img/pic_logo_ft.svg', alt='Crafted by Auth0 - Token Based Authentication') - span.crafted-by__question-mark ? - - a.supported(href='https://auth0.com/developers/', target="_blank") - | Supported by - img(src='http://github.com/img/ico_logo.svg' alt='Supported by Auth0 - JWT.io Token Based Authentication') - section.banner-jwt .container a.logo(href='http://github.com/') diff --git a/views/website/layout.pug b/views/website/layout.pug index cdb529b2..b2755238 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -53,6 +53,8 @@ html(lang='en') iframe(src='https://www.googletagmanager.com/ns.html?id=GTM-W7FRLJ', height='0', width='0', style='display:none;visibility:hidden') // End Google Tag Manager (noscript) + include ./navigation.pug + block content footer diff --git a/views/website/libraries.pug b/views/website/libraries.pug index 3aa27a19..7ced59c6 100644 --- a/views/website/libraries.pug +++ b/views/website/libraries.pug @@ -1,30 +1,56 @@ -section#libraries-io.libraries-jwt - .container - .title-header - h1 Libraries for Token Signing/Verification +extends layout + +block meta + title JSON Web Token Introduction - jwt.io + meta(charset='utf-8') + meta(http-equiv='X-UA-Compatible', content='IE=edge') + meta(name='viewport', content='width=device-width, minimum-scale=1.0, maximum-scale=1.0') + meta(name='author', content='auth0.com') + meta(name='description', content='JSON Web Token (JWT) is a compact URL-safe means of representing claims to be transferred between two parties. Learn more about them, how they work, when and why you should use JWTs.') + meta(name='canonical', content='https://auth0.com/learn/json-web-tokens/') + link(rel="canonical", href="https://jwt.io/introduction") - .filter - label(for='libraries-select') Filter by - .jwt-select - select#libraries-select - option(value='*', selected='') All - // Languages must be in alphabetic order - - - const sortedLangs = Array.from(languages); - sortedLangs.sort((a, b) => a.name.localeCompare(b.name)); - each lang in sortedLangs - option(value=`.${lang.uniqueClass}`) #{lang.name} +block twittercard + meta(name='twitter:card', content='summary_large_image') + meta(name='twitter:creator', content='@auth0') + meta(name='twitter:title', content='JWT.IO - JSON Web Tokens Introduction') + meta(name='twitter:description', content='Learn about JSON Web Tokens, what are they, how they work, when and why you should use them.') + meta(name='twitter:image', content='http://jwt.io/img/twitter-card.png') - .warning - b Warning: - a(href='https://auth0.com/blog/critical-vulnerabilities-in-json-web-token-libraries/' title='Learn more about JWT vulnerabilities') Learn more about critical vulnerabilities - | in JSON Web Token libraries with asymmetric keys. +block opengraph + meta(property='og:type', content='website') + meta(property='og:title', content='JWT.IO - JSON Web Tokens Introduction') + meta(property='og:description', content='Learn about JSON Web Tokens, what are they, how they work, when and why you should use them.') + meta(property='og:locale', content='en_US') + meta(property='og:url', content='http://jwt.io/') + meta(property='og:image', content='http://jwt.io/img/facebook-card.png') + meta(property='og:image:type', content='image/png') + meta(property='og:image:width', content='1200') + meta(property='og:image:height', content='630') - svg(height='48', viewbox='0 0 48 48', width='48', xmlns='http://www.w3.org/2000/svg') - path(d='M-838-2232H562v3600H-838z', fill='none') - path(d='M16 10v28l22-14z') +block content + section.banner-jwt + .container + a.logo(href='http://github.com/') + img(src='http://github.com/img/pic_logo.svg' alt='JWT logo') + + h1 Libraries for Token Signing/Verification + section#libraries-io.libraries-jwt + .container + .title-header + .filter + label(for='libraries-select') Filter by + .jwt-select + select#libraries-select + option(value='*', selected='') All + // Languages must be in alphabetic order + - + const sortedLangs = Array.from(languages); + sortedLangs.sort((a, b) => a.name.localeCompare(b.name)); + each lang in sortedLangs + option(value=`.${lang.uniqueClass}`) #{lang.name} - .libraries-sv(data-accordion-group) - each lang in languages - each lib in lang.libs - include libraries/template.pug + .libraries-sv(data-accordion-group) + each lang in languages + each lib in lang.libs + include libraries/template.pug From 81147e04dd593f5a7b4e01f9d5641596610f6626 Mon Sep 17 00:00:00 2001 From: Sambego Date: Tue, 14 Sep 2021 16:58:53 +0200 Subject: [PATCH 343/456] Update SEO metadata --- views/website/introduction.pug | 2 +- views/website/libraries.pug | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/views/website/introduction.pug b/views/website/introduction.pug index 4de19604..cc87f6da 100644 --- a/views/website/introduction.pug +++ b/views/website/introduction.pug @@ -6,7 +6,7 @@ block meta meta(http-equiv='X-UA-Compatible', content='IE=edge') meta(name='viewport', content='width=device-width, minimum-scale=1.0, maximum-scale=1.0') meta(name='author', content='auth0.com') - meta(name='description', content='JSON Web Token (JWT) is a compact URL-safe means of representing claims to be transferred between two parties. Learn more about them, how they work, when and why you should use JWTs.') + meta(name='description', content='Learn about JSON Web Tokens, what are they, how they work, when and why you should use them.') meta(name='canonical', content='https://auth0.com/learn/json-web-tokens/') link(rel="canonical", href="https://jwt.io/introduction") diff --git a/views/website/libraries.pug b/views/website/libraries.pug index 7ced59c6..8fa23484 100644 --- a/views/website/libraries.pug +++ b/views/website/libraries.pug @@ -1,26 +1,26 @@ extends layout block meta - title JSON Web Token Introduction - jwt.io + title JSON Web Token Libraries - jwt.io meta(charset='utf-8') meta(http-equiv='X-UA-Compatible', content='IE=edge') meta(name='viewport', content='width=device-width, minimum-scale=1.0, maximum-scale=1.0') meta(name='author', content='auth0.com') - meta(name='description', content='JSON Web Token (JWT) is a compact URL-safe means of representing claims to be transferred between two parties. Learn more about them, how they work, when and why you should use JWTs.') + meta(name='description', content='Find an overview of libraries that help you work with JSON Web Tokens in your favorite language.') meta(name='canonical', content='https://auth0.com/learn/json-web-tokens/') - link(rel="canonical", href="https://jwt.io/introduction") + link(rel="canonical", href="https://jwt.io/libraries") block twittercard meta(name='twitter:card', content='summary_large_image') meta(name='twitter:creator', content='@auth0') - meta(name='twitter:title', content='JWT.IO - JSON Web Tokens Introduction') - meta(name='twitter:description', content='Learn about JSON Web Tokens, what are they, how they work, when and why you should use them.') + meta(name='twitter:title', content='JWT.IO - JSON Web Tokens Libraries') + meta(name='twitter:description', content='Find an overview of libraries that help you work with JSON Web Tokens in your favorite language.') meta(name='twitter:image', content='http://jwt.io/img/twitter-card.png') block opengraph meta(property='og:type', content='website') - meta(property='og:title', content='JWT.IO - JSON Web Tokens Introduction') - meta(property='og:description', content='Learn about JSON Web Tokens, what are they, how they work, when and why you should use them.') + meta(property='og:title', content='JWT.IO - JSON Web Tokens Libraries') + meta(property='og:description', content='Find an overview of libraries that help you work with JSON Web Tokens in your favorite language.') meta(property='og:locale', content='en_US') meta(property='og:url', content='http://jwt.io/') meta(property='og:image', content='http://jwt.io/img/facebook-card.png') From 0dbbb1fa4b2d674d41fbb5f65406af707784f373 Mon Sep 17 00:00:00 2001 From: Sambego Date: Tue, 14 Sep 2021 18:06:31 +0200 Subject: [PATCH 344/456] Fix libary filter js --- src/website/dom-elements.js | 10 ++-- src/website/index.js | 66 +++++++++++------------- src/website/libraries/dom-elements.js | 2 + src/website/libraries/index.js | 8 +++ src/website/{ => libraries}/libraries.js | 1 - views/website/libraries.pug | 4 ++ views/website/navigation.pug | 4 +- webpack.website-dev.js | 24 ++++----- webpack.website-prod.js | 18 +++---- 9 files changed, 70 insertions(+), 67 deletions(-) create mode 100644 src/website/libraries/dom-elements.js create mode 100644 src/website/libraries/index.js rename src/website/{ => libraries}/libraries.js (92%) diff --git a/src/website/dom-elements.js b/src/website/dom-elements.js index b88923b3..5e1fc415 100644 --- a/src/website/dom-elements.js +++ b/src/website/dom-elements.js @@ -5,7 +5,7 @@ export const navbarElement = document.querySelector('nav.navbar'); export const menuTriggerElement = document.querySelector('.menu-trigger'); export const menuLinks = document.querySelectorAll('.navbar .menu a'); export const menuScrollableLinks = - navbarElement.querySelectorAll('a.scrollto'); + navbarElement.querySelectorAll('a.scrollto'); export const sectionElements = document.getElementsByTagName('section'); @@ -14,14 +14,12 @@ export const ebookSection = document.querySelector('.jtw-ebook-banner'); export const extensionButton = document.getElementById('extension-button'); export const extensionButtonText = extensionButton ? - extensionButton.querySelector('.button-text') : - undefined; + extensionButton.querySelector('.button-text') : + undefined; export const debuggerSection = document.getElementById('debugger-io'); export const shareJwtButton = document.querySelector('.website-share button'); export const shareJwtTextElement = shareJwtButton.querySelector('span'); -export const starsElements = document.getElementsByClassName('stars'); -export const librariesElement = document.querySelector('.libraries-sv'); -export const librariesSelect = document.getElementById('libraries-select'); +export const starsElements = document.getElementsByClassName('stars'); \ No newline at end of file diff --git a/src/website/index.js b/src/website/index.js index b0e52190..87762a3b 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -1,20 +1,14 @@ import { setupNavbar } from "./navbar.js"; -import { setupExtensionButton } from "./extension.js"; -import { setupLibraries } from "./libraries.js"; import { setupTokenEditor, setTokenEditorValue } from "../editor"; import { setupJwtCounter } from "./counter.js"; import { setupSmoothScrolling } from "./smooth-scrolling.js"; import { setupHighlighting } from "./highlighting.js"; -import { isChrome, isFirefox, isPartiallyInViewport, once } from "./utils.js"; import { setupShareJwtButton } from "../share-button.js"; import { - publicKeyTextArea, - debuggerSection, - extensionSection, - ebookSection, - shareJwtButton, - shareJwtTextElement, - librariesElement + publicKeyTextArea, + debuggerSection, + shareJwtButton, + shareJwtTextElement, } from "./dom-elements.js"; import queryString from "querystring"; @@ -22,40 +16,38 @@ import queryString from "querystring"; /* For initialization, look at the end of this file */ function parseLocationQuery() { - const locSearch = queryString.parse(document.location.search.substr(1)); - const locHash = queryString.parse(document.location.hash.substr(1)); - - const keys = [ - "id_token", - "access_token", - "value", - "token", - "debugger-io?token" - ]; - for (const key of keys) { - const token = locSearch[key] || locHash[key]; - - if (token) { - if (locSearch.publicKey || locHash.publicKey) { - publicKeyTextArea.value = locSearch.publicKey || locHash.publicKey; - } - - setTokenEditorValue(token); - - debuggerSection.scrollIntoView(true); - - break; + const locSearch = queryString.parse(document.location.search.substr(1)); + const locHash = queryString.parse(document.location.hash.substr(1)); + + const keys = [ + "id_token", + "access_token", + "value", + "token", + "debugger-io?token" + ]; + for (const key of keys) { + const token = locSearch[key] || locHash[key]; + + if (token) { + if (locSearch.publicKey || locHash.publicKey) { + publicKeyTextArea.value = locSearch.publicKey || locHash.publicKey; + } + + setTokenEditorValue(token); + + debuggerSection.scrollIntoView(true); + + break; + } } - } } // Initialization setupNavbar(); -// setupExtensionButton(); setupSmoothScrolling(); -setupLibraries(); setupTokenEditor(); parseLocationQuery(); setupHighlighting(); setupJwtCounter(); -setupShareJwtButton(shareJwtButton, shareJwtTextElement); +setupShareJwtButton(shareJwtButton, shareJwtTextElement); \ No newline at end of file diff --git a/src/website/libraries/dom-elements.js b/src/website/libraries/dom-elements.js new file mode 100644 index 00000000..a2281801 --- /dev/null +++ b/src/website/libraries/dom-elements.js @@ -0,0 +1,2 @@ +export const librariesElement = document.querySelector('.libraries-sv'); +export const librariesSelect = document.getElementById('libraries-select'); \ No newline at end of file diff --git a/src/website/libraries/index.js b/src/website/libraries/index.js new file mode 100644 index 00000000..2dc41b1b --- /dev/null +++ b/src/website/libraries/index.js @@ -0,0 +1,8 @@ +import { setupLibraries } from "./libraries.js"; +import { setupHighlighting } from "../highlighting.js"; +import { setupJwtCounter } from "../counter.js"; + +// Initialization +setupLibraries(); +setupHighlighting(); +setupJwtCounter(); \ No newline at end of file diff --git a/src/website/libraries.js b/src/website/libraries/libraries.js similarity index 92% rename from src/website/libraries.js rename to src/website/libraries/libraries.js index b57799f5..205e63f6 100644 --- a/src/website/libraries.js +++ b/src/website/libraries/libraries.js @@ -1,4 +1,3 @@ -import { httpGet } from "../utils.js"; import { librariesElement, librariesSelect } from "./dom-elements.js"; import Isotope from "isotope-layout"; diff --git a/views/website/libraries.pug b/views/website/libraries.pug index 8fa23484..142c8955 100644 --- a/views/website/libraries.pug +++ b/views/website/libraries.pug @@ -54,3 +54,7 @@ block content each lang in languages each lib in lang.libs include libraries/template.pug + + include counter.pug + + script(src='http://github.com/js/libraries.js') \ No newline at end of file diff --git a/views/website/navigation.pug b/views/website/navigation.pug index fdc38ac0..3e64c842 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -9,8 +9,8 @@ nav.navbar.closed img(src='http://github.com/img/logo.svg' alt='JWT logo').logo nav.menu - a(href='http://github.com/').scrollto Debugger - a(href='http://github.com/libraries').scrollto Libraries + a(href='http://github.com/') Debugger + a(href='http://github.com/libraries') Libraries a(href='http://github.com/introduction') Introduction a(href='https://community.auth0.com/c/identity/jwt', target='_blank') Ask diff --git a/webpack.website-dev.js b/webpack.website-dev.js index 9ad98951..39b34901 100644 --- a/webpack.website-dev.js +++ b/webpack.website-dev.js @@ -4,15 +4,15 @@ const merge = require('webpack-merge'); const common = require('./webpack.common.js'); module.exports = merge(common, { - mode: 'development', - entry: { - index: './src/website/index.js', - introduction: './src/website/introduction/index.js' - }, - output: { - filename: '[name].js', - path: __dirname + '/dist/website/js' - }, - plugins: [ - ] -}); + mode: 'development', + entry: { + index: './src/website/index.js', + introduction: './src/website/introduction/index.js', + libraries: './src/website/libraries/index.js' + }, + output: { + filename: '[name].js', + path: __dirname + '/dist/website/js' + }, + plugins: [] +}); \ No newline at end of file diff --git a/webpack.website-prod.js b/webpack.website-prod.js index 56e29043..dd7ad352 100644 --- a/webpack.website-prod.js +++ b/webpack.website-prod.js @@ -5,12 +5,12 @@ const UglifyJsPlugin = require('uglifyjs-webpack-plugin'); const devConfig = require('./webpack.website-dev.js'); module.exports = merge(devConfig, { - mode: 'production', - devtool: false, - plugins: [ - new UglifyJsPlugin(), - new webpack.DefinePlugin({ - PRODUCTION: true - }) - ] -}); + mode: 'production', + devtool: false, + plugins: [ + new UglifyJsPlugin(), + new webpack.DefinePlugin({ + PRODUCTION: true + }) + ] +}); \ No newline at end of file From caae024c7789053bffa7c55ea54dfa9780360f95 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Mon, 27 Sep 2021 11:47:55 +0200 Subject: [PATCH 345/456] refactor: reconsile key formats, update keys, support JWK --- .github/workflows/test.yml | 24 + .travis.yml | 11 - Gruntfile.js | 13 + README.md | 2 - libraries.js | 2 +- package-lock.json | 3890 ++++++++++++++++++++--- package.json | 10 +- src/editor/default-tokens.js | 153 +- src/editor/jwt.js | 128 +- src/editor/public-key-download.js | 75 +- src/editor/utils.js | 95 +- src/utils.js | 43 - test/functional/editor.js | 313 +- test/functional/jwks.json | 2 +- test/functional/libraries.js | 3 +- test/functional/tokens.js | 27 +- test/functional/utils.js | 4 +- test/unit/editor/jwt.js | 177 +- test/unit/editor/public-key-download.js | 126 +- test/unit/utils.js | 2 - views/token-editor-algorithms.pug | 4 +- views/token-editor-common.pug | 4 +- views/website/layout.pug | 9 +- webpack.common.js | 12 +- webpack.website-unit-tests.js | 10 + 25 files changed, 3914 insertions(+), 1225 deletions(-) create mode 100644 .github/workflows/test.yml delete mode 100644 .travis.yml diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 00000000..0879e03c --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,24 @@ +name: CI + +on: + push: + paths-ignore: + - "views/website/libraries/*.json" + pull_request: + paths-ignore: + - "views/website/libraries/*.json" + +jobs: + test: + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + runs-on: macos-latest + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-node@v2 + with: + cache: 'npm' + cache-dependency-path: '**/package-lock.json' + node-version: '14' + - run: npm install + - run: npm test diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 08c99c3a..00000000 --- a/.travis.yml +++ /dev/null @@ -1,11 +0,0 @@ -language: node_js -node_js: - - "stable" -before_script: - - echo "Host github.com" >> ~/.ssh/config - - echo " StrictHostKeyChecking no" >> ~/.ssh/config - - echo " CheckHostIP no" >> ~/.ssh/config - - npm install -#cache: -# directories: -# - node_modules diff --git a/Gruntfile.js b/Gruntfile.js index 3b7f261b..f0a7316b 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -5,6 +5,7 @@ module.exports = (grunt) => { grunt.loadNpmTasks("grunt-contrib-copy"); grunt.loadNpmTasks("grunt-contrib-stylus"); grunt.loadNpmTasks("grunt-contrib-pug"); + grunt.loadNpmTasks("grunt-contrib-pug"); grunt.loadNpmTasks("grunt-webpack"); grunt.loadNpmTasks("grunt-contrib-watch"); grunt.loadNpmTasks("grunt-contrib-clean"); @@ -119,6 +120,17 @@ module.exports = (grunt) => { }, pug: { + website: { + options: { + data: { + languages: getLanguages(), + }, + }, + files: { + "dist/website/index.html": "views/website/index.pug", + "dist/website/introduction/index.html": "views/website/introduction.pug", + }, + }, extension: { files: { "dist/extension/index.html": "views/extension/index.pug", @@ -258,6 +270,7 @@ module.exports = (grunt) => { grunt.registerTask("functional-tests", [ "build-website-dev", + "pug:website", "connect:website", "mochaTest:functional", ]); diff --git a/README.md b/README.md index 1b4236ce..4cbfafbf 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,6 @@ -[![Build Status](https://travis-ci.org/jsonwebtoken/jsonwebtoken.github.io.png?branch=master)](https://travis-ci.org/jsonwebtoken/jsonwebtoken.github.io) - ### Sponsor ||| diff --git a/libraries.js b/libraries.js index 204a634a..cb71305c 100644 --- a/libraries.js +++ b/libraries.js @@ -3,7 +3,7 @@ const { Octokit } = require("@octokit/rest"); const dotenv = require("dotenv").config(); const getLanguages = require("./views/website/libraries/support/get-languages.js"); const octokit = new Octokit({ - auth: process.env.GITHUB, + auth: process.env.GITHUB || process.env.GITHUB_TOKEN, }); function fetchGithubStars() { diff --git a/package-lock.json b/package-lock.json index b21b2393..9bdfddbb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,7 +24,9 @@ "@babel/preset-env": "^7.4.5", "babel-loader": "^8.0.6", "babel-plugin-transform-async-to-generator": "^6.24.1", + "base64url": "^3.0.1", "bootstrap": "^3.4.1", + "bowser": "^2.11.0", "chai": "^4.2.0", "chai-arrays": "^2.0.0", "chai-as-promised": "^7.1.1", @@ -49,11 +51,13 @@ "highlight.js": "^10.4.1", "inject-loader": "^3.0.1", "isotope-layout": "^3.0.6", + "jose": "^3.19.0", "jquery": "^3.4.1", "lodash": "^4.17.13", "loglevel": "^1.6.2", "mocha": "^5.2.0", - "node-jose": "^1.1.4", + "nock": "^13.1.3", + "node-forge": "^0.10.0", "promise.any": "^0.1.1", "puppeteer": "^1.17.0", "request-promise-native": "^1.0.7", @@ -112,12 +116,20 @@ "resolve": "^1.3.2", "semver": "^5.4.1", "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" } }, "node_modules/@babel/core/node_modules/debug": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", "dev": true, "dependencies": { "ms": "^2.1.1" @@ -170,6 +182,9 @@ "invariant": "^2.2.4", "levenary": "^1.1.1", "semver": "^5.5.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, "node_modules/@babel/helper-create-class-features-plugin": { @@ -184,6 +199,9 @@ "@babel/helper-plugin-utils": "^7.10.4", "@babel/helper-replace-supers": "^7.10.4", "@babel/helper-split-export-declaration": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, "node_modules/@babel/helper-create-regexp-features-plugin": { @@ -195,6 +213,9 @@ "@babel/helper-annotate-as-pure": "^7.10.4", "@babel/helper-regex": "^7.10.4", "regexpu-core": "^4.7.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, "node_modules/@babel/helper-define-map": { @@ -401,7 +422,13 @@ "version": "7.11.2", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } }, "node_modules/@babel/plugin-proposal-async-generator-functions": { "version": "7.10.5", @@ -412,6 +439,9 @@ "@babel/helper-plugin-utils": "^7.10.4", "@babel/helper-remap-async-to-generator": "^7.10.4", "@babel/plugin-syntax-async-generators": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-class-properties": { @@ -422,6 +452,9 @@ "dependencies": { "@babel/helper-create-class-features-plugin": "^7.10.4", "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-dynamic-import": { @@ -432,6 +465,9 @@ "dependencies": { "@babel/helper-plugin-utils": "^7.10.4", "@babel/plugin-syntax-dynamic-import": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-export-namespace-from": { @@ -442,6 +478,9 @@ "dependencies": { "@babel/helper-plugin-utils": "^7.10.4", "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-json-strings": { @@ -452,6 +491,9 @@ "dependencies": { "@babel/helper-plugin-utils": "^7.10.4", "@babel/plugin-syntax-json-strings": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-logical-assignment-operators": { @@ -462,6 +504,9 @@ "dependencies": { "@babel/helper-plugin-utils": "^7.10.4", "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { @@ -472,6 +517,9 @@ "dependencies": { "@babel/helper-plugin-utils": "^7.10.4", "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-numeric-separator": { @@ -482,6 +530,9 @@ "dependencies": { "@babel/helper-plugin-utils": "^7.10.4", "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-object-rest-spread": { @@ -493,6 +544,9 @@ "@babel/helper-plugin-utils": "^7.10.4", "@babel/plugin-syntax-object-rest-spread": "^7.8.0", "@babel/plugin-transform-parameters": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-optional-catch-binding": { @@ -503,6 +557,9 @@ "dependencies": { "@babel/helper-plugin-utils": "^7.10.4", "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-optional-chaining": { @@ -514,6 +571,9 @@ "@babel/helper-plugin-utils": "^7.10.4", "@babel/helper-skip-transparent-expression-wrappers": "^7.11.0", "@babel/plugin-syntax-optional-chaining": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-private-methods": { @@ -524,6 +584,9 @@ "dependencies": { "@babel/helper-create-class-features-plugin": "^7.10.4", "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-unicode-property-regex": { @@ -534,6 +597,12 @@ "dependencies": { "@babel/helper-create-regexp-features-plugin": "^7.10.4", "@babel/helper-plugin-utils": "^7.10.4" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-async-generators": { @@ -543,6 +612,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-class-properties": { @@ -552,6 +624,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-dynamic-import": { @@ -561,6 +636,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-export-namespace-from": { @@ -570,6 +648,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-json-strings": { @@ -579,6 +660,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-logical-assignment-operators": { @@ -588,6 +672,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { @@ -597,6 +684,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-numeric-separator": { @@ -606,6 +696,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-object-rest-spread": { @@ -615,6 +708,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-optional-catch-binding": { @@ -624,6 +720,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-optional-chaining": { @@ -633,6 +732,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-top-level-await": { @@ -642,6 +744,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-arrow-functions": { @@ -651,6 +756,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-async-to-generator": { @@ -662,6 +770,9 @@ "@babel/helper-module-imports": "^7.10.4", "@babel/helper-plugin-utils": "^7.10.4", "@babel/helper-remap-async-to-generator": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-block-scoped-functions": { @@ -671,6 +782,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-block-scoping": { @@ -680,6 +794,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-classes": { @@ -696,6 +813,9 @@ "@babel/helper-replace-supers": "^7.10.4", "@babel/helper-split-export-declaration": "^7.10.4", "globals": "^11.1.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-computed-properties": { @@ -705,6 +825,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-destructuring": { @@ -714,6 +837,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-dotall-regex": { @@ -724,6 +850,9 @@ "dependencies": { "@babel/helper-create-regexp-features-plugin": "^7.10.4", "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-duplicate-keys": { @@ -733,6 +862,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-exponentiation-operator": { @@ -743,6 +875,9 @@ "dependencies": { "@babel/helper-builder-binary-assignment-operator-visitor": "^7.10.4", "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-for-of": { @@ -752,6 +887,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-function-name": { @@ -762,6 +900,9 @@ "dependencies": { "@babel/helper-function-name": "^7.10.4", "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-literals": { @@ -771,6 +912,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-member-expression-literals": { @@ -780,6 +924,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-modules-amd": { @@ -791,6 +938,9 @@ "@babel/helper-module-transforms": "^7.10.5", "@babel/helper-plugin-utils": "^7.10.4", "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-modules-commonjs": { @@ -803,6 +953,9 @@ "@babel/helper-plugin-utils": "^7.10.4", "@babel/helper-simple-access": "^7.10.4", "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-modules-systemjs": { @@ -815,6 +968,9 @@ "@babel/helper-module-transforms": "^7.10.5", "@babel/helper-plugin-utils": "^7.10.4", "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-modules-umd": { @@ -825,6 +981,9 @@ "dependencies": { "@babel/helper-module-transforms": "^7.10.4", "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { @@ -834,6 +993,9 @@ "dev": true, "dependencies": { "@babel/helper-create-regexp-features-plugin": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, "node_modules/@babel/plugin-transform-new-target": { @@ -843,6 +1005,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-object-super": { @@ -853,6 +1018,9 @@ "dependencies": { "@babel/helper-plugin-utils": "^7.10.4", "@babel/helper-replace-supers": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-parameters": { @@ -863,6 +1031,9 @@ "dependencies": { "@babel/helper-get-function-arity": "^7.10.4", "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-property-literals": { @@ -872,6 +1043,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-regenerator": { @@ -881,6 +1055,9 @@ "dev": true, "dependencies": { "regenerator-transform": "^0.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-reserved-words": { @@ -890,6 +1067,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-shorthand-properties": { @@ -899,6 +1079,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-spread": { @@ -909,6 +1092,9 @@ "dependencies": { "@babel/helper-plugin-utils": "^7.10.4", "@babel/helper-skip-transparent-expression-wrappers": "^7.11.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-sticky-regex": { @@ -919,6 +1105,9 @@ "dependencies": { "@babel/helper-plugin-utils": "^7.10.4", "@babel/helper-regex": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-template-literals": { @@ -929,6 +1118,9 @@ "dependencies": { "@babel/helper-annotate-as-pure": "^7.10.4", "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-typeof-symbol": { @@ -938,6 +1130,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-unicode-escapes": { @@ -947,6 +1142,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-unicode-regex": { @@ -957,12 +1155,16 @@ "dependencies": { "@babel/helper-create-regexp-features-plugin": "^7.10.4", "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/polyfill": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.10.4.tgz", "integrity": "sha512-8BYcnVqQ5kMD2HXoHInBH7H1b/uP3KdnwCYXOqFnXqguOyuu443WXusbIUbWEfY3Z0Txk0M1uG/8YuAMhNl6zg==", + "deprecated": "🚨 This package has been deprecated in favor of separate inclusion of a polyfill and regenerator-runtime (when needed). See the @babel/polyfill docs (https://babeljs.io/docs/en/babel-polyfill) for more information.", "dev": true, "dependencies": { "core-js": "^2.6.5", @@ -1043,6 +1245,9 @@ "invariant": "^2.2.2", "levenary": "^1.1.1", "semver": "^5.5.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/preset-modules": { @@ -1056,6 +1261,9 @@ "@babel/plugin-transform-dotall-regex": "^7.4.4", "@babel/types": "^7.4.4", "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/register": { @@ -1071,6 +1279,9 @@ "mkdirp": "^0.5.1", "pirates": "^4.0.0", "source-map-support": "^0.5.9" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/register/node_modules/find-cache-dir": { @@ -1082,6 +1293,9 @@ "commondir": "^1.0.1", "make-dir": "^1.0.0", "pkg-dir": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/@babel/register/node_modules/find-up": { @@ -1091,13 +1305,19 @@ "dev": true, "dependencies": { "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/@babel/register/node_modules/home-or-tmp": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-3.0.0.tgz", "integrity": "sha1-V6j+JM8zzdUkhgoVgh3cJchmcfs=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/@babel/register/node_modules/locate-path": { "version": "2.0.0", @@ -1107,6 +1327,9 @@ "dependencies": { "p-locate": "^2.0.0", "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/@babel/register/node_modules/make-dir": { @@ -1116,6 +1339,9 @@ "dev": true, "dependencies": { "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/@babel/register/node_modules/p-limit": { @@ -1125,6 +1351,9 @@ "dev": true, "dependencies": { "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/@babel/register/node_modules/p-locate": { @@ -1134,19 +1363,28 @@ "dev": true, "dependencies": { "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/@babel/register/node_modules/p-try": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/@babel/register/node_modules/pify": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/@babel/register/node_modules/pkg-dir": { "version": "2.0.0", @@ -1155,6 +1393,9 @@ "dev": true, "dependencies": { "find-up": "^2.1.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/@babel/runtime": { @@ -1198,6 +1439,7 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", "dev": true, "dependencies": { "ms": "^2.1.1" @@ -1234,7 +1476,10 @@ "version": "0.5.1", "resolved": "https://registry.npmjs.org/colors/-/colors-0.5.1.tgz", "integrity": "sha1-fQAj6usVTo7p/Oddy5I9DtFmd3Q=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.1.90" + } }, "node_modules/@cliqz-oss/node-firefox-connect": { "version": "1.2.1", @@ -1654,12 +1899,21 @@ "dependencies": { "mime-types": "~2.1.24", "negotiator": "0.6.2" + }, + "engines": { + "node": ">= 0.6" } }, "node_modules/acorn": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", - "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=" + "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } }, "node_modules/acorn-globals": { "version": "3.1.0", @@ -1672,13 +1926,22 @@ "node_modules/acorn-globals/node_modules/acorn": { "version": "4.0.13", "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", - "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=" + "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } }, "node_modules/acorn-jsx": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", - "dev": true + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0" + } }, "node_modules/adbkit": { "version": "2.11.0", @@ -1693,13 +1956,22 @@ "debug": "~2.6.3", "node-forge": "^0.7.1", "split": "~0.3.3" + }, + "bin": { + "adbkit": "bin/adbkit" + }, + "engines": { + "node": ">= 0.10.4" } }, "node_modules/adbkit-logcat": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/adbkit-logcat/-/adbkit-logcat-1.1.0.tgz", "integrity": "sha1-Adf5sM75CTowvLOwB+//MBUIli8=", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.10.4" + } }, "node_modules/adbkit-monkey": { "version": "1.0.1", @@ -1708,6 +1980,9 @@ "dev": true, "dependencies": { "async": "~0.2.9" + }, + "engines": { + "node": ">= 0.10.4" } }, "node_modules/adbkit-monkey/node_modules/async": { @@ -1726,7 +2001,10 @@ "version": "0.7.6", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.6.tgz", "integrity": "sha512-sol30LUpz1jQFBjOKwbjxijiE3b6pjd74YwfD0fJOKPjF+fONKb2Yg8rYgS6+bK6VDl+/wfr4IYpC7jDzLUIfw==", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, "node_modules/addons-linter": { "version": "1.4.1", @@ -1753,7 +2031,6 @@ "esprima": "3.1.3", "first-chunk-stream": "2.0.0", "fluent-syntax": "0.7.0", - "fsevents": "2.0.1", "glob": "7.1.3", "is-mergeable-object": "1.1.0", "jed": "1.1.1", @@ -1775,6 +2052,9 @@ "yargs": "12.0.2", "yauzl": "2.9.2" }, + "bin": { + "addons-linter": "bin/addons-linter" + }, "optionalDependencies": { "fsevents": "2.0.1" } @@ -1783,6 +2063,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.0.0.tgz", "integrity": "sha512-dnrMRkyyr74CRelJwvgnnSUDh2ge2NCTyHVwpOdvRMHtJUyxLtMAfhBN3s64pY41zdw0kgiLPh6S20eb1NcX6Q==", + "deprecated": "🚨 This package has been deprecated in favor of separate inclusion of a polyfill and regenerator-runtime (when needed). See the @babel/polyfill docs (https://babeljs.io/docs/en/babel-polyfill) for more information.", "dev": true, "dependencies": { "core-js": "^2.5.7", @@ -1805,13 +2086,19 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/addons-linter/node_modules/camelcase": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/addons-linter/node_modules/chalk": { "version": "2.4.0", @@ -1822,6 +2109,9 @@ "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/addons-linter/node_modules/cliui": { @@ -1842,13 +2132,23 @@ "dev": true, "dependencies": { "xregexp": "4.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/addons-linter/node_modules/esprima": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", - "dev": true + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } }, "node_modules/addons-linter/node_modules/fast-deep-equal": { "version": "2.0.1", @@ -1868,6 +2168,9 @@ "minimatch": "^3.0.4", "once": "^1.3.0", "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" } }, "node_modules/addons-linter/node_modules/regenerator-runtime": { @@ -1880,13 +2183,19 @@ "version": "5.6.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", - "dev": true + "dev": true, + "bin": { + "semver": "bin/semver" + } }, "node_modules/addons-linter/node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/addons-linter/node_modules/source-map-support": { "version": "0.5.6", @@ -1905,6 +2214,9 @@ "dev": true, "dependencies": { "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/addons-linter/node_modules/xregexp": { @@ -1956,7 +2268,10 @@ "version": "0.4.16", "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.16.tgz", "integrity": "sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.3.0" + } }, "node_modules/agent-base": { "version": "4.3.0", @@ -1965,7 +2280,10 @@ "dev": true, "dependencies": { "es6-promisify": "^5.0.0" - } + }, + "engines": { + "node": ">= 4.0.0" + } }, "node_modules/ajv": { "version": "6.12.3", @@ -1977,19 +2295,29 @@ "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, "node_modules/ajv-errors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "dev": true + "dev": true, + "peerDependencies": { + "ajv": ">=5.0.0" + } }, "node_modules/ajv-keywords": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } }, "node_modules/ajv-merge-patch": { "version": "4.1.0", @@ -1999,6 +2327,9 @@ "dependencies": { "fast-json-patch": "^2.0.6", "json-merge-patch": "^0.2.3" + }, + "peerDependencies": { + "ajv": ">=6.0.0" } }, "node_modules/align-text": { @@ -2009,6 +2340,9 @@ "kind-of": "^3.0.2", "longest": "^1.0.1", "repeat-string": "^1.5.2" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/align-text/node_modules/kind-of": { @@ -2017,13 +2351,19 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dependencies": { "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/amdefine": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.4.2" + } }, "node_modules/ansi-align": { "version": "2.0.0", @@ -2038,13 +2378,19 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/ansi-styles": { "version": "3.2.1", @@ -2053,6 +2399,9 @@ "dev": true, "dependencies": { "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/ansicolors": { @@ -2098,6 +2447,9 @@ "tar-stream": "^1.5.0", "walkdir": "^0.0.11", "zip-stream": "^1.1.0" + }, + "engines": { + "node": ">= 0.10.0" } }, "node_modules/archiver-utils": { @@ -2112,6 +2464,9 @@ "lodash": "^4.8.0", "normalize-path": "^2.0.0", "readable-stream": "^2.0.0" + }, + "engines": { + "node": ">= 0.10.0" } }, "node_modules/archiver/node_modules/async": { @@ -2146,31 +2501,46 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/arr-flatten": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/arr-union": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/array-differ": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/array-each": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/array-filter": { "version": "0.0.1", @@ -2205,7 +2575,10 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/array-union": { "version": "1.0.2", @@ -2214,25 +2587,37 @@ "dev": true, "dependencies": { "array-uniq": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/array-uniq": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/array-unique": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/arrify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/asap": { "version": "2.0.6", @@ -2276,7 +2661,10 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.8" + } }, "node_modules/assert/node_modules/inherits": { "version": "2.0.1", @@ -2297,19 +2685,28 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, "node_modules/assign-symbols": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/ast-types": { "version": "0.13.3", "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.3.tgz", "integrity": "sha512-XTZ7xGML849LkQP86sWdQzfhwbt3YwIO6MqbX9mUNYY98VKaaVZP7YNNm70IpwecbkkxmfC5IYAzOQ/2p29zRA==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/async": { "version": "1.5.2", @@ -2339,13 +2736,22 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true + "dev": true, + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } }, "node_modules/aws-sign2": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, "node_modules/aws4": { "version": "1.10.0", @@ -2368,7 +2774,10 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/babel-code-frame/node_modules/chalk": { "version": "1.1.3", @@ -2381,6 +2790,9 @@ "has-ansi": "^2.0.0", "strip-ansi": "^3.0.0", "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/babel-code-frame/node_modules/js-tokens": { @@ -2393,7 +2805,10 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.8.0" + } }, "node_modules/babel-core": { "version": "6.26.3", @@ -2426,7 +2841,10 @@ "version": "0.5.1", "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true + "dev": true, + "bin": { + "json5": "lib/cli.js" + } }, "node_modules/babel-generator": { "version": "6.26.1", @@ -2448,7 +2866,10 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", - "dev": true + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } }, "node_modules/babel-helper-function-name": { "version": "6.24.1", @@ -2507,6 +2928,13 @@ "mkdirp": "^0.5.3", "pify": "^4.0.1", "schema-utils": "^2.6.5" + }, + "engines": { + "node": ">= 6.9" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "webpack": ">=2" } }, "node_modules/babel-messages": { @@ -2633,7 +3061,10 @@ "version": "9.18.0", "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/babel-types": { "version": "6.26.0", @@ -2649,12 +3080,18 @@ "node_modules/babel-types/node_modules/to-fast-properties": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "engines": { + "node": ">=0.10.0" + } }, "node_modules/babylon": { "version": "6.18.0", "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "bin": { + "babylon": "bin/babylon.js" + } }, "node_modules/balanced-match": { "version": "1.0.0", @@ -2675,6 +3112,9 @@ "isobject": "^3.0.1", "mixin-deep": "^1.2.0", "pascalcase": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/base/node_modules/define-property": { @@ -2684,6 +3124,9 @@ "dev": true, "dependencies": { "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/base/node_modules/is-accessor-descriptor": { @@ -2693,6 +3136,9 @@ "dev": true, "dependencies": { "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/base/node_modules/is-data-descriptor": { @@ -2702,6 +3148,9 @@ "dev": true, "dependencies": { "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/base/node_modules/is-descriptor": { @@ -2713,6 +3162,9 @@ "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/base64-js": { @@ -2725,7 +3177,10 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", - "dev": true + "dev": true, + "engines": { + "node": ">=6.0.0" + } }, "node_modules/basic-auth": { "version": "2.0.1", @@ -2734,6 +3189,9 @@ "dev": true, "dependencies": { "safe-buffer": "5.1.2" + }, + "engines": { + "node": ">= 0.8" } }, "node_modules/batch": { @@ -2760,13 +3218,19 @@ "version": "5.2.2", "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, "node_modules/binary-extensions": { "version": "1.13.1", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/bindings": { "version": "1.5.0", @@ -2827,6 +3291,9 @@ "qs": "6.7.0", "raw-body": "2.4.0", "type-is": "~1.6.17" + }, + "engines": { + "node": ">= 0.8" } }, "node_modules/body/node_modules/bytes": { @@ -2843,6 +3310,9 @@ "dependencies": { "bytes": "1", "string_decoder": "0.10" + }, + "engines": { + "node": ">= 0.8.0" } }, "node_modules/boolbase": { @@ -2855,6 +3325,15 @@ "version": "3.4.1", "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-3.4.1.tgz", "integrity": "sha512-yN5oZVmRCwe5aKwzRj6736nSmKDX7pLYwsXiCj/EYmo16hODaBiT4En5btW/jhBF/seV+XMx3aYwukYC3A49DA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/bowser": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz", + "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==", "dev": true }, "node_modules/boxen": { @@ -2870,13 +3349,19 @@ "string-width": "^2.0.0", "term-size": "^1.2.0", "widest-line": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/boxen/node_modules/camelcase": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/brace-expansion": { "version": "1.1.11", @@ -2904,6 +3389,9 @@ "snapdragon-node": "^2.0.1", "split-string": "^3.0.2", "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/braces/node_modules/extend-shallow": { @@ -2913,6 +3401,9 @@ "dev": true, "dependencies": { "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/brorand": { @@ -3012,13 +3503,30 @@ "inherits": "^2.0.3", "string_decoder": "^1.1.1", "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, "node_modules/browserify-sign/node_modules/safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, "node_modules/browserify-sign/node_modules/string_decoder": { "version": "1.3.0", @@ -3048,6 +3556,16 @@ "electron-to-chromium": "^1.3.488", "escalade": "^3.0.1", "node-releases": "^1.1.58" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + }, + "funding": { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" } }, "node_modules/buffer": { @@ -3080,7 +3598,10 @@ "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, "node_modules/buffer-equal-constant-time": { "version": "1.0.1", @@ -3117,14 +3638,15 @@ "resolved": "https://registry.npmjs.org/bunyan/-/bunyan-1.8.12.tgz", "integrity": "sha1-8VDw9nSKvdcq6uhPBEA74u8RN5c=", "dev": true, - "dependencies": { - "dtrace-provider": "~0.8", - "moment": "^2.10.6", - "mv": "~2", - "safe-json-stringify": "~1" + "engines": [ + "node >=0.10.0" + ], + "bin": { + "bunyan": "bin/bunyan" }, "optionalDependencies": { "dtrace-provider": "~0.8", + "moment": "^2.10.6", "mv": "~2", "safe-json-stringify": "~1" } @@ -3132,7 +3654,10 @@ "node_modules/bytes": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "engines": { + "node": ">= 0.8" + } }, "node_modules/cacache": { "version": "10.0.4", @@ -3162,6 +3687,9 @@ "dev": true, "dependencies": { "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" } }, "node_modules/cache-base": { @@ -3179,6 +3707,9 @@ "to-object-path": "^0.3.0", "union-value": "^1.0.0", "unset-value": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/caller-path": { @@ -3188,18 +3719,27 @@ "dev": true, "dependencies": { "callsites": "^0.2.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/callsites": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz", "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/camelcase": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=" + "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", + "engines": { + "node": ">=0.10.0" + } }, "node_modules/caniuse-lite": { "version": "1.0.30001111", @@ -3211,10 +3751,13 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz", "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==", - "dev": true - }, - "node_modules/caseless": { - "version": "0.12.0", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/caseless": { + "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", "dev": true @@ -3226,6 +3769,9 @@ "dependencies": { "align-text": "^0.1.3", "lazy-cache": "^1.0.3" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/chai": { @@ -3240,13 +3786,19 @@ "get-func-name": "^2.0.0", "pathval": "^1.1.0", "type-detect": "^4.0.5" + }, + "engines": { + "node": ">=4" } }, "node_modules/chai-arrays": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/chai-arrays/-/chai-arrays-2.2.0.tgz", "integrity": "sha512-4awrdGI2EH8owJ9I58PXwG4N56/FiM8bsn4CVSNEgr4GKAM6Kq5JPVApUbhUBjDakbZNuRvV7quRSC38PWq/tg==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10" + } }, "node_modules/chai-as-promised": { "version": "7.1.1", @@ -3255,6 +3807,9 @@ "dev": true, "dependencies": { "check-error": "^1.0.2" + }, + "peerDependencies": { + "chai": ">= 2.1.2 < 5" } }, "node_modules/chai-json-schema": { @@ -3265,6 +3820,12 @@ "dependencies": { "jsonpointer.js": "0.4.0", "tv4": "^1.3.0" + }, + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "chai": ">= 1.6.1 < 5" } }, "node_modules/chalk": { @@ -3276,6 +3837,9 @@ "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/character-parser": { @@ -3296,7 +3860,10 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, "node_modules/cheerio": { "version": "1.0.0-rc.2", @@ -3310,18 +3877,21 @@ "htmlparser2": "^3.9.1", "lodash": "^4.15.0", "parse5": "^3.0.1" + }, + "engines": { + "node": ">= 0.6" } }, "node_modules/chokidar": { "version": "2.1.8", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "deprecated": "Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.", "dev": true, "dependencies": { "anymatch": "^2.0.0", "async-each": "^1.0.1", "braces": "^2.3.2", - "fsevents": "^1.2.7", "glob-parent": "^3.1.0", "inherits": "^2.0.3", "is-binary-path": "^1.0.0", @@ -3339,11 +3909,19 @@ "version": "1.2.13", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "deprecated": "fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.", "dev": true, + "hasInstallScript": true, "optional": true, + "os": [ + "darwin" + ], "dependencies": { "bindings": "^1.5.0", "nan": "^2.12.1" + }, + "engines": { + "node": ">= 4.0" } }, "node_modules/chokidar/node_modules/is-glob": { @@ -3353,19 +3931,29 @@ "dev": true, "dependencies": { "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/chokidar/node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/chokidar/node_modules/upath": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", - "dev": true + "dev": true, + "engines": { + "node": ">=4", + "yarn": "*" + } }, "node_modules/chownr": { "version": "1.1.4", @@ -3380,6 +3968,9 @@ "dev": true, "dependencies": { "tslib": "^1.9.0" + }, + "engines": { + "node": ">=6.0" } }, "node_modules/cipher-base": { @@ -3396,6 +3987,7 @@ "version": "0.3.3", "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", + "deprecated": "CircularJSON is in maintenance only, flatted is its successor.", "dev": true }, "node_modules/class-utils": { @@ -3408,6 +4000,9 @@ "define-property": "^0.2.5", "isobject": "^3.0.0", "static-extend": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/class-utils/node_modules/define-property": { @@ -3417,6 +4012,9 @@ "dev": true, "dependencies": { "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/clean-css": { @@ -3425,18 +4023,27 @@ "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==", "dependencies": { "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 4.0" } }, "node_modules/clean-css/node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } }, "node_modules/cli-boxes": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/cli-cursor": { "version": "2.1.0", @@ -3445,6 +4052,9 @@ "dev": true, "dependencies": { "restore-cursor": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/cli-width": { @@ -3473,7 +4083,10 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.8" + } }, "node_modules/clone-deep": { "version": "0.3.0", @@ -3485,6 +4098,9 @@ "is-plain-object": "^2.0.1", "kind-of": "^3.2.2", "shallow-clone": "^0.1.2" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/clone-deep/node_modules/kind-of": { @@ -3494,19 +4110,29 @@ "dev": true, "dependencies": { "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "dev": true + "dev": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } }, "node_modules/code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/codemirror": { "version": "5.56.0", @@ -3522,6 +4148,9 @@ "dependencies": { "map-visit": "^1.0.0", "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/color-convert": { @@ -3543,7 +4172,10 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.1.90" + } }, "node_modules/columnify": { "version": "1.5.4", @@ -3562,6 +4194,9 @@ "dev": true, "dependencies": { "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" } }, "node_modules/commander": { @@ -3574,7 +4209,10 @@ "version": "1.8.0", "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.0.tgz", "integrity": "sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw==", - "dev": true + "dev": true, + "engines": { + "node": ">=4.0.0" + } }, "node_modules/commondir": { "version": "1.0.1", @@ -3598,6 +4236,9 @@ "crc32-stream": "^2.0.0", "normalize-path": "^2.0.0", "readable-stream": "^2.0.0" + }, + "engines": { + "node": ">= 0.10.0" } }, "node_modules/concat-map": { @@ -3611,6 +4252,9 @@ "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", "dev": true, + "engines": [ + "node >= 0.8" + ], "dependencies": { "buffer-from": "^1.0.0", "inherits": "^2.0.3", @@ -3630,6 +4274,9 @@ "unique-string": "^1.0.0", "write-file-atomic": "^2.0.0", "xdg-basedir": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/configstore/node_modules/make-dir": { @@ -3639,13 +4286,19 @@ "dev": true, "dependencies": { "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/configstore/node_modules/pify": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/connect": { "version": "3.7.0", @@ -3657,13 +4310,19 @@ "finalhandler": "1.1.2", "parseurl": "~1.3.3", "utils-merge": "1.0.1" + }, + "engines": { + "node": ">= 0.10.0" } }, "node_modules/connect-livereload": { "version": "0.5.4", "resolved": "https://registry.npmjs.org/connect-livereload/-/connect-livereload-0.5.4.tgz", "integrity": "sha1-gBV9E3HJ83zBQDmrGJWXDRGdw7w=", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, "node_modules/console-browserify": { "version": "1.2.0", @@ -3694,12 +4353,18 @@ "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", "dependencies": { "safe-buffer": "5.1.2" + }, + "engines": { + "node": ">= 0.6" } }, "node_modules/content-type": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "engines": { + "node": ">= 0.6" + } }, "node_modules/continuable-cache": { "version": "0.3.1", @@ -3719,7 +4384,10 @@ "node_modules/cookie": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", - "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==" + "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", + "engines": { + "node": ">= 0.6" + } }, "node_modules/cookie-signature": { "version": "1.0.6", @@ -3747,18 +4415,26 @@ "dev": true, "dependencies": { "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" } }, "node_modules/copy-descriptor": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/core-js": { "version": "2.6.11", "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", - "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==" + "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==", + "deprecated": "core-js@<3.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Please, upgrade your dependencies to the actual version of core-js.", + "hasInstallScript": true }, "node_modules/core-js-compat": { "version": "3.6.5", @@ -3768,13 +4444,20 @@ "dependencies": { "browserslist": "^4.8.5", "semver": "7.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" } }, "node_modules/core-js-compat/node_modules/semver": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true + "dev": true, + "bin": { + "semver": "bin/semver.js" + } }, "node_modules/core-util-is": { "version": "1.0.2", @@ -3799,6 +4482,9 @@ "dependencies": { "crc": "^3.4.4", "readable-stream": "^2.0.0" + }, + "engines": { + "node": ">= 0.10.0" } }, "node_modules/create-ecdh": { @@ -3824,6 +4510,9 @@ "dev": true, "dependencies": { "capture-stack-trace": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/create-hash": { @@ -3864,6 +4553,9 @@ "semver": "^5.5.0", "shebang-command": "^1.2.0", "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" } }, "node_modules/crx": { @@ -3876,6 +4568,12 @@ "commander": "^2.5.0", "es6-promise": "^3.0.0", "node-rsa": "^0.2.10" + }, + "bin": { + "crx": "bin/crx.js" + }, + "engines": { + "node": ">=0.10" } }, "node_modules/crx-parser": { @@ -3901,13 +4599,19 @@ "public-encrypt": "^4.0.0", "randombytes": "^2.0.0", "randomfill": "^1.0.3" + }, + "engines": { + "node": "*" } }, "node_modules/crypto-random-string": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/css": { "version": "2.2.4", @@ -3943,13 +4647,19 @@ "version": "2.1.3", "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, "node_modules/css/node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/cyclist": { "version": "1.0.1", @@ -3974,6 +4684,9 @@ "dev": true, "dependencies": { "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" } }, "node_modules/data-uri-to-buffer": { @@ -3986,7 +4699,10 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, "node_modules/debounce": { "version": "1.1.0", @@ -4005,13 +4721,19 @@ "node_modules/decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "engines": { + "node": ">=0.10.0" + } }, "node_modules/decode-uri-component": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10" + } }, "node_modules/deep-eql": { "version": "3.0.1", @@ -4020,6 +4742,9 @@ "dev": true, "dependencies": { "type-detect": "^4.0.0" + }, + "engines": { + "node": ">=0.12" } }, "node_modules/deep-equal": { @@ -4034,13 +4759,19 @@ "object-is": "^1.0.1", "object-keys": "^1.1.1", "regexp.prototype.flags": "^1.2.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/deep-extend": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true + "dev": true, + "engines": { + "node": ">=4.0.0" + } }, "node_modules/deep-for-each": { "version": "2.0.3", @@ -4073,7 +4804,10 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-2.2.1.tgz", "integrity": "sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/defaults": { "version": "1.0.3", @@ -4091,6 +4825,9 @@ "dev": true, "dependencies": { "object-keys": "^1.0.12" + }, + "engines": { + "node": ">= 0.4" } }, "node_modules/define-property": { @@ -4101,6 +4838,9 @@ "dependencies": { "is-descriptor": "^1.0.2", "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/define-property/node_modules/is-accessor-descriptor": { @@ -4110,6 +4850,9 @@ "dev": true, "dependencies": { "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/define-property/node_modules/is-data-descriptor": { @@ -4119,6 +4862,9 @@ "dev": true, "dependencies": { "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/define-property/node_modules/is-descriptor": { @@ -4130,6 +4876,9 @@ "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/degenerator": { @@ -4147,18 +4896,31 @@ "version": "3.1.3", "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", - "dev": true + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } }, "node_modules/delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.4.0" + } }, "node_modules/depd": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "engines": { + "node": ">= 0.6" + } }, "node_modules/deprecation": { "version": "2.3.1", @@ -4190,7 +4952,10 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/detect-indent": { "version": "4.0.0", @@ -4199,13 +4964,19 @@ "dev": true, "dependencies": { "repeating": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/diff": { "version": "3.5.0", "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.3.1" + } }, "node_modules/diffie-hellman": { "version": "5.0.3", @@ -4238,13 +5009,22 @@ "sha.js": "~2.4.4", "source-map-support": "~0.5.4", "yargs": "~12.0.1" + }, + "bin": { + "dispensary": "bin/dispensary" + }, + "engines": { + "node": ">= 8.0.0" } }, "node_modules/dispensary/node_modules/ansi-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/dispensary/node_modules/async": { "version": "2.6.3", @@ -4280,6 +5060,9 @@ "pump": "^3.0.0", "quick-format-unescaped": "^3.0.0", "sonic-boom": "^0.6.1" + }, + "bin": { + "pino": "bin.js" } }, "node_modules/dispensary/node_modules/pump": { @@ -4299,6 +5082,9 @@ "dev": true, "dependencies": { "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/dispensary/node_modules/yargs": { @@ -4328,8 +5114,11 @@ "dev": true, "dependencies": { "vscode-languageserver-types": "^3.5.0" - } - }, + }, + "engines": { + "node": "*" + } + }, "node_modules/doctrine": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", @@ -4337,6 +5126,9 @@ "dev": true, "dependencies": { "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/doctypes": { @@ -4364,7 +5156,11 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.4", + "npm": ">=1.2" + } }, "node_modules/domelementtype": { "version": "1.3.1", @@ -4398,6 +5194,9 @@ "dev": true, "dependencies": { "is-obj": "^1.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/dotenv": { @@ -4413,9 +5212,13 @@ "resolved": "https://registry.npmjs.org/dtrace-provider/-/dtrace-provider-0.8.8.tgz", "integrity": "sha512-b7Z7cNtHPhH9EJhNNbbeqTcXB8LGFFZhq1PGgEvpeHlzd36bhbdTWoE/Ba/YguqpBSlAPKnARWhVlhunCMwfxg==", "dev": true, + "hasInstallScript": true, "optional": true, "dependencies": { "nan": "^2.14.0" + }, + "engines": { + "node": ">=0.10" } }, "node_modules/duplexer3": { @@ -4491,18 +5294,27 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/email-validator/-/email-validator-2.0.4.tgz", "integrity": "sha512-gYCwo7kh5S3IDyZPLZf6hSS0MnZT8QmJFqYvbqlDZSbwdZlY6QZWxJ4i/6UhITOJ4XzyI647Bm2MXKCLqnJ4nQ==", - "dev": true + "dev": true, + "engines": { + "node": ">4.0" + } }, "node_modules/emojis-list": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true + "dev": true, + "engines": { + "node": ">= 4" + } }, "node_modules/encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "engines": { + "node": ">= 0.8" + } }, "node_modules/encoding": { "version": "0.1.13", @@ -4520,6 +5332,9 @@ "dev": true, "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/end-of-stream": { @@ -4540,6 +5355,9 @@ "graceful-fs": "^4.1.2", "memory-fs": "^0.5.0", "tapable": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/enhanced-resolve/node_modules/memory-fs": { @@ -4550,6 +5368,9 @@ "dependencies": { "errno": "^0.1.3", "readable-stream": "^2.0.1" + }, + "engines": { + "node": ">=4.3.0 <5.0.0 || >=5.10" } }, "node_modules/entities": { @@ -4564,6 +5385,9 @@ "dev": true, "dependencies": { "prr": "~1.0.1" + }, + "bin": { + "errno": "cli.js" } }, "node_modules/error": { @@ -4601,6 +5425,12 @@ "object.assign": "^4.1.0", "string.prototype.trimend": "^1.0.1", "string.prototype.trimstart": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/es-to-primitive": { @@ -4612,6 +5442,12 @@ "is-callable": "^1.1.4", "is-date-object": "^1.0.1", "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/es5-ext": { @@ -4726,7 +5562,10 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.0.2.tgz", "integrity": "sha512-gPYAU37hYCUhW5euPeR+Y74F7BL+IBsV93j5cvGriSaD1aG6MGsqsV1yamRdrWrb2j3aiZvb0X+UBOWpx3JWtQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, "node_modules/escape-html": { "version": "1.0.3", @@ -4737,7 +5576,10 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.8.0" + } }, "node_modules/escodegen": { "version": "1.14.3", @@ -4748,8 +5590,14 @@ "esprima": "^4.0.1", "estraverse": "^4.2.0", "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" + "optionator": "^0.8.1" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=4.0" }, "optionalDependencies": { "source-map": "~0.6.1" @@ -4760,7 +5608,10 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, - "optional": true + "optional": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/escope": { "version": "3.6.0", @@ -4772,6 +5623,9 @@ "es6-weak-map": "^2.0.1", "esrecurse": "^4.1.0", "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=0.4.0" } }, "node_modules/eslint": { @@ -4818,6 +5672,12 @@ "strip-json-comments": "^2.0.1", "table": "^4.0.3", "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^6.14.0 || ^8.10.0 || >=9.10.0" } }, "node_modules/eslint-plugin-no-unsafe-innerhtml": { @@ -4833,7 +5693,13 @@ "version": "5.7.4", "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz", "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==", - "dev": true + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/acorn-jsx": { "version": "3.0.1", @@ -4848,7 +5714,13 @@ "version": "3.3.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", - "dev": true + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/ajv": { "version": "4.11.8", @@ -4864,19 +5736,28 @@ "version": "1.5.1", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz", "integrity": "sha1-MU3QpLM2j609/NxU7eYXG4htrzw=", - "dev": true + "dev": true, + "peerDependencies": { + "ajv": ">=4.10.0" + } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/ansi-escapes": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/chalk": { "version": "1.1.3", @@ -4889,6 +5770,9 @@ "has-ansi": "^2.0.0", "strip-ansi": "^3.0.0", "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/cli-cursor": { @@ -4898,6 +5782,9 @@ "dev": true, "dependencies": { "restore-cursor": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/eslint": { @@ -4941,6 +5828,12 @@ "table": "^3.7.8", "text-table": "~0.2.0", "user-home": "^2.0.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": ">=4" } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/espree": { @@ -4951,6 +5844,9 @@ "dependencies": { "acorn": "^5.5.0", "acorn-jsx": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/figures": { @@ -4961,13 +5857,19 @@ "dependencies": { "escape-string-regexp": "^1.0.5", "object-assign": "^4.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/globals": { "version": "9.18.0", "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/inquirer": { "version": "0.12.0", @@ -4997,13 +5899,19 @@ "dev": true, "dependencies": { "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/onetime": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/pluralize": { "version": "1.2.1", @@ -5015,7 +5923,10 @@ "version": "1.1.8", "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.4.0" + } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/restore-cursor": { "version": "1.0.1", @@ -5025,6 +5936,9 @@ "dependencies": { "exit-hook": "^1.0.0", "onetime": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/run-async": { @@ -5045,13 +5959,23 @@ "glob": "^7.0.0", "interpret": "^1.0.0", "rechoir": "^0.6.2" + }, + "bin": { + "shjs": "bin/shjs" + }, + "engines": { + "iojs": "*", + "node": ">=0.11.0" } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/slice-ansi": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/string-width": { "version": "1.0.2", @@ -5062,13 +5986,19 @@ "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", "strip-ansi": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.8.0" + } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/table": { "version": "3.8.3", @@ -5088,13 +6018,19 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/table/node_modules/is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/table/node_modules/string-width": { "version": "2.1.1", @@ -5104,6 +6040,9 @@ "dependencies": { "is-fullwidth-code-point": "^2.0.0", "strip-ansi": "^4.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/table/node_modules/strip-ansi": { @@ -5113,6 +6052,9 @@ "dev": true, "dependencies": { "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/eslint-scope": { @@ -5123,24 +6065,34 @@ "dependencies": { "esrecurse": "^4.1.0", "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=4.0.0" } }, "node_modules/eslint-visitor-keys": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/eslint/node_modules/ansi-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/eslint/node_modules/debug": { "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", "dev": true, "dependencies": { "ms": "^2.1.1" @@ -5159,13 +6111,19 @@ "dev": true, "dependencies": { "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/esm": { "version": "3.2.25", "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz", "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, "node_modules/espree": { "version": "4.1.0", @@ -5176,19 +6134,35 @@ "acorn": "^6.0.2", "acorn-jsx": "^5.0.0", "eslint-visitor-keys": "^1.0.0" + }, + "engines": { + "node": ">=6.0.0" } }, "node_modules/espree/node_modules/acorn": { "version": "6.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", - "dev": true + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } }, "node_modules/esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } }, "node_modules/esquery": { "version": "1.3.1", @@ -5197,13 +6171,19 @@ "dev": true, "dependencies": { "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" } }, "node_modules/esquery/node_modules/estraverse": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=4.0" + } }, "node_modules/esrecurse": { "version": "4.2.1", @@ -5212,23 +6192,35 @@ "dev": true, "dependencies": { "estraverse": "^4.1.0" + }, + "engines": { + "node": ">=4.0" } }, "node_modules/estraverse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true + "dev": true, + "engines": { + "node": ">=4.0" + } }, "node_modules/esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "engines": { + "node": ">=0.10.0" + } }, "node_modules/etag": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "engines": { + "node": ">= 0.6" + } }, "node_modules/ev-emitter": { "version": "1.1.1", @@ -5250,6 +6242,7 @@ "version": "0.8.0", "resolved": "https://registry.npmjs.org/event-to-promise/-/event-to-promise-0.8.0.tgz", "integrity": "sha1-S4TxF3K28l93Uvx02XFTGsb1tiY=", + "deprecated": "Use promise-toolbox/fromEvent instead", "dev": true }, "node_modules/eventemitter2": { @@ -5262,7 +6255,10 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/events/-/events-3.2.0.tgz", "integrity": "sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.8.x" + } }, "node_modules/evp_bytestokey": { "version": "1.0.3", @@ -5287,19 +6283,28 @@ "p-finally": "^1.0.0", "signal-exit": "^3.0.0", "strip-eof": "^1.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/exit": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.8.0" + } }, "node_modules/exit-hook": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", "integrity": "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/expand-brackets": { "version": "2.1.4", @@ -5314,6 +6319,9 @@ "regex-not": "^1.0.0", "snapdragon": "^0.8.1", "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/expand-brackets/node_modules/define-property": { @@ -5323,6 +6331,9 @@ "dev": true, "dependencies": { "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/expand-brackets/node_modules/extend-shallow": { @@ -5332,6 +6343,9 @@ "dev": true, "dependencies": { "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/expand-tilde": { @@ -5341,6 +6355,9 @@ "dev": true, "dependencies": { "homedir-polyfill": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/express": { @@ -5378,6 +6395,9 @@ "type-is": "~1.6.18", "utils-merge": "1.0.1", "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" } }, "node_modules/express-sslify": { @@ -5414,6 +6434,9 @@ "dependencies": { "assign-symbols": "^1.0.0", "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/extend-shallow/node_modules/is-extendable": { @@ -5423,6 +6446,9 @@ "dev": true, "dependencies": { "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/external-editor": { @@ -5434,6 +6460,9 @@ "chardet": "^0.4.0", "iconv-lite": "^0.4.17", "tmp": "^0.0.33" + }, + "engines": { + "node": ">=0.12" } }, "node_modules/extglob": { @@ -5450,8 +6479,11 @@ "regex-not": "^1.0.0", "snapdragon": "^0.8.1", "to-regex": "^3.0.1" - } - }, + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/extglob/node_modules/define-property": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", @@ -5459,6 +6491,9 @@ "dev": true, "dependencies": { "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/extglob/node_modules/extend-shallow": { @@ -5468,6 +6503,9 @@ "dev": true, "dependencies": { "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/extglob/node_modules/is-accessor-descriptor": { @@ -5477,6 +6515,9 @@ "dev": true, "dependencies": { "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/extglob/node_modules/is-data-descriptor": { @@ -5486,6 +6527,9 @@ "dev": true, "dependencies": { "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/extglob/node_modules/is-descriptor": { @@ -5497,6 +6541,9 @@ "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/extract-zip": { @@ -5509,13 +6556,19 @@ "debug": "^2.6.9", "mkdirp": "^0.5.4", "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" } }, "node_modules/extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true + "dev": true, + "engines": [ + "node >=0.6.0" + ] }, "node_modules/fast-deep-equal": { "version": "3.1.3", @@ -5536,6 +6589,9 @@ "dev": true, "dependencies": { "fast-deep-equal": "^2.0.1" + }, + "engines": { + "node": ">= 0.4.0" } }, "node_modules/fast-json-patch/node_modules/fast-deep-equal": { @@ -5560,7 +6616,10 @@ "version": "1.5.0", "resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-1.5.0.tgz", "integrity": "sha512-Afo61CgUjkzdvOKDHn08qnZ0kwck38AOGcMlvSGzvJbIab6soAP5rdoQayecGCDsD69AiF9vJBXyq31eoEO2tQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, "node_modules/fast-safe-stringify": { "version": "2.0.7", @@ -5575,6 +6634,9 @@ "dev": true, "dependencies": { "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.4.0" } }, "node_modules/fd-slicer": { @@ -5599,6 +6661,9 @@ "dev": true, "dependencies": { "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=4" } }, "node_modules/file-entry-cache": { @@ -5609,6 +6674,9 @@ "dependencies": { "flat-cache": "^1.2.1", "object-assign": "^4.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/file-sync-cmp": { @@ -5633,6 +6701,9 @@ "is-number": "^3.0.0", "repeat-string": "^1.6.1", "to-regex-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/fill-range/node_modules/extend-shallow": { @@ -5642,6 +6713,9 @@ "dev": true, "dependencies": { "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/finalhandler": { @@ -5656,6 +6730,9 @@ "parseurl": "~1.3.3", "statuses": "~1.5.0", "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" } }, "node_modules/find-cache-dir": { @@ -5667,6 +6744,9 @@ "commondir": "^1.0.1", "make-dir": "^2.0.0", "pkg-dir": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, "node_modules/find-up": { @@ -5676,6 +6756,9 @@ "dev": true, "dependencies": { "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, "node_modules/findup-sync": { @@ -5685,6 +6768,9 @@ "dev": true, "dependencies": { "glob": "~5.0.0" + }, + "engines": { + "node": ">= 0.6.0" } }, "node_modules/findup-sync/node_modules/glob": { @@ -5698,6 +6784,9 @@ "minimatch": "2 || 3", "once": "^1.3.0", "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" } }, "node_modules/fined": { @@ -5711,6 +6800,9 @@ "object.defaults": "^1.1.0", "object.pick": "^1.2.0", "parse-filepath": "^1.0.1" + }, + "engines": { + "node": ">= 0.10" } }, "node_modules/firefox-profile": { @@ -5730,6 +6822,9 @@ "minimist": "^1.1.1", "uuid": "^3.0.0", "xml2js": "~0.4.4" + }, + "bin": { + "firefox-profile": "lib/cli.js" } }, "node_modules/firefox-profile/node_modules/archiver": { @@ -5746,6 +6841,9 @@ "readable-stream": "^2.0.0", "tar-stream": "^1.5.0", "zip-stream": "^1.2.0" + }, + "engines": { + "node": ">= 4" } }, "node_modules/firefox-profile/node_modules/async": { @@ -5764,6 +6862,9 @@ "dev": true, "dependencies": { "readable-stream": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/fizzy-ui-utils": { @@ -5779,7 +6880,10 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz", "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.10" + } }, "node_modules/flat-cache": { "version": "1.3.4", @@ -5791,6 +6895,9 @@ "graceful-fs": "^4.1.2", "rimraf": "~2.6.2", "write": "^0.2.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/flat-cache/node_modules/rimraf": { @@ -5800,6 +6907,9 @@ "dev": true, "dependencies": { "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" } }, "node_modules/flatstr": { @@ -5821,7 +6931,10 @@ "version": "0.7.0", "resolved": "https://registry.npmjs.org/fluent-syntax/-/fluent-syntax-0.7.0.tgz", "integrity": "sha512-T0iqfhC40jrs3aDjYOKgzIQjjhsH2Fa6LnXB6naPv0ymW3DeYMUFa89y9aLKMpi1P9nl2vEimK7blx4tVnUWBg==", - "dev": true + "dev": true, + "engines": { + "node": ">=6.9.0" + } }, "node_modules/flush-write-stream": { "version": "1.1.1", @@ -5837,7 +6950,10 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/for-own": { "version": "1.0.0", @@ -5846,13 +6962,19 @@ "dev": true, "dependencies": { "for-in": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, "node_modules/form-data": { "version": "2.3.3", @@ -5863,12 +6985,18 @@ "asynckit": "^0.4.0", "combined-stream": "^1.0.6", "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" } }, "node_modules/forwarded": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", + "engines": { + "node": ">= 0.6" + } }, "node_modules/fragment-cache": { "version": "0.2.1", @@ -5877,12 +7005,18 @@ "dev": true, "dependencies": { "map-cache": "^0.2.2" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/fresh": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "engines": { + "node": ">= 0.6" + } }, "node_modules/from2": { "version": "2.3.0", @@ -5933,8 +7067,16 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.0.1.tgz", "integrity": "sha512-p+CXqK/iLvDESUWdn3NA3JVO9HxdfI+iXx8xR3DqWgKZvQNiEVpAyUQo0lmwz8rqksb4xaGerG291xuwwhX2kA==", + "deprecated": "\"Please update to latest v2.3 or v2.2\"", "dev": true, - "optional": true + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=6.0.0" + } }, "node_modules/ftp": { "version": "0.3.10", @@ -5944,6 +7086,9 @@ "dependencies": { "readable-stream": "1.1.x", "xregexp": "2.0.0" + }, + "engines": { + "node": ">=0.8.0" } }, "node_modules/ftp/node_modules/isarray": { @@ -5989,6 +7134,9 @@ "when": "3.7.7", "which": "1.2.4", "winreg": "0.0.12" + }, + "bin": { + "fx-runner": "bin/fx-runner" } }, "node_modules/fx-runner/node_modules/commander": { @@ -5998,6 +7146,9 @@ "dev": true, "dependencies": { "graceful-readlink": ">= 1.0.0" + }, + "engines": { + "node": ">= 0.6.x" } }, "node_modules/fx-runner/node_modules/is-absolute": { @@ -6007,13 +7158,19 @@ "dev": true, "dependencies": { "is-relative": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/fx-runner/node_modules/is-relative": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-0.1.3.tgz", "integrity": "sha1-kF/uiuhvRbPsYUvDwVyGnfCHboI=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/fx-runner/node_modules/isexe": { "version": "1.1.2", @@ -6035,6 +7192,9 @@ "dependencies": { "is-absolute": "^0.1.7", "isexe": "^1.1.1" + }, + "bin": { + "which": "bin/which" } }, "node_modules/gaze": { @@ -6044,6 +7204,9 @@ "dev": true, "dependencies": { "globule": "^1.0.0" + }, + "engines": { + "node": ">= 4.0.0" } }, "node_modules/generate-function": { @@ -6068,7 +7231,10 @@ "version": "1.0.0-beta.1", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==", - "dev": true + "dev": true, + "engines": { + "node": ">=6.9.0" + } }, "node_modules/get-caller-file": { "version": "1.0.3", @@ -6080,7 +7246,10 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, "node_modules/get-size": { "version": "2.0.3", @@ -6092,7 +7261,10 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/get-uri": { "version": "2.0.4", @@ -6112,13 +7284,19 @@ "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/getobject": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/getobject/-/getobject-0.1.0.tgz", "integrity": "sha1-BHpEl4n6Fg0Bj1SG7ZEyC27HiFw=", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.8.0" + } }, "node_modules/getpass": { "version": "0.1.7", @@ -6153,7 +7331,10 @@ "version": "4.1.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.4.0" + } }, "node_modules/git-rev-sync/node_modules/shelljs": { "version": "0.7.7", @@ -6164,6 +7345,13 @@ "glob": "^7.0.0", "interpret": "^1.0.0", "rechoir": "^0.6.2" + }, + "bin": { + "shjs": "bin/shjs" + }, + "engines": { + "iojs": "*", + "node": ">=0.11.0" } }, "node_modules/glob": { @@ -6178,6 +7366,12 @@ "minimatch": "^3.0.4", "once": "^1.3.0", "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/glob-parent": { @@ -6207,6 +7401,9 @@ "dev": true, "dependencies": { "ini": "^1.3.4" + }, + "engines": { + "node": ">=4" } }, "node_modules/global-modules": { @@ -6218,6 +7415,9 @@ "global-prefix": "^1.0.1", "is-windows": "^1.0.1", "resolve-dir": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/global-prefix": { @@ -6231,13 +7431,19 @@ "ini": "^1.3.4", "is-windows": "^1.0.1", "which": "^1.2.14" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/globals": { "version": "11.12.0", "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/globule": { "version": "1.3.2", @@ -6248,6 +7454,9 @@ "glob": "~7.1.1", "lodash": "~4.17.10", "minimatch": "~3.0.2" + }, + "engines": { + "node": ">= 0.10" } }, "node_modules/got": { @@ -6267,6 +7476,9 @@ "timed-out": "^4.0.0", "unzip-response": "^2.0.1", "url-parse-lax": "^1.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/graceful-fs": { @@ -6294,7 +7506,10 @@ "version": "1.10.5", "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", - "dev": true + "dev": true, + "engines": { + "node": ">=4.x" + } }, "node_modules/growly": { "version": "1.3.0", @@ -6323,6 +7538,12 @@ "mkdirp": "~1.0.4", "nopt": "~3.0.6", "rimraf": "~3.0.2" + }, + "bin": { + "grunt": "bin/grunt" + }, + "engines": { + "node": ">=8" } }, "node_modules/grunt-cli": { @@ -6336,6 +7557,12 @@ "liftoff": "~2.5.0", "nopt": "~4.0.1", "v8flags": "~3.1.1" + }, + "bin": { + "grunt": "bin/grunt" + }, + "engines": { + "node": ">=4" } }, "node_modules/grunt-cli/node_modules/nopt": { @@ -6346,6 +7573,9 @@ "dependencies": { "abbrev": "1", "osenv": "^0.1.4" + }, + "bin": { + "nopt": "bin/nopt.js" } }, "node_modules/grunt-contrib-clean": { @@ -6356,6 +7586,12 @@ "dependencies": { "async": "^1.5.2", "rimraf": "^2.5.1" + }, + "engines": { + "node": ">= 0.10.0" + }, + "peerDependencies": { + "grunt": ">=0.4.5" } }, "node_modules/grunt-contrib-clean/node_modules/rimraf": { @@ -6365,6 +7601,9 @@ "dev": true, "dependencies": { "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" } }, "node_modules/grunt-contrib-connect": { @@ -6382,6 +7621,12 @@ "portscanner": "^1.0.0", "serve-index": "^1.7.1", "serve-static": "^1.10.0" + }, + "engines": { + "node": ">=0.10.0" + }, + "peerDependencies": { + "grunt": ">=0.4.0" } }, "node_modules/grunt-contrib-copy": { @@ -6392,13 +7637,19 @@ "dependencies": { "chalk": "^1.1.1", "file-sync-cmp": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/grunt-contrib-copy/node_modules/ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/grunt-contrib-copy/node_modules/chalk": { "version": "1.1.3", @@ -6411,13 +7662,19 @@ "has-ansi": "^2.0.0", "strip-ansi": "^3.0.0", "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/grunt-contrib-copy/node_modules/supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.8.0" + } }, "node_modules/grunt-contrib-pug": { "version": "1.0.0", @@ -6427,13 +7684,19 @@ "dependencies": { "chalk": "^1.0.0", "pug": "^2.0.0-alpha3" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/grunt-contrib-pug/node_modules/ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/grunt-contrib-pug/node_modules/chalk": { "version": "1.1.3", @@ -6446,13 +7709,19 @@ "has-ansi": "^2.0.0", "strip-ansi": "^3.0.0", "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/grunt-contrib-pug/node_modules/supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.8.0" + } }, "node_modules/grunt-contrib-stylus": { "version": "1.2.0", @@ -6465,13 +7734,19 @@ "lodash": "^4.0.0", "nib": "^1.1.0", "stylus": "^0.54.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/grunt-contrib-stylus/node_modules/ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/grunt-contrib-stylus/node_modules/chalk": { "version": "1.1.3", @@ -6484,13 +7759,19 @@ "has-ansi": "^2.0.0", "strip-ansi": "^3.0.0", "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/grunt-contrib-stylus/node_modules/supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.8.0" + } }, "node_modules/grunt-contrib-watch": { "version": "1.1.0", @@ -6502,6 +7783,9 @@ "gaze": "^1.1.0", "lodash": "^4.17.10", "tiny-lr": "^1.1.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/grunt-contrib-watch/node_modules/async": { @@ -6524,19 +7808,34 @@ "mkdirp": "^0.5.0", "os-homedir": "^1.0.1", "xtend": "^4.0.1" - } - }, - "node_modules/grunt-exec": { + }, + "bin": { + "grunt-crx": "bin/grunt-crx" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/grunt-exec": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/grunt-exec/-/grunt-exec-3.0.0.tgz", "integrity": "sha512-cgAlreXf3muSYS5LzW0Cc4xHK03BjFOYk0MqCQ/MZ3k1Xz2GU7D+IAJg4UKicxpO+XdONJdx/NJ6kpy2wI+uHg==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.8.0" + }, + "peerDependencies": { + "grunt": ">=0.4" + } }, "node_modules/grunt-known-options": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.1.tgz", "integrity": "sha512-cHwsLqoighpu7TuYj5RonnEuxGVFnztcUqTqp5rXFGYL4OuPFofwC4Ycg7n9fYwvK6F5WbYgeVOwph9Crs2fsQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/grunt-legacy-log": { "version": "2.0.0", @@ -6548,6 +7847,9 @@ "grunt-legacy-log-utils": "~2.0.0", "hooker": "~0.2.3", "lodash": "~4.17.5" + }, + "engines": { + "node": ">= 0.10.0" } }, "node_modules/grunt-legacy-log-utils": { @@ -6558,6 +7860,9 @@ "dependencies": { "chalk": "~2.4.1", "lodash": "~4.17.10" + }, + "engines": { + "node": ">=6" } }, "node_modules/grunt-legacy-util": { @@ -6573,6 +7878,9 @@ "lodash": "~4.17.10", "underscore.string": "~3.3.4", "which": "~1.3.0" + }, + "engines": { + "node": ">= 6" } }, "node_modules/grunt-mocha-test": { @@ -6583,6 +7891,12 @@ "dependencies": { "hooker": "^0.2.3", "mkdirp": "^0.5.0" + }, + "engines": { + "node": ">= 0.10.4" + }, + "peerDependencies": { + "mocha": ">=1.20.0" } }, "node_modules/grunt-webpack": { @@ -6593,28 +7907,47 @@ "dependencies": { "deep-for-each": "^2.0.2", "lodash": "^4.7.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "webpack": "^2.0.0 || ^3.0.0 || ^4.0.0" } }, "node_modules/grunt/node_modules/mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } }, "node_modules/har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/har-validator": { "version": "5.1.5", "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "deprecated": "this library is no longer supported", "dev": true, "dependencies": { "ajv": "^6.12.3", "har-schema": "^2.0.0" + }, + "engines": { + "node": ">=6" } }, "node_modules/has": { @@ -6624,6 +7957,9 @@ "dev": true, "dependencies": { "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" } }, "node_modules/has-ansi": { @@ -6633,24 +7969,39 @@ "dev": true, "dependencies": { "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/has-color": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/has-symbols": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/has-value": { "version": "1.0.0", @@ -6661,6 +8012,9 @@ "get-value": "^2.0.6", "has-values": "^1.0.0", "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/has-values": { @@ -6671,6 +8025,9 @@ "dependencies": { "is-number": "^3.0.0", "kind-of": "^4.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/has-values/node_modules/kind-of": { @@ -6680,6 +8037,9 @@ "dev": true, "dependencies": { "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/hasbin": { @@ -6689,6 +8049,9 @@ "dev": true, "dependencies": { "async": "~1.5" + }, + "engines": { + "node": ">=0.10" } }, "node_modules/hash-base": { @@ -6700,6 +8063,9 @@ "inherits": "^2.0.4", "readable-stream": "^3.6.0", "safe-buffer": "^5.2.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/hash-base/node_modules/inherits": { @@ -6717,13 +8083,30 @@ "inherits": "^2.0.3", "string_decoder": "^1.1.1", "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, "node_modules/hash-base/node_modules/safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, "node_modules/hash-base/node_modules/string_decoder": { "version": "1.3.0", @@ -6748,13 +8131,19 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", - "dev": true + "dev": true, + "bin": { + "he": "bin/he" + } }, "node_modules/highlight.js": { "version": "10.4.1", "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.4.1.tgz", "integrity": "sha512-yR5lWvNz7c85OhVAEAeFhVCc/GV4C30Fjzc/rCP0aCWzc1UUOPUk55dK/qdwTZHBvMZo+eZ2jpk62ndX/xMFlg==", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, "node_modules/hmac-drbg": { "version": "1.0.1", @@ -6775,6 +8164,9 @@ "dependencies": { "os-homedir": "^1.0.0", "os-tmpdir": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/homedir-polyfill": { @@ -6784,13 +8176,19 @@ "dev": true, "dependencies": { "parse-passwd": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/hooker": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz", "integrity": "sha1-uDT3I8xKJCqmWWNFnfbZhMXT2Vk=", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, "node_modules/hosted-git-info": { "version": "2.8.8", @@ -6821,13 +8219,30 @@ "inherits": "^2.0.3", "string_decoder": "^1.1.1", "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, "node_modules/htmlparser2/node_modules/safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, "node_modules/htmlparser2/node_modules/string_decoder": { "version": "1.3.0", @@ -6848,6 +8263,9 @@ "setprototypeof": "1.1.1", "statuses": ">= 1.5.0 < 2", "toidentifier": "1.0.0" + }, + "engines": { + "node": ">= 0.6" } }, "node_modules/http-parser-js": { @@ -6864,6 +8282,9 @@ "dependencies": { "agent-base": "4", "debug": "3.1.0" + }, + "engines": { + "node": ">= 4.5.0" } }, "node_modules/http-proxy-agent/node_modules/debug": { @@ -6884,13 +8305,21 @@ "assert-plus": "^1.0.0", "jsprim": "^1.2.2", "sshpk": "^1.7.0" + }, + "engines": { + "node": ">=0.8", + "npm": ">=1.3.7" } }, "node_modules/http2": { "version": "3.3.7", "resolved": "https://registry.npmjs.org/http2/-/http2-3.3.7.tgz", "integrity": "sha512-puSi8M8WNlFJm9Pk4c/Mbz9Gwparuj3gO9/RRO5zv6piQ0FY+9Qywp0PdWshYgsMJSalixFY7eC6oPu0zRxLAQ==", - "dev": true + "deprecated": "Use the built-in module in node 9.0.0 or newer, instead", + "dev": true, + "engines": { + "node": ">=0.12.0 <9.0.0" + } }, "node_modules/https-browserify": { "version": "1.0.0", @@ -6906,12 +8335,16 @@ "dependencies": { "agent-base": "^4.3.0", "debug": "^3.1.0" + }, + "engines": { + "node": ">= 4.5.0" } }, "node_modules/https-proxy-agent/node_modules/debug": { "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", "dev": true, "dependencies": { "ms": "^2.1.1" @@ -6929,6 +8362,9 @@ "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "dependencies": { "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/ieee754": { @@ -6959,13 +8395,19 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.8.19" + } }, "node_modules/infer-owner": { "version": "1.0.4", @@ -7001,6 +8443,9 @@ "dev": true, "dependencies": { "babel-core": "~6" + }, + "peerDependencies": { + "webpack": "^1 || ^2 || ^3" } }, "node_modules/inquirer": { @@ -7022,13 +8467,19 @@ "string-width": "^2.1.0", "strip-ansi": "^4.0.0", "through": "^2.3.6" + }, + "engines": { + "node": ">=6.0.0" } }, "node_modules/inquirer/node_modules/ansi-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/inquirer/node_modules/strip-ansi": { "version": "4.0.0", @@ -7037,6 +8488,9 @@ "dev": true, "dependencies": { "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/interpret": { @@ -7058,7 +8512,10 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/ip": { "version": "1.1.5", @@ -7069,7 +8526,10 @@ "node_modules/ipaddr.js": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "engines": { + "node": ">= 0.10" + } }, "node_modules/is-absolute": { "version": "1.0.0", @@ -7079,6 +8539,9 @@ "dependencies": { "is-relative": "^1.0.0", "is-windows": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/is-accessor-descriptor": { @@ -7088,6 +8551,9 @@ "dev": true, "dependencies": { "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/is-accessor-descriptor/node_modules/kind-of": { @@ -7097,13 +8563,19 @@ "dev": true, "dependencies": { "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/is-arguments": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.4" + } }, "node_modules/is-arrayish": { "version": "0.2.1", @@ -7118,6 +8590,9 @@ "dev": true, "dependencies": { "binary-extensions": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/is-buffer": { @@ -7129,7 +8604,13 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/is-data-descriptor": { "version": "0.1.4", @@ -7138,6 +8619,9 @@ "dev": true, "dependencies": { "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/is-data-descriptor/node_modules/kind-of": { @@ -7147,13 +8631,22 @@ "dev": true, "dependencies": { "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/is-date-object": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/is-descriptor": { "version": "0.1.6", @@ -7164,13 +8657,19 @@ "is-accessor-descriptor": "^0.1.6", "is-data-descriptor": "^0.1.4", "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/is-descriptor/node_modules/kind-of": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/is-expression": { "version": "3.0.0", @@ -7184,31 +8683,52 @@ "node_modules/is-expression/node_modules/acorn": { "version": "4.0.13", "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", - "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=" + "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } }, "node_modules/is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/is-finite": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, "node_modules/is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/is-glob": { "version": "3.1.0", @@ -7217,6 +8737,9 @@ "dev": true, "dependencies": { "is-extglob": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/is-installed-globally": { @@ -7227,6 +8750,9 @@ "dependencies": { "global-dirs": "^0.1.0", "is-path-inside": "^1.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/is-mergeable-object": { @@ -7258,7 +8784,10 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/is-number": { "version": "3.0.0", @@ -7267,6 +8796,9 @@ "dev": true, "dependencies": { "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/is-number/node_modules/kind-of": { @@ -7276,13 +8808,19 @@ "dev": true, "dependencies": { "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/is-obj": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/is-path-inside": { "version": "1.0.1", @@ -7291,6 +8829,9 @@ "dev": true, "dependencies": { "path-is-inside": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/is-plain-object": { @@ -7300,6 +8841,9 @@ "dev": true, "dependencies": { "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/is-promise": { @@ -7317,7 +8861,10 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/is-regex": { "version": "1.1.1", @@ -7325,6 +8872,12 @@ "integrity": "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==", "dependencies": { "has-symbols": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-relative": { @@ -7334,6 +8887,9 @@ "dev": true, "dependencies": { "is-unc-path": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/is-resolvable": { @@ -7346,13 +8902,19 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/is-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/is-symbol": { "version": "1.0.3", @@ -7361,6 +8923,12 @@ "dev": true, "dependencies": { "has-symbols": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-typedarray": { @@ -7376,6 +8944,9 @@ "dev": true, "dependencies": { "unc-path-regex": "^0.1.2" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/is-utf8": { @@ -7388,13 +8959,19 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/is-wsl": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/isarray": { "version": "1.0.0", @@ -7412,7 +8989,10 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/isotope-layout": { "version": "3.0.6", @@ -7443,8 +9023,18 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/jetpack-id/-/jetpack-id-1.0.0.tgz", "integrity": "sha1-LPn7rkbYB0/Ba33gBxyO/rykc6Y=", + "deprecated": "Jetpack extensions are no longer supported by Firefox. Use web-ext instead to build a WebExtension.", "dev": true }, + "node_modules/jose": { + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/jose/-/jose-3.19.0.tgz", + "integrity": "sha512-G5imz/7oSe8Ohg4EMEhGhMhN+yzACMw7NC7ZrEYSoJekQXHPf+TPQNc/XJkYRm6TFWIbf3HA4OHZhdRv8KsskA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/panva" + } + }, "node_modules/jquery": { "version": "3.5.1", "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.5.1.tgz", @@ -7455,6 +9045,7 @@ "version": "0.6.0", "resolved": "https://registry.npmjs.org/js-select/-/js-select-0.6.0.tgz", "integrity": "sha1-woTiKCTVknrsli3N8kcXSu+w0ZA=", + "deprecated": "Package no longer supported. Contact support@npmjs.com for more info.", "dev": true, "dependencies": { "JSONSelect": "0.2.1", @@ -7480,6 +9071,9 @@ "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, "node_modules/jsbn": { @@ -7492,7 +9086,13 @@ "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } }, "node_modules/json-merge-patch": { "version": "0.2.3", @@ -7549,6 +9149,12 @@ "dev": true, "dependencies": { "minimist": "^1.2.5" + }, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" } }, "node_modules/jsonfile": { @@ -7556,7 +9162,7 @@ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", "dev": true, - "dependencies": { + "optionalDependencies": { "graceful-fs": "^4.1.6" } }, @@ -7564,13 +9170,19 @@ "version": "0.0.0", "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, "node_modules/jsonpointer": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.1.0.tgz", "integrity": "sha512-CXcRvMyTlnR53xMcKnuMzfCA5i/nfblTnnr74CZb6C4vG39eu6w51t7nKmU5MfLfbTgGItliNyjO/ciNPDqClg==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/jsonpointer.js": { "version": "0.4.0", @@ -7582,7 +9194,10 @@ "version": "0.2.1", "resolved": "https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.2.1.tgz", "integrity": "sha1-QVQYpSbTP+MddLTe+jyDbUhewgM=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.4.7" + } }, "node_modules/jsonwebtoken": { "version": "8.2.1", @@ -7600,6 +9215,10 @@ "lodash.once": "^4.0.0", "ms": "^2.1.1", "xtend": "^4.0.1" + }, + "engines": { + "node": ">=0.12", + "npm": ">=1.4.28" } }, "node_modules/jsonwebtoken/node_modules/ms": { @@ -7613,6 +9232,9 @@ "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", "dev": true, + "engines": [ + "node >=0.6.0" + ], "dependencies": { "assert-plus": "1.0.0", "extsprintf": "1.3.0", @@ -7694,7 +9316,10 @@ "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/latest-version": { "version": "3.1.0", @@ -7703,12 +9328,18 @@ "dev": true, "dependencies": { "package-json": "^4.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/lazy-cache": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", - "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=" + "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", + "engines": { + "node": ">=0.10.0" + } }, "node_modules/lazystream": { "version": "1.0.0", @@ -7717,6 +9348,9 @@ "dev": true, "dependencies": { "readable-stream": "^2.0.5" + }, + "engines": { + "node": ">= 0.6.3" } }, "node_modules/lcid": { @@ -7726,13 +9360,19 @@ "dev": true, "dependencies": { "invert-kv": "^2.0.0" + }, + "engines": { + "node": ">=6" } }, "node_modules/leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, "node_modules/levenary": { "version": "1.1.1", @@ -7741,6 +9381,9 @@ "dev": true, "dependencies": { "leven": "^3.1.0" + }, + "engines": { + "node": ">= 6" } }, "node_modules/levn": { @@ -7751,6 +9394,9 @@ "dependencies": { "prelude-ls": "~1.1.2", "type-check": "~0.3.2" + }, + "engines": { + "node": ">= 0.8.0" } }, "node_modules/lie": { @@ -7776,6 +9422,9 @@ "object.map": "^1.0.0", "rechoir": "^0.6.2", "resolve": "^1.1.7" + }, + "engines": { + "node": ">= 0.8" } }, "node_modules/liftoff/node_modules/findup-sync": { @@ -7788,6 +9437,9 @@ "is-glob": "^3.1.0", "micromatch": "^3.0.4", "resolve-dir": "^1.0.1" + }, + "engines": { + "node": ">= 0.10" } }, "node_modules/linkify-it": { @@ -7815,6 +9467,9 @@ "pify": "^2.0.0", "pinkie-promise": "^2.0.0", "strip-bom": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/load-json-file/node_modules/parse-json": { @@ -7824,13 +9479,19 @@ "dev": true, "dependencies": { "error-ex": "^1.2.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/load-json-file/node_modules/pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/load-json-file/node_modules/strip-bom": { "version": "2.0.0", @@ -7839,13 +9500,19 @@ "dev": true, "dependencies": { "is-utf8": "^0.2.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/loader-runner": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", - "dev": true + "dev": true, + "engines": { + "node": ">=4.3.0 <5.0.0 || >=5.10" + } }, "node_modules/loader-utils": { "version": "1.4.0", @@ -7856,6 +9523,9 @@ "big.js": "^5.2.2", "emojis-list": "^3.0.0", "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" } }, "node_modules/loader-utils/node_modules/json5": { @@ -7865,6 +9535,9 @@ "dev": true, "dependencies": { "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" } }, "node_modules/locate-path": { @@ -7875,6 +9548,9 @@ "dependencies": { "p-locate": "^3.0.0", "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, "node_modules/lodash": { @@ -7981,7 +9657,14 @@ "version": "1.6.8", "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.8.tgz", "integrity": "sha512-bsU7+gc9AJ2SqpzxwU3+1fedl8zAntbtC5XYlt3s2j1hJcn2PsXSmgN8TaLG/J1/2mod4+cE/3vNL70/c1RNCA==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.6.0" + }, + "funding": { + "type": "tidelift", + "url": "https://tidelift.com/subscription/pkg/npm-loglevel?utm_medium=referral&utm_source=npm_fund" + } }, "node_modules/lolex": { "version": "2.7.5", @@ -7989,16 +9672,13 @@ "integrity": "sha512-l9x0+1offnKKIzYVjyXU2SiwhXDLekRzKyhnbyldPHvC7BvLPVpdNUNR2KeMAiCN2D/kLNttZgQD5WjSxuBx3Q==", "dev": true }, - "node_modules/long": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", - "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==", - "dev": true - }, "node_modules/longest": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", - "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=" + "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", + "engines": { + "node": ">=0.10.0" + } }, "node_modules/loose-envify": { "version": "1.4.0", @@ -8007,13 +9687,19 @@ "dev": true, "dependencies": { "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" } }, "node_modules/lowercase-keys": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/lru-cache": { "version": "4.1.5", @@ -8029,7 +9715,10 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/macos-release/-/macos-release-1.1.0.tgz", "integrity": "sha512-mmLbumEYMi5nXReB9js3WGsB8UE6cDBWyIO62Z4DNx6GbRhDxHNjA1MlzSpJ2S2KM1wyiPRA0d19uHWYYvMHjA==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/make-dir": { "version": "2.1.0", @@ -8039,6 +9728,9 @@ "dependencies": { "pify": "^4.0.1", "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" } }, "node_modules/make-iterator": { @@ -8048,6 +9740,9 @@ "dev": true, "dependencies": { "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/map-age-cleaner": { @@ -8057,13 +9752,19 @@ "dev": true, "dependencies": { "p-defer": "^1.0.0" + }, + "engines": { + "node": ">=6" } }, "node_modules/map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/map-visit": { "version": "1.0.0", @@ -8072,6 +9773,9 @@ "dev": true, "dependencies": { "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/markdown": { @@ -8143,7 +9847,10 @@ "node_modules/media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "engines": { + "node": ">= 0.6" + } }, "node_modules/mem": { "version": "4.3.0", @@ -8154,6 +9861,9 @@ "map-age-cleaner": "^0.1.1", "mimic-fn": "^2.0.0", "p-is-promise": "^2.0.0" + }, + "engines": { + "node": ">=6" } }, "node_modules/memory-fs": { @@ -8174,7 +9884,10 @@ "node_modules/methods": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "engines": { + "node": ">= 0.6" + } }, "node_modules/micromatch": { "version": "3.1.10", @@ -8195,6 +9908,9 @@ "regex-not": "^1.0.0", "snapdragon": "^0.8.1", "to-regex": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/miller-rabin": { @@ -8205,6 +9921,9 @@ "dependencies": { "bn.js": "^4.0.0", "brorand": "^1.0.1" + }, + "bin": { + "miller-rabin": "bin/miller-rabin" } }, "node_modules/miller-rabin/node_modules/bn.js": { @@ -8216,12 +9935,21 @@ "node_modules/mime": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } }, "node_modules/mime-db": { "version": "1.44.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", - "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==" + "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==", + "engines": { + "node": ">= 0.6" + } }, "node_modules/mime-types": { "version": "2.1.27", @@ -8229,13 +9957,19 @@ "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", "dependencies": { "mime-db": "1.44.0" + }, + "engines": { + "node": ">= 0.6" } }, "node_modules/mimic-fn": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, "node_modules/min-document": { "version": "2.19.0", @@ -8265,6 +9999,9 @@ "dev": true, "dependencies": { "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, "node_modules/minimist": { @@ -8289,6 +10026,9 @@ "pumpify": "^1.3.3", "stream-each": "^1.1.0", "through2": "^2.0.0" + }, + "engines": { + "node": ">=4.0.0" } }, "node_modules/mixin-deep": { @@ -8299,6 +10039,9 @@ "dependencies": { "for-in": "^1.0.2", "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/mixin-deep/node_modules/is-extendable": { @@ -8308,6 +10051,9 @@ "dev": true, "dependencies": { "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/mixin-object": { @@ -8318,13 +10064,19 @@ "dependencies": { "for-in": "^0.1.3", "is-extendable": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/mixin-object/node_modules/for-in": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/mkdirp": { "version": "0.5.5", @@ -8333,6 +10085,9 @@ "dev": true, "dependencies": { "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" } }, "node_modules/mocha": { @@ -8352,6 +10107,13 @@ "minimatch": "3.0.4", "mkdirp": "0.5.1", "supports-color": "5.4.0" + }, + "bin": { + "_mocha": "bin/_mocha", + "mocha": "bin/mocha" + }, + "engines": { + "node": ">= 4.0.0" } }, "node_modules/mocha/node_modules/commander": { @@ -8381,6 +10143,9 @@ "minimatch": "^3.0.4", "once": "^1.3.0", "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" } }, "node_modules/mocha/node_modules/minimist": { @@ -8393,9 +10158,13 @@ "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "deprecated": "Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)", "dev": true, "dependencies": { "minimist": "0.0.8" + }, + "bin": { + "mkdirp": "bin/cmd.js" } }, "node_modules/mocha/node_modules/supports-color": { @@ -8405,13 +10174,19 @@ "dev": true, "dependencies": { "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/moment": { "version": "2.27.0", "resolved": "https://registry.npmjs.org/moment/-/moment-2.27.0.tgz", "integrity": "sha512-al0MUK7cpIcglMv3YF13qSgdAIqxHTO7brRtaz3DlSULbqfazqkc5kEjNrLDOM7fsjshoFIihnU8snrP7zUvhQ==", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, "node_modules/morgan": { "version": "1.10.0", @@ -8424,13 +10199,19 @@ "depd": "~2.0.0", "on-finished": "~2.3.0", "on-headers": "~1.0.2" + }, + "engines": { + "node": ">= 0.8.0" } }, "node_modules/morgan/node_modules/depd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.8" + } }, "node_modules/move-concurrently": { "version": "1.0.1", @@ -8453,6 +10234,9 @@ "dev": true, "dependencies": { "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" } }, "node_modules/ms": { @@ -8470,6 +10254,9 @@ "array-union": "^1.0.1", "arrify": "^1.0.0", "minimatch": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/mute-stream": { @@ -8488,6 +10275,9 @@ "mkdirp": "~0.5.1", "ncp": "~2.0.0", "rimraf": "~2.4.0" + }, + "engines": { + "node": ">=0.8.0" } }, "node_modules/mv/node_modules/glob": { @@ -8502,6 +10292,9 @@ "minimatch": "2 || 3", "once": "^1.3.0", "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" } }, "node_modules/mv/node_modules/rimraf": { @@ -8512,6 +10305,9 @@ "optional": true, "dependencies": { "glob": "^6.0.1" + }, + "bin": { + "rimraf": "bin.js" } }, "node_modules/mz": { @@ -8549,6 +10345,9 @@ "regex-not": "^1.0.0", "snapdragon": "^0.8.1", "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/natural-compare": { @@ -8573,13 +10372,19 @@ "ini": "^1.3.0", "secure-keys": "^1.0.0", "yargs": "^3.19.0" + }, + "engines": { + "node": ">= 0.4.0" } }, "node_modules/nconf/node_modules/camelcase": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/nconf/node_modules/cliui": { "version": "3.2.0", @@ -8596,7 +10401,10 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/nconf/node_modules/is-fullwidth-code-point": { "version": "1.0.0", @@ -8605,6 +10413,9 @@ "dev": true, "dependencies": { "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/nconf/node_modules/lcid": { @@ -8614,6 +10425,9 @@ "dev": true, "dependencies": { "invert-kv": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/nconf/node_modules/os-locale": { @@ -8623,6 +10437,9 @@ "dev": true, "dependencies": { "lcid": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/nconf/node_modules/string-width": { @@ -8634,13 +10451,22 @@ "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", "strip-ansi": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/nconf/node_modules/window-size": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.4.tgz", "integrity": "sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY=", - "dev": true + "dev": true, + "bin": { + "window-size": "cli.js" + }, + "engines": { + "node": ">= 0.10.0" + } }, "node_modules/nconf/node_modules/y18n": { "version": "3.2.1", @@ -8668,7 +10494,10 @@ "resolved": "https://registry.npmjs.org/ncp/-/ncp-2.0.0.tgz", "integrity": "sha1-GVoh1sRuNh0vsSgbo4uR6d9727M=", "dev": true, - "optional": true + "optional": true, + "bin": { + "ncp": "bin/ncp" + } }, "node_modules/needle": { "version": "2.5.0", @@ -8679,12 +10508,19 @@ "debug": "^3.2.6", "iconv-lite": "^0.4.4", "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" } }, "node_modules/needle/node_modules/debug": { "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", "dev": true, "dependencies": { "ms": "^2.1.1" @@ -8705,7 +10541,10 @@ "node_modules/negotiator": { "version": "0.6.2", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", + "engines": { + "node": ">= 0.6" + } }, "node_modules/neo-async": { "version": "2.6.2", @@ -8717,7 +10556,10 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/netmask/-/netmask-1.0.6.tgz", "integrity": "sha1-ICl+idhvb2QA8lDZ9Pa0wZRfzTU=", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.4.0" + } }, "node_modules/next-tick": { "version": "1.0.0", @@ -8732,6 +10574,9 @@ "dev": true, "dependencies": { "stylus": "0.54.5" + }, + "engines": { + "node": "*" } }, "node_modules/nib/node_modules/glob": { @@ -8746,6 +10591,9 @@ "minimatch": "^3.0.2", "once": "^1.3.0", "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" } }, "node_modules/nib/node_modules/source-map": { @@ -8755,6 +10603,9 @@ "dev": true, "dependencies": { "amdefine": ">=0.0.4" + }, + "engines": { + "node": ">=0.8.0" } }, "node_modules/nib/node_modules/stylus": { @@ -8769,6 +10620,12 @@ "mkdirp": "0.5.x", "sax": "0.5.x", "source-map": "0.1.x" + }, + "bin": { + "stylus": "bin/stylus" + }, + "engines": { + "node": "*" } }, "node_modules/nice-try": { @@ -8824,6 +10681,44 @@ "isarray": "0.0.1" } }, + "node_modules/nock": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/nock/-/nock-13.1.3.tgz", + "integrity": "sha512-YKj0rKQWMGiiIO+Y65Ut8OEgYM3PplLU2+GAhnPmqZdBd6z5IskgdBqWmjzA6lH3RF0S2a3wiAlrMOF5Iv2Jeg==", + "dev": true, + "dependencies": { + "debug": "^4.1.0", + "json-stringify-safe": "^5.0.1", + "lodash.set": "^4.3.2", + "propagate": "^2.0.0" + }, + "engines": { + "node": ">= 10.13" + } + }, + "node_modules/nock/node_modules/debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/nock/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, "node_modules/node-fetch": { "version": "2.6.1", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", @@ -8833,35 +10728,14 @@ } }, "node_modules/node-forge": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.8.5.tgz", - "integrity": "sha512-vFMQIWt+J/7FLNyKouZ9TazT74PRV3wgv9UT4cRjC8BffxFbKXkgIWR42URCPSnHm/QDz6BOlb2Q0U4+VQT67Q==", - "dev": true - }, - "node_modules/node-jose": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/node-jose/-/node-jose-1.1.4.tgz", - "integrity": "sha512-L31IFwL3pWWcMHxxidCY51ezqrDXMkvlT/5pLTfNw5sXmmOLJuN6ug7txzF/iuZN55cRpyOmoJrotwBQIoo5Lw==", + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", + "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==", "dev": true, - "dependencies": { - "base64url": "^3.0.1", - "browserify-zlib": "^0.2.0", - "buffer": "^5.5.0", - "es6-promise": "^4.2.8", - "lodash": "^4.17.15", - "long": "^4.0.0", - "node-forge": "^0.8.5", - "process": "^0.11.10", - "react-zlib-js": "^1.0.4", - "uuid": "^3.3.3" + "engines": { + "node": ">= 6.0.0" } }, - "node_modules/node-jose/node_modules/es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", - "dev": true - }, "node_modules/node-libs-browser": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", @@ -8914,7 +10788,21 @@ "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, "node_modules/node-libs-browser/node_modules/string_decoder": { "version": "1.3.0", @@ -8938,7 +10826,10 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/node-notifier": { "version": "5.2.1", @@ -8978,6 +10869,7 @@ "version": "1.8.1", "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz", "integrity": "sha1-IVH3Ikcrp55Qp2/BJbuMjy5Nwqc=", + "deprecated": "Package no longer supported. Contact support@npmjs.com for more info.", "dev": true, "dependencies": { "chalk": "~0.4.0", @@ -8988,7 +10880,10 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.8.0" + } }, "node_modules/nomnom/node_modules/chalk": { "version": "0.4.0", @@ -8999,13 +10894,22 @@ "ansi-styles": "~1.0.0", "has-color": "~0.1.0", "strip-ansi": "~0.1.0" + }, + "engines": { + "node": ">=0.8.0" } }, "node_modules/nomnom/node_modules/strip-ansi": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", - "dev": true + "dev": true, + "bin": { + "strip-ansi": "cli.js" + }, + "engines": { + "node": ">=0.8.0" + } }, "node_modules/nopt": { "version": "3.0.6", @@ -9014,6 +10918,9 @@ "dev": true, "dependencies": { "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" } }, "node_modules/normalize-package-data": { @@ -9035,6 +10942,9 @@ "dev": true, "dependencies": { "remove-trailing-separator": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/npm-run-path": { @@ -9044,6 +10954,9 @@ "dev": true, "dependencies": { "path-key": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/nth-check": { @@ -9059,18 +10972,27 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/oauth-sign": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "engines": { + "node": ">=0.10.0" + } }, "node_modules/object-copy": { "version": "0.1.0", @@ -9081,6 +11003,9 @@ "copy-descriptor": "^0.1.0", "define-property": "^0.2.5", "kind-of": "^3.0.3" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/object-copy/node_modules/define-property": { @@ -9090,6 +11015,9 @@ "dev": true, "dependencies": { "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/object-copy/node_modules/kind-of": { @@ -9099,13 +11027,19 @@ "dev": true, "dependencies": { "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/object-inspect": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.8.0.tgz", "integrity": "sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==", - "dev": true + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/object-is": { "version": "1.1.2", @@ -9115,13 +11049,22 @@ "dependencies": { "define-properties": "^1.1.3", "es-abstract": "^1.17.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.4" + } }, "node_modules/object-visit": { "version": "1.0.1", @@ -9130,6 +11073,9 @@ "dev": true, "dependencies": { "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/object.assign": { @@ -9142,6 +11088,9 @@ "function-bind": "^1.1.1", "has-symbols": "^1.0.0", "object-keys": "^1.0.11" + }, + "engines": { + "node": ">= 0.4" } }, "node_modules/object.defaults": { @@ -9154,6 +11103,9 @@ "array-slice": "^1.0.0", "for-own": "^1.0.0", "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/object.map": { @@ -9164,6 +11116,9 @@ "dependencies": { "for-own": "^1.0.0", "make-iterator": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/object.pick": { @@ -9173,6 +11128,9 @@ "dev": true, "dependencies": { "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/on-finished": { @@ -9181,13 +11139,19 @@ "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", "dependencies": { "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" } }, "node_modules/on-headers": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.8" + } }, "node_modules/once": { "version": "1.4.0", @@ -9204,13 +11168,19 @@ "dev": true, "dependencies": { "mimic-fn": "^1.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/onetime/node_modules/mimic-fn": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/opn": { "version": "4.0.2", @@ -9220,6 +11190,9 @@ "dependencies": { "object-assign": "^4.0.1", "pinkie-promise": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/optionator": { @@ -9234,6 +11207,9 @@ "prelude-ls": "~1.1.2", "type-check": "~0.3.2", "word-wrap": "~1.2.3" + }, + "engines": { + "node": ">= 0.8.0" } }, "node_modules/os-browserify": { @@ -9246,7 +11222,10 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/os-locale": { "version": "3.0.1", @@ -9257,6 +11236,9 @@ "execa": "^0.10.0", "lcid": "^2.0.0", "mem": "^4.0.0" + }, + "engines": { + "node": ">=6" } }, "node_modules/os-name": { @@ -9267,19 +11249,28 @@ "dependencies": { "macos-release": "^1.0.0", "win-release": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/os-shim": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/os-shim/-/os-shim-0.1.3.tgz", "integrity": "sha1-a2LDeRz3kJ6jXtRuF2WLtBfLORc=", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.4.0" + } }, "node_modules/os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/osenv": { "version": "0.1.5", @@ -9306,19 +11297,28 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/p-is-promise": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, "node_modules/p-limit": { "version": "2.3.0", @@ -9327,6 +11327,12 @@ "dev": true, "dependencies": { "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/p-locate": { @@ -9336,13 +11342,19 @@ "dev": true, "dependencies": { "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" } }, "node_modules/p-try": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, "node_modules/pac-proxy-agent": { "version": "2.0.2", @@ -9364,6 +11376,7 @@ "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", "dev": true, "dependencies": { "ms": "^2.1.1" @@ -9398,6 +11411,9 @@ "registry-auth-token": "^3.0.1", "registry-url": "^3.0.3", "semver": "^5.1.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/pako": { @@ -9440,6 +11456,9 @@ "is-absolute": "^1.0.0", "map-cache": "^0.2.0", "path-root": "^0.1.1" + }, + "engines": { + "node": ">=0.8" } }, "node_modules/parse-json": { @@ -9450,13 +11469,19 @@ "dependencies": { "error-ex": "^1.3.1", "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" } }, "node_modules/parse-passwd": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/parse5": { "version": "3.0.3", @@ -9470,13 +11495,19 @@ "node_modules/parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } }, "node_modules/pascalcase": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/path": { "version": "0.12.7", @@ -9504,13 +11535,19 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/path-is-inside": { "version": "1.0.2", @@ -9522,7 +11559,10 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/path-parse": { "version": "1.0.6", @@ -9536,13 +11576,19 @@ "dev": true, "dependencies": { "path-root-regex": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/path-root-regex": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/path-to-regexp": { "version": "0.1.7", @@ -9558,19 +11604,28 @@ "graceful-fs": "^4.1.2", "pify": "^2.0.0", "pinkie-promise": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/path-type/node_modules/pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/pathval": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz", "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, "node_modules/pbkdf2": { "version": "3.1.1", @@ -9583,6 +11638,9 @@ "ripemd160": "^2.0.1", "safe-buffer": "^5.0.1", "sha.js": "^2.4.8" + }, + "engines": { + "node": ">=0.12" } }, "node_modules/pend": { @@ -9602,19 +11660,31 @@ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", "dev": true, - "optional": true + "optional": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } }, "node_modules/pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, "node_modules/pinkie": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/pinkie-promise": { "version": "2.0.1", @@ -9623,6 +11693,9 @@ "dev": true, "dependencies": { "pinkie": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/pino": { @@ -9639,6 +11712,9 @@ "pump": "^3.0.0", "quick-format-unescaped": "^3.0.0", "sonic-boom": "^0.6.3" + }, + "bin": { + "pino": "bin.js" } }, "node_modules/pino-std-serializers": { @@ -9664,6 +11740,9 @@ "dev": true, "dependencies": { "node-modules-regexp": "^1.0.0" + }, + "engines": { + "node": ">= 6" } }, "node_modules/pkg-dir": { @@ -9673,13 +11752,19 @@ "dev": true, "dependencies": { "find-up": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, "node_modules/pluralize": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/po2json": { "version": "0.4.5", @@ -9689,13 +11774,24 @@ "dependencies": { "gettext-parser": "1.1.0", "nomnom": "1.8.1" + }, + "bin": { + "po2json": "bin/po2json" + }, + "engines": { + "node": ">= 0.8.0" } }, "node_modules/popper.js": { "version": "1.16.1", "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", - "dev": true + "deprecated": "You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1", + "dev": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } }, "node_modules/portscanner": { "version": "1.2.0", @@ -9704,13 +11800,20 @@ "dev": true, "dependencies": { "async": "1.5.2" + }, + "engines": { + "node": ">=0.4", + "npm": ">=1.0.0" } }, "node_modules/posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/postcss": { "version": "7.0.6", @@ -9721,31 +11824,46 @@ "chalk": "^2.4.1", "source-map": "^0.6.1", "supports-color": "^5.5.0" + }, + "engines": { + "node": ">=6.0.0" } }, "node_modules/postcss/node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/prelude-ls": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.8.0" + } }, "node_modules/prepend-http": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/private": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.6" + } }, "node_modules/probe-image-size": { "version": "4.0.0", @@ -9765,7 +11883,10 @@ "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.6.0" + } }, "node_modules/process-nextick-args": { "version": "2.0.1", @@ -9777,7 +11898,10 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.4.0" + } }, "node_modules/promise": { "version": "7.3.1", @@ -9797,7 +11921,20 @@ "version": "0.1.1", "resolved": "https://registry.npmjs.org/promise.any/-/promise.any-0.1.1.tgz", "integrity": "sha1-Fg+JisPHW1y7cw/yOgyi8XQHvzo=", - "dev": true + "deprecated": "Please use v1.0 or higher, which is now compliant with the proposed JS spec", + "dev": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/propagate": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/propagate/-/propagate-2.0.1.tgz", + "integrity": "sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==", + "dev": true, + "engines": { + "node": ">= 8" + } }, "node_modules/proxy-addr": { "version": "2.0.6", @@ -9806,6 +11943,9 @@ "dependencies": { "forwarded": "~0.1.2", "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" } }, "node_modules/proxy-agent": { @@ -9828,6 +11968,7 @@ "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", "dev": true, "dependencies": { "ms": "^2.1.1" @@ -10022,13 +12163,17 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, "node_modules/puppeteer": { "version": "1.20.0", "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-1.20.0.tgz", "integrity": "sha512-bt48RDBy2eIwZPrkgbcwHtb51mj2nKvHOPMaSH2IsWiv7lOG9k9zhaRzpDZafrk05ajMc3cu+lSQYYOfH2DkVQ==", "dev": true, + "hasInstallScript": true, "dependencies": { "debug": "^4.1.0", "extract-zip": "^1.6.6", @@ -10038,12 +12183,16 @@ "proxy-from-env": "^1.0.0", "rimraf": "^2.6.1", "ws": "^6.1.0" + }, + "engines": { + "node": ">=6.4.0" } }, "node_modules/puppeteer/node_modules/debug": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", "dev": true, "dependencies": { "ms": "^2.1.1" @@ -10053,7 +12202,13 @@ "version": "2.4.6", "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==", - "dev": true + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } }, "node_modules/puppeteer/node_modules/ms": { "version": "2.1.2", @@ -10068,23 +12223,36 @@ "dev": true, "dependencies": { "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" } }, "node_modules/qs": { "version": "6.7.0", "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", + "engines": { + "node": ">=0.6" + } }, "node_modules/querystring": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=" + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", + "engines": { + "node": ">=0.4.x" + } }, "node_modules/querystring-es3": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.4.x" + } }, "node_modules/quick-format-unescaped": { "version": "3.0.3", @@ -10114,7 +12282,10 @@ "node_modules/range-parser": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } }, "node_modules/raw-body": { "version": "2.4.0", @@ -10125,6 +12296,9 @@ "http-errors": "1.7.2", "iconv-lite": "0.4.24", "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" } }, "node_modules/rc": { @@ -10137,14 +12311,11 @@ "ini": "~1.3.0", "minimist": "^1.2.0", "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" } }, - "node_modules/react-zlib-js": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/react-zlib-js/-/react-zlib-js-1.0.5.tgz", - "integrity": "sha512-TLcPdmqhIl+ylwOwlfm1WUuI7NVvhAv3L74d1AabhjyaAbmLOROTA/Q4EQ/UMCFCOjIkVim9fT3UZOQSFk/mlA==", - "dev": true - }, "node_modules/read-pkg": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", @@ -10154,6 +12325,9 @@ "load-json-file": "^1.0.0", "normalize-package-data": "^2.3.2", "path-type": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/read-pkg-up": { @@ -10164,6 +12338,9 @@ "dependencies": { "find-up": "^1.0.0", "read-pkg": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/read-pkg-up/node_modules/find-up": { @@ -10174,6 +12351,9 @@ "dependencies": { "path-exists": "^2.0.0", "pinkie-promise": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/read-pkg-up/node_modules/path-exists": { @@ -10183,6 +12363,9 @@ "dev": true, "dependencies": { "pinkie-promise": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/readable-stream": { @@ -10218,6 +12401,9 @@ "graceful-fs": "^4.1.11", "micromatch": "^3.1.10", "readable-stream": "^2.0.2" + }, + "engines": { + "node": ">=0.10" } }, "node_modules/readline2": { @@ -10238,6 +12424,9 @@ "dev": true, "dependencies": { "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/readline2/node_modules/mute-stream": { @@ -10253,6 +12442,9 @@ "dev": true, "dependencies": { "resolve": "^1.1.6" + }, + "engines": { + "node": ">= 0.10" } }, "node_modules/recursive-readdir": { @@ -10262,6 +12454,9 @@ "dev": true, "dependencies": { "minimatch": "3.0.4" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/regenerate": { @@ -10277,6 +12472,9 @@ "dev": true, "dependencies": { "regenerate": "^1.4.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/regenerator-runtime": { @@ -10302,6 +12500,9 @@ "dependencies": { "extend-shallow": "^3.0.2", "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/regexp.prototype.flags": { @@ -10312,13 +12513,22 @@ "dependencies": { "define-properties": "^1.1.3", "es-abstract": "^1.17.0-next.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/regexpp": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-1.1.0.tgz", "integrity": "sha512-LOPw8FpgdQF9etWMaAfG/WRthIdXJGYp4mJ2Jgn/2lpkbod9jPn0t9UqN7AxBOKNfzRbYyVfgc7Vk4t/MpnXgw==", - "dev": true + "dev": true, + "engines": { + "node": ">=4.0.0" + } }, "node_modules/regexpu-core": { "version": "4.7.0", @@ -10332,6 +12542,9 @@ "regjsparser": "^0.6.4", "unicode-match-property-ecmascript": "^1.0.4", "unicode-match-property-value-ecmascript": "^1.2.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/registry-auth-token": { @@ -10351,6 +12564,9 @@ "dev": true, "dependencies": { "rc": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/regjsgen": { @@ -10366,13 +12582,19 @@ "dev": true, "dependencies": { "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" } }, "node_modules/regjsparser/node_modules/jsesc": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } }, "node_modules/relaxed-json": { "version": "1.0.1", @@ -10382,13 +12604,22 @@ "dependencies": { "chalk": "^1.0.0", "commander": "^2.6.0" + }, + "bin": { + "rjson": "bin/rjson.js" + }, + "engines": { + "node": ">= 0.10.0" } }, "node_modules/relaxed-json/node_modules/ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/relaxed-json/node_modules/chalk": { "version": "1.1.3", @@ -10401,13 +12632,19 @@ "has-ansi": "^2.0.0", "strip-ansi": "^3.0.0", "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/relaxed-json/node_modules/supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.8.0" + } }, "node_modules/remove-trailing-separator": { "version": "1.1.0", @@ -10419,12 +12656,18 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/repeat-string": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "engines": { + "node": ">=0.10" + } }, "node_modules/repeating": { "version": "2.0.1", @@ -10433,12 +12676,16 @@ "dev": true, "dependencies": { "is-finite": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/request": { "version": "2.88.2", "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", "dev": true, "dependencies": { "aws-sign2": "~0.7.0", @@ -10461,6 +12708,9 @@ "tough-cookie": "~2.5.0", "tunnel-agent": "^0.6.0", "uuid": "^3.3.2" + }, + "engines": { + "node": ">= 6" } }, "node_modules/request-promise-core": { @@ -10470,30 +12720,49 @@ "dev": true, "dependencies": { "lodash": "^4.17.19" + }, + "engines": { + "node": ">=0.10.0" + }, + "peerDependencies": { + "request": "^2.34" } }, "node_modules/request-promise-native": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.9.tgz", "integrity": "sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==", + "deprecated": "request-promise-native has been deprecated because it extends the now deprecated request package, see https://github.com/request/request/issues/3142", "dev": true, "dependencies": { "request-promise-core": "1.1.4", "stealthy-require": "^1.1.1", "tough-cookie": "^2.3.3" + }, + "engines": { + "node": ">=0.12.0" + }, + "peerDependencies": { + "request": "^2.34" } }, "node_modules/request/node_modules/qs": { "version": "6.5.2", "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.6" + } }, "node_modules/require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/require-main-filename": { "version": "1.0.1", @@ -10509,6 +12778,9 @@ "dependencies": { "caller-path": "^0.1.0", "resolve-from": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/resolve": { @@ -10517,6 +12789,9 @@ "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", "dependencies": { "path-parse": "^1.0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/resolve-dir": { @@ -10527,18 +12802,25 @@ "dependencies": { "expand-tilde": "^2.0.0", "global-modules": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/resolve-from": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz", "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/resolve-url": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "deprecated": "https://github.com/lydell/resolve-url#deprecated", "dev": true }, "node_modules/restore-cursor": { @@ -10549,13 +12831,19 @@ "dependencies": { "onetime": "^2.0.0", "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=4" } }, "node_modules/ret": { "version": "0.1.15", "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.12" + } }, "node_modules/right-align": { "version": "0.1.3", @@ -10563,6 +12851,9 @@ "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", "dependencies": { "align-text": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/rimraf": { @@ -10572,6 +12863,12 @@ "dev": true, "dependencies": { "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/ripemd160": { @@ -10588,7 +12885,10 @@ "version": "2.4.1", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.12.0" + } }, "node_modules/run-queue": { "version": "1.0.3", @@ -10621,6 +12921,9 @@ "dev": true, "dependencies": { "symbol-observable": "1.0.1" + }, + "engines": { + "npm": ">=2.0.0" } }, "node_modules/safe-buffer": { @@ -10659,6 +12962,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/samsam/-/samsam-1.3.0.tgz", "integrity": "sha512-1HwIYD/8UlOtFS3QO3w7ey+SdSDFE4HRNLZoZRYVQefrOY3l17epswImeB1ijgJFQJodIaHcwkp3r/myBjFVbg==", + "deprecated": "This package has been deprecated in favour of @sinonjs/samsam", "dev": true }, "node_modules/sax": { @@ -10676,6 +12980,13 @@ "@types/json-schema": "^7.0.4", "ajv": "^6.12.2", "ajv-keywords": "^3.4.1" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, "node_modules/secure-keys": { @@ -10688,7 +12999,10 @@ "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true + "dev": true, + "bin": { + "semver": "bin/semver" + } }, "node_modules/semver-diff": { "version": "2.1.0", @@ -10697,6 +13011,9 @@ "dev": true, "dependencies": { "semver": "^5.0.3" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/send": { @@ -10717,6 +13034,9 @@ "on-finished": "~2.3.0", "range-parser": "~1.2.1", "statuses": "~1.5.0" + }, + "engines": { + "node": ">= 0.8.0" } }, "node_modules/send/node_modules/ms": { @@ -10743,6 +13063,9 @@ "http-errors": "~1.6.2", "mime-types": "~2.1.17", "parseurl": "~1.3.2" + }, + "engines": { + "node": ">= 0.8.0" } }, "node_modules/serve-index/node_modules/http-errors": { @@ -10755,6 +13078,9 @@ "inherits": "2.0.3", "setprototypeof": "1.1.0", "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" } }, "node_modules/serve-index/node_modules/setprototypeof": { @@ -10772,6 +13098,9 @@ "escape-html": "~1.0.3", "parseurl": "~1.3.3", "send": "0.17.1" + }, + "engines": { + "node": ">= 0.8.0" } }, "node_modules/set-blocking": { @@ -10784,7 +13113,10 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/set-value": { "version": "2.0.1", @@ -10796,6 +13128,9 @@ "is-extendable": "^0.1.1", "is-plain-object": "^2.0.3", "split-string": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/set-value/node_modules/extend-shallow": { @@ -10805,6 +13140,9 @@ "dev": true, "dependencies": { "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/setimmediate": { @@ -10826,6 +13164,9 @@ "dependencies": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" + }, + "bin": { + "sha.js": "bin.js" } }, "node_modules/shallow-clone": { @@ -10838,6 +13179,9 @@ "kind-of": "^2.0.1", "lazy-cache": "^0.2.3", "mixin-object": "^2.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/shallow-clone/node_modules/kind-of": { @@ -10847,13 +13191,19 @@ "dev": true, "dependencies": { "is-buffer": "^1.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/shallow-clone/node_modules/lazy-cache": { "version": "0.2.7", "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-0.2.7.tgz", "integrity": "sha1-f+3fLctu23fRHvHRF6tf/fCrG2U=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/shebang-command": { "version": "1.2.0", @@ -10862,13 +13212,19 @@ "dev": true, "dependencies": { "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/shebang-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/shell-quote": { "version": "1.6.1", @@ -10891,6 +13247,12 @@ "glob": "^7.0.0", "interpret": "^1.0.0", "rechoir": "^0.6.2" + }, + "bin": { + "shjs": "bin/shjs" + }, + "engines": { + "node": ">=4" } }, "node_modules/shellwords": { @@ -10956,10 +13318,14 @@ "version": "5.0.3", "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", + "deprecated": "this library is no longer supported", "dev": true, "dependencies": { "ajv": "^5.1.0", "har-schema": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/sign-addon/node_modules/json-schema-traverse": { @@ -10983,7 +13349,10 @@ "version": "0.8.2", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, "node_modules/sign-addon/node_modules/punycode": { "version": "1.4.1", @@ -10995,7 +13364,10 @@ "version": "6.5.2", "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.6" + } }, "node_modules/sign-addon/node_modules/regenerator-runtime": { "version": "0.9.6", @@ -11007,6 +13379,7 @@ "version": "2.87.0", "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", + "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", "dev": true, "dependencies": { "aws-sign2": "~0.7.0", @@ -11029,6 +13402,9 @@ "tough-cookie": "~2.3.3", "tunnel-agent": "^0.6.0", "uuid": "^3.1.0" + }, + "engines": { + "node": ">= 4" } }, "node_modules/sign-addon/node_modules/source-map-support": { @@ -11047,6 +13423,9 @@ "dev": true, "dependencies": { "punycode": "^1.4.1" + }, + "engines": { + "node": ">=0.8" } }, "node_modules/signal-exit": { @@ -11060,6 +13439,7 @@ "resolved": "https://registry.npmjs.org/sinon/-/sinon-4.5.0.tgz", "integrity": "sha512-trdx+mB0VBBgoYucy6a9L7/jfQOmvGeaKZT4OOJ+lPAtI8623xyGr8wLiE4eojzBS8G9yXbhx42GHUOVLr4X2w==", "dev": true, + "hasInstallScript": true, "dependencies": { "@sinonjs/formatio": "^2.0.0", "diff": "^3.1.0", @@ -11074,13 +13454,20 @@ "version": "2.14.0", "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-2.14.0.tgz", "integrity": "sha512-9stIF1utB0ywNHNT7RgiXbdmen8QDCRsrTjw+G9TgKt1Yexjiv8TOWZ6WHsTPz57Yky3DIswZvEqX8fpuHNDtQ==", - "dev": true + "dev": true, + "peerDependencies": { + "chai": ">=1.9.2 <5", + "sinon": "^1.4.0 || ^2.1.0 || ^3.0.0 || ^4.0.0" + } }, "node_modules/slash": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/slice-ansi": { "version": "1.0.0", @@ -11089,13 +13476,20 @@ "dev": true, "dependencies": { "is-fullwidth-code-point": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/smart-buffer": { "version": "1.1.15", "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-1.1.15.tgz", "integrity": "sha1-fxFLW2X6s+KjWqd1uxLw0cZJvxY=", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.10.15", + "npm": ">= 1.3.5" + } }, "node_modules/snapdragon": { "version": "0.8.2", @@ -11111,6 +13505,9 @@ "source-map": "^0.5.6", "source-map-resolve": "^0.5.0", "use": "^3.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/snapdragon-node": { @@ -11122,6 +13519,9 @@ "define-property": "^1.0.0", "isobject": "^3.0.0", "snapdragon-util": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/snapdragon-node/node_modules/define-property": { @@ -11131,6 +13531,9 @@ "dev": true, "dependencies": { "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/snapdragon-node/node_modules/is-accessor-descriptor": { @@ -11140,6 +13543,9 @@ "dev": true, "dependencies": { "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/snapdragon-node/node_modules/is-data-descriptor": { @@ -11149,6 +13555,9 @@ "dev": true, "dependencies": { "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/snapdragon-node/node_modules/is-descriptor": { @@ -11160,6 +13569,9 @@ "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/snapdragon-util": { @@ -11169,6 +13581,9 @@ "dev": true, "dependencies": { "kind-of": "^3.2.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/snapdragon-util/node_modules/kind-of": { @@ -11178,6 +13593,9 @@ "dev": true, "dependencies": { "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/snapdragon/node_modules/define-property": { @@ -11187,6 +13605,9 @@ "dev": true, "dependencies": { "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/snapdragon/node_modules/extend-shallow": { @@ -11196,6 +13617,9 @@ "dev": true, "dependencies": { "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/snyk": { @@ -11240,6 +13664,12 @@ "then-fs": "^2.0.0", "undefsafe": "^2.0.0", "uuid": "^3.2.1" + }, + "bin": { + "snyk": "dist/cli/index.js" + }, + "engines": { + "node": ">=4" } }, "node_modules/snyk-config": { @@ -11257,6 +13687,7 @@ "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", "dev": true, "dependencies": { "ms": "^2.1.1" @@ -11283,6 +13714,7 @@ "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", "dev": true, "dependencies": { "ms": "^2.1.1" @@ -11328,6 +13760,7 @@ "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", "dev": true, "dependencies": { "ms": "^2.1.1" @@ -11357,6 +13790,12 @@ "source-map-support": "^0.5.7", "tslib": "^1.9.3", "uuid": "^3.3.2" + }, + "bin": { + "parse-nodejs-lockfile": "bin/index.js" + }, + "engines": { + "node": ">=4" } }, "node_modules/snyk-nodejs-lockfile-parser/node_modules/lodash": { @@ -11381,6 +13820,7 @@ "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", "dev": true, "dependencies": { "ms": "^2.1.1" @@ -11407,6 +13847,7 @@ "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", "dev": true, "dependencies": { "ms": "^2.1.1" @@ -11439,6 +13880,7 @@ "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", "dev": true, "dependencies": { "ms": "^2.1.1" @@ -11496,6 +13938,7 @@ "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", "dev": true, "dependencies": { "ms": "^2.1.1" @@ -11511,6 +13954,7 @@ "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", "dev": true, "dependencies": { "ms": "^2.1.1" @@ -11535,6 +13979,9 @@ "dev": true, "dependencies": { "archy": "^1.0.0" + }, + "bin": { + "npm-tree": "lib/index.js" } }, "node_modules/snyk-try-require": { @@ -11553,6 +14000,7 @@ "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", "dev": true, "dependencies": { "ms": "^2.1.1" @@ -11568,12 +14016,16 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/snyk/node_modules/debug": { "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", "dev": true, "dependencies": { "ms": "^2.1.1" @@ -11614,6 +14066,9 @@ "dev": true, "dependencies": { "is-wsl": "^1.1.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/snyk/node_modules/rx-lite": { @@ -11629,16 +14084,24 @@ "dev": true, "dependencies": { "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/socks": { "version": "1.1.10", "resolved": "https://registry.npmjs.org/socks/-/socks-1.1.10.tgz", "integrity": "sha1-W4t/x8jzQcU+0FbpKbe/Tei6e1o=", + "deprecated": "If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0", "dev": true, "dependencies": { "ip": "^1.1.4", "smart-buffer": "^1.0.13" + }, + "engines": { + "node": ">= 0.10.0", + "npm": ">= 1.3.5" } }, "node_modules/socks-proxy-agent": { @@ -11669,7 +14132,10 @@ "node_modules/source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "engines": { + "node": ">=0.10.0" + } }, "node_modules/source-map-resolve": { "version": "0.5.3", @@ -11698,7 +14164,10 @@ "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/source-map-url": { "version": "0.4.0", @@ -11711,6 +14180,7 @@ "resolved": "https://registry.npmjs.org/spawn-sync/-/spawn-sync-1.0.15.tgz", "integrity": "sha1-sAeZVX63+wyDdsKdROih6mfldHY=", "dev": true, + "hasInstallScript": true, "dependencies": { "concat-stream": "^1.4.7", "os-shim": "^0.1.2" @@ -11755,6 +14225,9 @@ "dev": true, "dependencies": { "through": "2" + }, + "engines": { + "node": "*" } }, "node_modules/split-string": { @@ -11764,6 +14237,9 @@ "dev": true, "dependencies": { "extend-shallow": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/sprintf-js": { @@ -11787,6 +14263,14 @@ "jsbn": "~0.1.0", "safer-buffer": "^2.0.2", "tweetnacl": "~0.14.0" + }, + "bin": { + "sshpk-conv": "bin/sshpk-conv", + "sshpk-sign": "bin/sshpk-sign", + "sshpk-verify": "bin/sshpk-verify" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/ssri": { @@ -11806,6 +14290,9 @@ "dependencies": { "define-property": "^0.2.5", "object-copy": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/static-extend/node_modules/define-property": { @@ -11815,18 +14302,27 @@ "dev": true, "dependencies": { "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/statuses": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "engines": { + "node": ">= 0.6" + } }, "node_modules/stealthy-require": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/stream-browserify": { "version": "2.0.2", @@ -11934,13 +14430,19 @@ "dependencies": { "is-fullwidth-code-point": "^2.0.0", "strip-ansi": "^4.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/string-width/node_modules/ansi-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/string-width/node_modules/strip-ansi": { "version": "4.0.0", @@ -11949,6 +14451,9 @@ "dev": true, "dependencies": { "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/string.prototype.matchall": { @@ -11972,6 +14477,9 @@ "dependencies": { "define-properties": "^1.1.3", "es-abstract": "^1.17.5" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/string.prototype.trimstart": { @@ -11982,6 +14490,9 @@ "dependencies": { "define-properties": "^1.1.3", "es-abstract": "^1.17.5" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/strip-ansi": { @@ -11991,13 +14502,19 @@ "dev": true, "dependencies": { "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/strip-bom-buf": { "version": "1.0.0", @@ -12006,6 +14523,9 @@ "dev": true, "dependencies": { "is-utf8": "^0.2.1" + }, + "engines": { + "node": ">=4" } }, "node_modules/strip-bom-stream": { @@ -12016,19 +14536,28 @@ "dependencies": { "first-chunk-stream": "^2.0.0", "strip-bom-buf": "^1.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/strip-eof": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/strip-json-comments": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/stylus": { "version": "0.54.8", @@ -12044,6 +14573,12 @@ "sax": "~1.2.4", "semver": "^6.3.0", "source-map": "^0.7.3" + }, + "bin": { + "stylus": "bin/stylus" + }, + "engines": { + "node": "*" } }, "node_modules/stylus/node_modules/css-parse": { @@ -12068,7 +14603,13 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } }, "node_modules/stylus/node_modules/sax": { "version": "1.2.4", @@ -12080,13 +14621,19 @@ "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true + "dev": true, + "bin": { + "semver": "bin/semver.js" + } }, "node_modules/stylus/node_modules/source-map": { "version": "0.7.3", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true + "dev": true, + "engines": { + "node": ">= 8" + } }, "node_modules/supports-color": { "version": "5.5.0", @@ -12095,13 +14642,19 @@ "dev": true, "dependencies": { "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/symbol-observable": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/table": { "version": "4.0.3", @@ -12115,13 +14668,19 @@ "lodash": "^4.17.4", "slice-ansi": "1.0.0", "string-width": "^2.1.1" + }, + "engines": { + "node": ">=4.0.0" } }, "node_modules/tapable": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, "node_modules/tar-stream": { "version": "1.6.2", @@ -12136,13 +14695,19 @@ "readable-stream": "^2.3.0", "to-buffer": "^1.1.1", "xtend": "^4.0.0" + }, + "engines": { + "node": ">= 0.8.0" } }, "node_modules/temp-dir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/tempfile": { "version": "2.0.0", @@ -12152,6 +14717,9 @@ "dependencies": { "temp-dir": "^1.0.0", "uuid": "^3.0.1" + }, + "engines": { + "node": ">=4" } }, "node_modules/term-size": { @@ -12161,6 +14729,9 @@ "dev": true, "dependencies": { "execa": "^0.7.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/term-size/node_modules/cross-spawn": { @@ -12187,6 +14758,9 @@ "p-finally": "^1.0.0", "signal-exit": "^3.0.0", "strip-eof": "^1.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/terser": { @@ -12198,6 +14772,12 @@ "commander": "^2.20.0", "source-map": "~0.6.1", "source-map-support": "~0.5.12" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=6.0.0" } }, "node_modules/terser-webpack-plugin": { @@ -12215,6 +14795,12 @@ "terser": "^4.1.2", "webpack-sources": "^1.4.0", "worker-farm": "^1.7.0" + }, + "engines": { + "node": ">= 6.9.0" + }, + "peerDependencies": { + "webpack": "^4.0.0" } }, "node_modules/terser-webpack-plugin/node_modules/cacache": { @@ -12265,6 +14851,9 @@ "pumpify": "^1.3.3", "stream-each": "^1.1.0", "through2": "^2.0.0" + }, + "engines": { + "node": ">=4.0.0" } }, "node_modules/terser-webpack-plugin/node_modules/pump": { @@ -12284,6 +14873,9 @@ "dev": true, "dependencies": { "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" } }, "node_modules/terser-webpack-plugin/node_modules/schema-utils": { @@ -12295,6 +14887,9 @@ "ajv": "^6.1.0", "ajv-errors": "^1.0.0", "ajv-keywords": "^3.1.0" + }, + "engines": { + "node": ">= 4" } }, "node_modules/terser-webpack-plugin/node_modules/serialize-javascript": { @@ -12310,7 +14905,10 @@ "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/terser-webpack-plugin/node_modules/ssri": { "version": "6.0.1", @@ -12331,7 +14929,10 @@ "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/text-table": { "version": "0.2.0", @@ -12364,6 +14965,9 @@ "dev": true, "dependencies": { "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" } }, "node_modules/through": { @@ -12392,7 +14996,10 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/timers-browserify": { "version": "2.0.11", @@ -12401,6 +15008,9 @@ "dev": true, "dependencies": { "setimmediate": "^1.0.4" + }, + "engines": { + "node": ">=0.6.0" } }, "node_modules/tiny-lr": { @@ -12421,6 +15031,7 @@ "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", "dev": true, "dependencies": { "ms": "^2.1.1" @@ -12448,6 +15059,9 @@ "dev": true, "dependencies": { "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" } }, "node_modules/to-arraybuffer": { @@ -12466,7 +15080,10 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/to-object-path": { "version": "0.3.0", @@ -12475,6 +15092,9 @@ "dev": true, "dependencies": { "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/to-object-path/node_modules/kind-of": { @@ -12484,6 +15104,9 @@ "dev": true, "dependencies": { "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/to-regex": { @@ -12496,6 +15119,9 @@ "extend-shallow": "^3.0.2", "regex-not": "^1.0.2", "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/to-regex-range": { @@ -12506,12 +15132,18 @@ "dependencies": { "is-number": "^3.0.0", "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/toidentifier": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", - "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", + "engines": { + "node": ">=0.6" + } }, "node_modules/token-stream": { "version": "0.0.1", @@ -12528,7 +15160,10 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/tosource/-/tosource-1.0.0.tgz", "integrity": "sha1-QtiN0RZhi88A1hBt1URvNCeQL/E=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.4.0" + } }, "node_modules/tough-cookie": { "version": "2.5.0", @@ -12538,6 +15173,9 @@ "dependencies": { "psl": "^1.1.28", "punycode": "^2.1.1" + }, + "engines": { + "node": ">=0.8" } }, "node_modules/tr46": { @@ -12553,13 +15191,19 @@ "version": "0.4.6", "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.4.6.tgz", "integrity": "sha1-0EsigOTHkqWBVCnve4tgxkyczDQ=", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, "node_modules/trim-right": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/tslib": { "version": "1.13.0", @@ -12580,13 +15224,19 @@ "dev": true, "dependencies": { "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" } }, "node_modules/tv4": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/tv4/-/tv4-1.3.0.tgz", "integrity": "sha1-0CDIRvrdUMhVq7JeuuzGj8EPeWM=", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.8.0" + } }, "node_modules/tv4-formats": { "version": "3.0.3", @@ -12617,13 +15267,19 @@ "dev": true, "dependencies": { "prelude-ls": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" } }, "node_modules/type-detect": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/type-is": { "version": "1.6.18", @@ -12632,6 +15288,9 @@ "dependencies": { "media-typer": "0.3.0", "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" } }, "node_modules/typedarray": { @@ -12651,9 +15310,14 @@ "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", "dependencies": { "source-map": "~0.5.1", - "uglify-to-browserify": "~1.0.0", "yargs": "~3.10.0" }, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + }, "optionalDependencies": { "uglify-to-browserify": "~1.0.0" } @@ -12678,6 +15342,12 @@ "uglify-es": "^3.3.4", "webpack-sources": "^1.1.0", "worker-farm": "^1.5.2" + }, + "engines": { + "node": ">= 4.8 < 5.0.0 || >= 5.10" + }, + "peerDependencies": { + "webpack": "^2.0.0 || ^3.0.0 || ^4.0.0" } }, "node_modules/uglifyjs-webpack-plugin/node_modules/commander": { @@ -12695,6 +15365,9 @@ "commondir": "^1.0.1", "make-dir": "^1.0.0", "pkg-dir": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/uglifyjs-webpack-plugin/node_modules/find-up": { @@ -12704,6 +15377,9 @@ "dev": true, "dependencies": { "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/uglifyjs-webpack-plugin/node_modules/locate-path": { @@ -12714,6 +15390,9 @@ "dependencies": { "p-locate": "^2.0.0", "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/uglifyjs-webpack-plugin/node_modules/make-dir": { @@ -12723,6 +15402,9 @@ "dev": true, "dependencies": { "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/uglifyjs-webpack-plugin/node_modules/p-limit": { @@ -12732,6 +15414,9 @@ "dev": true, "dependencies": { "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/uglifyjs-webpack-plugin/node_modules/p-locate": { @@ -12741,19 +15426,28 @@ "dev": true, "dependencies": { "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/uglifyjs-webpack-plugin/node_modules/p-try": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/uglifyjs-webpack-plugin/node_modules/pify": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/uglifyjs-webpack-plugin/node_modules/pkg-dir": { "version": "2.0.0", @@ -12762,6 +15456,9 @@ "dev": true, "dependencies": { "find-up": "^2.1.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/uglifyjs-webpack-plugin/node_modules/schema-utils": { @@ -12772,29 +15469,45 @@ "dependencies": { "ajv": "^6.1.0", "ajv-keywords": "^3.1.0" + }, + "engines": { + "node": ">= 4" } }, "node_modules/uglifyjs-webpack-plugin/node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/uglifyjs-webpack-plugin/node_modules/uglify-es": { "version": "3.3.9", "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "deprecated": "support for ECMAScript is superseded by `uglify-js` as of v3.13.0", "dev": true, "dependencies": { "commander": "~2.13.0", "source-map": "~0.6.1" + }, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" } }, "node_modules/unc-path-regex": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/undefsafe": { "version": "2.0.3", @@ -12819,13 +15532,19 @@ "dependencies": { "sprintf-js": "^1.0.3", "util-deprecate": "^1.0.2" + }, + "engines": { + "node": "*" } }, "node_modules/unicode-canonical-property-names-ecmascript": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/unicode-match-property-ecmascript": { "version": "1.0.4", @@ -12835,19 +15554,28 @@ "dependencies": { "unicode-canonical-property-names-ecmascript": "^1.0.4", "unicode-property-aliases-ecmascript": "^1.0.4" + }, + "engines": { + "node": ">=4" } }, "node_modules/unicode-match-property-value-ecmascript": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/unicode-property-aliases-ecmascript": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/union-value": { "version": "1.0.1", @@ -12859,6 +15587,9 @@ "get-value": "^2.0.6", "is-extendable": "^0.1.1", "set-value": "^2.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/unique-filename": { @@ -12886,6 +15617,9 @@ "dev": true, "dependencies": { "crypto-random-string": "^1.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/universal-user-agent": { @@ -12897,12 +15631,18 @@ "version": "0.1.2", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true + "dev": true, + "engines": { + "node": ">= 4.0.0" + } }, "node_modules/unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "engines": { + "node": ">= 0.8" + } }, "node_modules/unset-value": { "version": "1.0.0", @@ -12912,6 +15652,9 @@ "dependencies": { "has-value": "^0.3.1", "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/unset-value/node_modules/has-value": { @@ -12923,6 +15666,9 @@ "get-value": "^2.0.3", "has-values": "^0.1.4", "isobject": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { @@ -12932,25 +15678,37 @@ "dev": true, "dependencies": { "isarray": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/unset-value/node_modules/has-values": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/unzip-response": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/upath": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.0.tgz", "integrity": "sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/update-notifier": { "version": "2.3.0", @@ -12967,6 +15725,9 @@ "latest-version": "^3.0.0", "semver-diff": "^2.0.0", "xdg-basedir": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/uri-js": { @@ -12982,6 +15743,7 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "deprecated": "Please see https://github.com/lydell/urix#deprecated", "dev": true }, "node_modules/url": { @@ -13001,6 +15763,9 @@ "dev": true, "dependencies": { "prepend-http": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/url/node_modules/punycode": { @@ -13013,7 +15778,10 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/user-home": { "version": "2.0.0", @@ -13022,6 +15790,9 @@ "dev": true, "dependencies": { "os-homedir": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/util": { @@ -13042,13 +15813,20 @@ "node_modules/utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "engines": { + "node": ">= 0.4.0" + } }, "node_modules/uuid": { "version": "3.4.0", "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "dev": true, + "bin": { + "uuid": "bin/uuid" + } }, "node_modules/v8flags": { "version": "3.1.3", @@ -13057,6 +15835,9 @@ "dev": true, "dependencies": { "homedir-polyfill": "^1.0.1" + }, + "engines": { + "node": ">= 0.10" } }, "node_modules/validate-npm-package-license": { @@ -13073,18 +15854,27 @@ "version": "8.2.0", "resolved": "https://registry.npmjs.org/validator/-/validator-8.2.0.tgz", "integrity": "sha512-Yw5wW34fSv5spzTXNkokD6S6/Oq92d8q/t14TqsS3fAiA1RYnxSFSIZ+CY3n6PGGRCq5HhJTSepQvFUS2QUDxA==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.10" + } }, "node_modules/vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "engines": { + "node": ">= 0.8" + } }, "node_modules/verror": { "version": "1.10.0", "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", "dev": true, + "engines": [ + "node >=0.6.0" + ], "dependencies": { "assert-plus": "^1.0.0", "core-util-is": "1.0.2", @@ -13100,7 +15890,10 @@ "node_modules/void-elements": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=" + "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", + "engines": { + "node": ">=0.10.0" + } }, "node_modules/vscode-languageserver-types": { "version": "3.15.1", @@ -13112,7 +15905,10 @@ "version": "0.0.11", "resolved": "https://registry.npmjs.org/walkdir/-/walkdir-0.0.11.tgz", "integrity": "sha1-oW0CXrkxvQO1LzCMrtD0D86+lTI=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.6.0" + } }, "node_modules/watchpack": { "version": "1.5.0", @@ -13133,6 +15929,9 @@ "optional": true, "dependencies": { "chokidar": "^2.1.8" + }, + "engines": { + "node": "<8.10.0" } }, "node_modules/wcwidth": { @@ -13183,13 +15982,23 @@ "watchpack": "1.5.0", "yargs": "6.6.0", "zip-dir": "1.0.2" + }, + "bin": { + "web-ext": "bin/web-ext" + }, + "engines": { + "node": ">=6.0.0", + "npm": ">=3.0.0" } }, "node_modules/web-ext/node_modules/camelcase": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/web-ext/node_modules/cliui": { "version": "3.2.0", @@ -13209,13 +16018,19 @@ "dev": true, "dependencies": { "xregexp": "4.0.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/web-ext/node_modules/invert-kv": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/web-ext/node_modules/is-fullwidth-code-point": { "version": "1.0.0", @@ -13224,6 +16039,9 @@ "dev": true, "dependencies": { "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/web-ext/node_modules/lcid": { @@ -13233,6 +16051,9 @@ "dev": true, "dependencies": { "invert-kv": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/web-ext/node_modules/minimist": { @@ -13245,9 +16066,13 @@ "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "deprecated": "Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)", "dev": true, "dependencies": { "minimist": "0.0.8" + }, + "bin": { + "mkdirp": "bin/cmd.js" } }, "node_modules/web-ext/node_modules/opn": { @@ -13257,6 +16082,9 @@ "dev": true, "dependencies": { "is-wsl": "^1.1.0" + }, + "engines": { + "node": ">=4" } }, "node_modules/web-ext/node_modules/os-locale": { @@ -13266,6 +16094,9 @@ "dev": true, "dependencies": { "lcid": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/web-ext/node_modules/regenerator-runtime": { @@ -13278,7 +16109,10 @@ "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/web-ext/node_modules/source-map-support": { "version": "0.5.3", @@ -13298,6 +16132,9 @@ "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", "strip-ansi": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/web-ext/node_modules/which-module": { @@ -13352,19 +16189,28 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/web-ext/node_modules/yargs/node_modules/camelcase": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/web-ext/node_modules/yargs/node_modules/decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/webidl-conversions": { "version": "4.0.2", @@ -13401,6 +16247,24 @@ "terser-webpack-plugin": "^1.4.3", "watchpack": "^1.7.4", "webpack-sources": "^1.4.1" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=6.11.5" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + }, + "webpack-command": { + "optional": true + } } }, "node_modules/webpack-merge": { @@ -13426,13 +16290,22 @@ "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/webpack/node_modules/acorn": { "version": "6.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", - "dev": true + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } }, "node_modules/webpack/node_modules/anymatch": { "version": "3.1.1", @@ -13443,6 +16316,9 @@ "dependencies": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" } }, "node_modules/webpack/node_modules/binary-extensions": { @@ -13450,7 +16326,10 @@ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", "dev": true, - "optional": true + "optional": true, + "engines": { + "node": ">=8" + } }, "node_modules/webpack/node_modules/braces": { "version": "3.0.2", @@ -13460,6 +16339,9 @@ "optional": true, "dependencies": { "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" } }, "node_modules/webpack/node_modules/chokidar": { @@ -13471,12 +16353,17 @@ "dependencies": { "anymatch": "~3.1.1", "braces": "~3.0.2", - "fsevents": "~2.1.2", "glob-parent": "~5.1.0", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", "readdirp": "~3.4.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.1.2" } }, "node_modules/webpack/node_modules/fill-range": { @@ -13487,14 +16374,25 @@ "optional": true, "dependencies": { "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, "node_modules/webpack/node_modules/fsevents": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", + "deprecated": "\"Please update to latest v2.3 or v2.2\"", "dev": true, - "optional": true + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } }, "node_modules/webpack/node_modules/glob-parent": { "version": "5.1.1", @@ -13504,6 +16402,9 @@ "optional": true, "dependencies": { "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" } }, "node_modules/webpack/node_modules/is-binary-path": { @@ -13514,6 +16415,9 @@ "optional": true, "dependencies": { "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" } }, "node_modules/webpack/node_modules/is-glob": { @@ -13524,6 +16428,9 @@ "optional": true, "dependencies": { "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/webpack/node_modules/is-number": { @@ -13531,14 +16438,20 @@ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true, - "optional": true + "optional": true, + "engines": { + "node": ">=0.12.0" + } }, "node_modules/webpack/node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true, - "optional": true + "optional": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/webpack/node_modules/readdirp": { "version": "3.4.0", @@ -13548,6 +16461,9 @@ "optional": true, "dependencies": { "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" } }, "node_modules/webpack/node_modules/schema-utils": { @@ -13559,6 +16475,9 @@ "ajv": "^6.1.0", "ajv-errors": "^1.0.0", "ajv-keywords": "^3.1.0" + }, + "engines": { + "node": ">= 4" } }, "node_modules/webpack/node_modules/to-regex-range": { @@ -13569,6 +16488,9 @@ "optional": true, "dependencies": { "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" } }, "node_modules/webpack/node_modules/watchpack": { @@ -13577,10 +16499,8 @@ "integrity": "sha512-aWAgTW4MoSJzZPAicljkO1hsi1oKj/RRq/OJQh2PKI2UKL04c2Bs+MBOB+BBABHTXJpf9mCwHN7ANCvYsvY2sg==", "dev": true, "dependencies": { - "chokidar": "^3.4.1", "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0", - "watchpack-chokidar2": "^2.0.0" + "neo-async": "^2.5.0" }, "optionalDependencies": { "chokidar": "^3.4.1", @@ -13596,13 +16516,19 @@ "http-parser-js": ">=0.5.1", "safe-buffer": ">=5.1.0", "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" } }, "node_modules/websocket-extensions": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.8.0" + } }, "node_modules/whatwg-url": { "version": "7.0.0", @@ -13628,6 +16554,9 @@ "dev": true, "dependencies": { "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" } }, "node_modules/which-module": { @@ -13643,6 +16572,9 @@ "dev": true, "dependencies": { "string-width": "^2.1.1" + }, + "engines": { + "node": ">=4" } }, "node_modules/win-release": { @@ -13652,12 +16584,18 @@ "dev": true, "dependencies": { "semver": "^5.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/window-size": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", - "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=" + "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", + "engines": { + "node": ">= 0.8.0" + } }, "node_modules/winreg": { "version": "0.0.12", @@ -13678,12 +16616,18 @@ "version": "1.2.3", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/wordwrap": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=" + "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", + "engines": { + "node": ">=0.4.0" + } }, "node_modules/worker-farm": { "version": "1.7.0", @@ -13702,6 +16646,9 @@ "dependencies": { "string-width": "^1.0.1", "strip-ansi": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/wrap-ansi/node_modules/is-fullwidth-code-point": { @@ -13711,6 +16658,9 @@ "dev": true, "dependencies": { "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/wrap-ansi/node_modules/string-width": { @@ -13722,6 +16672,9 @@ "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", "strip-ansi": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/wrappy": { @@ -13736,6 +16689,9 @@ "dev": true, "dependencies": { "mkdirp": "^0.5.1" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/write-file-atomic": { @@ -13762,7 +16718,10 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, "node_modules/xhr-mock": { "version": "2.5.1", @@ -13782,6 +16741,9 @@ "dependencies": { "sax": ">=0.6.0", "xmlbuilder": "~11.0.0" + }, + "engines": { + "node": ">=4.0.0" } }, "node_modules/xml2js/node_modules/sax": { @@ -13794,25 +16756,38 @@ "version": "11.0.1", "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", - "dev": true + "dev": true, + "engines": { + "node": ">=4.0" + } }, "node_modules/xmldom": { "version": "0.1.27", "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.27.tgz", "integrity": "sha1-1QH5ezvbQDr4757MIFcxh6rawOk=", - "dev": true + "deprecated": "Deprecated due to CVE-2021-21366 resolved in 0.5.0", + "dev": true, + "engines": { + "node": ">=0.1" + } }, "node_modules/xregexp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz", "integrity": "sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM=", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, "node_modules/xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.4" + } }, "node_modules/y18n": { "version": "4.0.0", @@ -13851,7 +16826,10 @@ "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, "node_modules/yauzl": { "version": "2.10.0", @@ -13892,6 +16870,9 @@ "compress-commons": "^1.2.0", "lodash": "^4.8.0", "readable-stream": "^2.0.0" + }, + "engines": { + "node": ">= 0.10.0" } } }, @@ -15506,7 +18487,8 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", - "dev": true + "dev": true, + "requires": {} }, "adbkit": { "version": "2.11.0", @@ -15814,13 +18796,15 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "dev": true + "dev": true, + "requires": {} }, "ajv-keywords": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true + "dev": true, + "requires": {} }, "ajv-merge-patch": { "version": "4.1.0", @@ -16718,6 +19702,12 @@ "integrity": "sha512-yN5oZVmRCwe5aKwzRj6736nSmKDX7pLYwsXiCj/EYmo16hODaBiT4En5btW/jhBF/seV+XMx3aYwukYC3A49DA==", "dev": true }, + "bowser": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz", + "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==", + "dev": true + }, "boxen": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", @@ -18793,7 +21783,8 @@ "version": "1.5.1", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz", "integrity": "sha1-MU3QpLM2j609/NxU7eYXG4htrzw=", - "dev": true + "dev": true, + "requires": {} }, "ansi-escapes": { "version": "1.4.0", @@ -20481,7 +23472,8 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/grunt-exec/-/grunt-exec-3.0.0.tgz", "integrity": "sha512-cgAlreXf3muSYS5LzW0Cc4xHK03BjFOYk0MqCQ/MZ3k1Xz2GU7D+IAJg4UKicxpO+XdONJdx/NJ6kpy2wI+uHg==", - "dev": true + "dev": true, + "requires": {} }, "grunt-known-options": { "version": "1.1.1", @@ -21412,6 +24404,12 @@ "integrity": "sha1-LPn7rkbYB0/Ba33gBxyO/rykc6Y=", "dev": true }, + "jose": { + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/jose/-/jose-3.19.0.tgz", + "integrity": "sha512-G5imz/7oSe8Ohg4EMEhGhMhN+yzACMw7NC7ZrEYSoJekQXHPf+TPQNc/XJkYRm6TFWIbf3HA4OHZhdRv8KsskA==", + "dev": true + }, "jquery": { "version": "3.5.1", "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.5.1.tgz", @@ -21958,12 +24956,6 @@ "integrity": "sha512-l9x0+1offnKKIzYVjyXU2SiwhXDLekRzKyhnbyldPHvC7BvLPVpdNUNR2KeMAiCN2D/kLNttZgQD5WjSxuBx3Q==", "dev": true }, - "long": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", - "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==", - "dev": true - }, "longest": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", @@ -22805,43 +25797,46 @@ } } }, - "node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", - "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" - }, - "node-forge": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.8.5.tgz", - "integrity": "sha512-vFMQIWt+J/7FLNyKouZ9TazT74PRV3wgv9UT4cRjC8BffxFbKXkgIWR42URCPSnHm/QDz6BOlb2Q0U4+VQT67Q==", - "dev": true - }, - "node-jose": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/node-jose/-/node-jose-1.1.4.tgz", - "integrity": "sha512-L31IFwL3pWWcMHxxidCY51ezqrDXMkvlT/5pLTfNw5sXmmOLJuN6ug7txzF/iuZN55cRpyOmoJrotwBQIoo5Lw==", + "nock": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/nock/-/nock-13.1.3.tgz", + "integrity": "sha512-YKj0rKQWMGiiIO+Y65Ut8OEgYM3PplLU2+GAhnPmqZdBd6z5IskgdBqWmjzA6lH3RF0S2a3wiAlrMOF5Iv2Jeg==", "dev": true, "requires": { - "base64url": "^3.0.1", - "browserify-zlib": "^0.2.0", - "buffer": "^5.5.0", - "es6-promise": "^4.2.8", - "lodash": "^4.17.15", - "long": "^4.0.0", - "node-forge": "^0.8.5", - "process": "^0.11.10", - "react-zlib-js": "^1.0.4", - "uuid": "^3.3.3" + "debug": "^4.1.0", + "json-stringify-safe": "^5.0.1", + "lodash.set": "^4.3.2", + "propagate": "^2.0.0" }, "dependencies": { - "es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", + "debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true } } }, + "node-fetch": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", + "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" + }, + "node-forge": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", + "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==", + "dev": true + }, "node-libs-browser": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", @@ -23797,6 +26792,12 @@ "integrity": "sha1-Fg+JisPHW1y7cw/yOgyi8XQHvzo=", "dev": true }, + "propagate": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/propagate/-/propagate-2.0.1.tgz", + "integrity": "sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==", + "dev": true + }, "proxy-addr": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", @@ -24143,12 +27144,6 @@ "strip-json-comments": "~2.0.1" } }, - "react-zlib-js": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/react-zlib-js/-/react-zlib-js-1.0.5.tgz", - "integrity": "sha512-TLcPdmqhIl+ylwOwlfm1WUuI7NVvhAv3L74d1AabhjyaAbmLOROTA/Q4EQ/UMCFCOjIkVim9fT3UZOQSFk/mlA==", - "dev": true - }, "read-pkg": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", @@ -25100,7 +28095,8 @@ "version": "2.14.0", "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-2.14.0.tgz", "integrity": "sha512-9stIF1utB0ywNHNT7RgiXbdmen8QDCRsrTjw+G9TgKt1Yexjiv8TOWZ6WHsTPz57Yky3DIswZvEqX8fpuHNDtQ==", - "dev": true + "dev": true, + "requires": {} }, "slash": { "version": "1.0.0", diff --git a/package.json b/package.json index b4105f15..a5d531a1 100644 --- a/package.json +++ b/package.json @@ -16,17 +16,15 @@ "pug": "^2.0.4", "querystring": "^0.2.0" }, - "devEngines": { - "node": "^8.12.0", - "npm": "^6.4.1" - }, "devDependencies": { "@babel/core": "^7.4.5", "@babel/polyfill": "^7.4.4", "@babel/preset-env": "^7.4.5", "babel-loader": "^8.0.6", "babel-plugin-transform-async-to-generator": "^6.24.1", + "base64url": "^3.0.1", "bootstrap": "^3.4.1", + "bowser": "^2.11.0", "chai": "^4.2.0", "chai-arrays": "^2.0.0", "chai-as-promised": "^7.1.1", @@ -51,11 +49,13 @@ "highlight.js": "^10.4.1", "inject-loader": "^3.0.1", "isotope-layout": "^3.0.6", + "jose": "^3.19.0", "jquery": "^3.4.1", "lodash": "^4.17.13", "loglevel": "^1.6.2", "mocha": "^5.2.0", - "node-jose": "^1.1.4", + "nock": "^13.1.3", + "node-forge": "^0.10.0", "promise.any": "^0.1.1", "puppeteer": "^1.17.0", "request-promise-native": "^1.0.7", diff --git a/src/editor/default-tokens.js b/src/editor/default-tokens.js index 3844f818..88a6d862 100644 --- a/src/editor/default-tokens.js +++ b/src/editor/default-tokens.js @@ -2,43 +2,55 @@ // them safely to GitHub. const rsaPrivateKey = -`-----BEGIN RSA PRIVATE KEY----- -MIIEogIBAAKCAQEAnzyis1ZjfNB0bBgKFMSvvkTtwlvBsaJq7S5wA+kzeVOVpVWw -kWdVha4s38XM/pa/yr47av7+z3VTmvDRyAHcaT92whREFpLv9cj5lTeJSibyr/Mr -m/YtjCZVWgaOYIhwrXwKLqPr/11inWsAkfIytvHWTxZYEcXLgAXFuUuaS3uF9gEi -NQwzGTU1v0FqkqTBr4B8nW3HCN47XUu0t8Y0e+lf4s4OxQawWD79J9/5d3Ry0vbV -3Am1FtGJiJvOwRsIfVChDpYStTcHTCMqtvWbV6L11BWkpzGXSW4Hv43qa+GSYOD2 -QU68Mb59oSk2OB+BtOLpJofmbGEGgvmwyCI9MwIDAQABAoIBACiARq2wkltjtcjs -kFvZ7w1JAORHbEufEO1Eu27zOIlqbgyAcAl7q+/1bip4Z/x1IVES84/yTaM8p0go -amMhvgry/mS8vNi1BN2SAZEnb/7xSxbflb70bX9RHLJqKnp5GZe2jexw+wyXlwaM -+bclUCrh9e1ltH7IvUrRrQnFJfh+is1fRon9Co9Li0GwoN0x0byrrngU8Ak3Y6D9 -D8GjQA4Elm94ST3izJv8iCOLSDBmzsPsXfcCUZfmTfZ5DbUDMbMxRnSo3nQeoKGC -0Lj9FkWcfmLcpGlSXTO+Ww1L7EGq+PT3NtRae1FZPwjddQ1/4V905kyQFLamAA5Y -lSpE2wkCgYEAy1OPLQcZt4NQnQzPz2SBJqQN2P5u3vXl+zNVKP8w4eBv0vWuJJF+ -hkGNnSxXQrTkvDOIUddSKOzHHgSg4nY6K02ecyT0PPm/UZvtRpWrnBjcEVtHEJNp -bU9pLD5iZ0J9sbzPU/LxPmuAP2Bs8JmTn6aFRspFrP7W0s1Nmk2jsm0CgYEAyH0X -+jpoqxj4efZfkUrg5GbSEhf+dZglf0tTOA5bVg8IYwtmNk/pniLG/zI7c+GlTc9B -BwfMr59EzBq/eFMI7+LgXaVUsM/sS4Ry+yeK6SJx/otIMWtDfqxsLD8CPMCRvecC -2Pip4uSgrl0MOebl9XKp57GoaUWRWRHqwV4Y6h8CgYAZhI4mh4qZtnhKjY4TKDjx -QYufXSdLAi9v3FxmvchDwOgn4L+PRVdMwDNms2bsL0m5uPn104EzM6w1vzz1zwKz -5pTpPI0OjgWN13Tq8+PKvm/4Ga2MjgOgPWQkslulO/oMcXbPwWC3hcRdr9tcQtn9 -Imf9n2spL/6EDFId+Hp/7QKBgAqlWdiXsWckdE1Fn91/NGHsc8syKvjjk1onDcw0 -NvVi5vcba9oGdElJX3e9mxqUKMrw7msJJv1MX8LWyMQC5L6YNYHDfbPF1q5L4i8j -8mRex97UVokJQRRA452V2vCO6S5ETgpnad36de3MUxHgCOX3qL382Qx9/THVmbma -3YfRAoGAUxL/Eu5yvMK8SAt/dJK6FedngcM3JEFNplmtLYVLWhkIlNRGDwkg3I5K -y18Ae9n7dHVueyslrb6weq7dTkYDi3iOYRW8HRkIQh06wEdbxt0shTzAJvvCQfrB -jg/3747WSsf/zBTcHihTRBdAv6OmdhV4/dD5YBfLAkLrd+mX7iE= ------END RSA PRIVATE KEY-----`; +`-----BEGIN PRIVATE KEY----- +MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQC7VJTUt9Us8cKj +MzEfYyjiWA4R4/M2bS1GB4t7NXp98C3SC6dVMvDuictGeurT8jNbvJZHtCSuYEvu +NMoSfm76oqFvAp8Gy0iz5sxjZmSnXyCdPEovGhLa0VzMaQ8s+CLOyS56YyCFGeJZ +qgtzJ6GR3eqoYSW9b9UMvkBpZODSctWSNGj3P7jRFDO5VoTwCQAWbFnOjDfH5Ulg +p2PKSQnSJP3AJLQNFNe7br1XbrhV//eO+t51mIpGSDCUv3E0DDFcWDTH9cXDTTlR +ZVEiR2BwpZOOkE/Z0/BVnhZYL71oZV34bKfWjQIt6V/isSMahdsAASACp4ZTGtwi +VuNd9tybAgMBAAECggEBAKTmjaS6tkK8BlPXClTQ2vpz/N6uxDeS35mXpqasqskV +laAidgg/sWqpjXDbXr93otIMLlWsM+X0CqMDgSXKejLS2jx4GDjI1ZTXg++0AMJ8 +sJ74pWzVDOfmCEQ/7wXs3+cbnXhKriO8Z036q92Qc1+N87SI38nkGa0ABH9CN83H +mQqt4fB7UdHzuIRe/me2PGhIq5ZBzj6h3BpoPGzEP+x3l9YmK8t/1cN0pqI+dQwY +dgfGjackLu/2qH80MCF7IyQaseZUOJyKrCLtSD/Iixv/hzDEUPfOCjFDgTpzf3cw +ta8+oE4wHCo1iI1/4TlPkwmXx4qSXtmw4aQPz7IDQvECgYEA8KNThCO2gsC2I9PQ +DM/8Cw0O983WCDY+oi+7JPiNAJwv5DYBqEZB1QYdj06YD16XlC/HAZMsMku1na2T +N0driwenQQWzoev3g2S7gRDoS/FCJSI3jJ+kjgtaA7Qmzlgk1TxODN+G1H91HW7t +0l7VnL27IWyYo2qRRK3jzxqUiPUCgYEAx0oQs2reBQGMVZnApD1jeq7n4MvNLcPv +t8b/eU9iUv6Y4Mj0Suo/AU8lYZXm8ubbqAlwz2VSVunD2tOplHyMUrtCtObAfVDU +AhCndKaA9gApgfb3xw1IKbuQ1u4IF1FJl3VtumfQn//LiH1B3rXhcdyo3/vIttEk +48RakUKClU8CgYEAzV7W3COOlDDcQd935DdtKBFRAPRPAlspQUnzMi5eSHMD/ISL +DY5IiQHbIH83D4bvXq0X7qQoSBSNP7Dvv3HYuqMhf0DaegrlBuJllFVVq9qPVRnK +xt1Il2HgxOBvbhOT+9in1BzA+YJ99UzC85O0Qz06A+CmtHEy4aZ2kj5hHjECgYEA +mNS4+A8Fkss8Js1RieK2LniBxMgmYml3pfVLKGnzmng7H2+cwPLhPIzIuwytXywh +2bzbsYEfYx3EoEVgMEpPhoarQnYPukrJO4gwE2o5Te6T5mJSZGlQJQj9q4ZB2Dfz +et6INsK0oG8XVGXSpQvQh3RUYekCZQkBBFcpqWpbIEsCgYAnM3DQf3FJoSnXaMhr +VBIovic5l0xFkEHskAjFTevO86Fsz1C2aSeRKSqGFoOQ0tmJzBEs1R6KqnHInicD +TQrKhArgLXX4v3CddjfTRJkFWDbE/CkvKZNOrcf1nhaGCPspRJj2KUkj1Fhl9Cnc +dn/RsYEONbwQSjIfMPkvxF+8HQ== +-----END PRIVATE KEY-----`; +const rsaJwk = { + e: 'AQAB', + n: 'u1SU1LfVLPHCozMxH2Mo4lgOEePzNm0tRgeLezV6ffAt0gunVTLw7onLRnrq0_IzW7yWR7QkrmBL7jTKEn5u-qKhbwKfBstIs-bMY2Zkp18gnTxKLxoS2tFczGkPLPgizskuemMghRniWaoLcyehkd3qqGElvW_VDL5AaWTg0nLVkjRo9z-40RQzuVaE8AkAFmxZzow3x-VJYKdjykkJ0iT9wCS0DRTXu269V264Vf_3jvredZiKRkgwlL9xNAwxXFg0x_XFw005UWVRIkdgcKWTjpBP2dPwVZ4WWC-9aGVd-Gyn1o0CLelf4rEjGoXbAAEgAqeGUxrcIlbjXfbcmw', + d: 'pOaNpLq2QrwGU9cKVNDa-nP83q7EN5LfmZempqyqyRWVoCJ2CD-xaqmNcNtev3ei0gwuVawz5fQKowOBJcp6MtLaPHgYOMjVlNeD77QAwnywnvilbNUM5-YIRD_vBezf5xudeEquI7xnTfqr3ZBzX43ztIjfyeQZrQAEf0I3zceZCq3h8HtR0fO4hF7-Z7Y8aEirlkHOPqHcGmg8bMQ_7HeX1iYry3_Vw3Smoj51DBh2B8aNpyQu7_aofzQwIXsjJBqx5lQ4nIqsIu1IP8iLG_-HMMRQ984KMUOBOnN_dzC1rz6gTjAcKjWIjX_hOU-TCZfHipJe2bDhpA_PsgNC8Q', + p: '8KNThCO2gsC2I9PQDM_8Cw0O983WCDY-oi-7JPiNAJwv5DYBqEZB1QYdj06YD16XlC_HAZMsMku1na2TN0driwenQQWzoev3g2S7gRDoS_FCJSI3jJ-kjgtaA7Qmzlgk1TxODN-G1H91HW7t0l7VnL27IWyYo2qRRK3jzxqUiPU', + q: 'x0oQs2reBQGMVZnApD1jeq7n4MvNLcPvt8b_eU9iUv6Y4Mj0Suo_AU8lYZXm8ubbqAlwz2VSVunD2tOplHyMUrtCtObAfVDUAhCndKaA9gApgfb3xw1IKbuQ1u4IF1FJl3VtumfQn__LiH1B3rXhcdyo3_vIttEk48RakUKClU8', + dp: 'zV7W3COOlDDcQd935DdtKBFRAPRPAlspQUnzMi5eSHMD_ISLDY5IiQHbIH83D4bvXq0X7qQoSBSNP7Dvv3HYuqMhf0DaegrlBuJllFVVq9qPVRnKxt1Il2HgxOBvbhOT-9in1BzA-YJ99UzC85O0Qz06A-CmtHEy4aZ2kj5hHjE', + dq: 'mNS4-A8Fkss8Js1RieK2LniBxMgmYml3pfVLKGnzmng7H2-cwPLhPIzIuwytXywh2bzbsYEfYx3EoEVgMEpPhoarQnYPukrJO4gwE2o5Te6T5mJSZGlQJQj9q4ZB2Dfzet6INsK0oG8XVGXSpQvQh3RUYekCZQkBBFcpqWpbIEs', + qi: 'JzNw0H9xSaEp12jIa1QSKL4nOZdMRZBB7JAIxU3rzvOhbM9QtmknkSkqhhaDkNLZicwRLNUeiqpxyJ4nA00KyoQK4C11-L9wnXY300SZBVg2xPwpLymTTq3H9Z4Whgj7KUSY9ilJI9RYZfQp3HZ_0bGBDjW8EEoyHzD5L8RfvB0', + kty: 'RSA' +} const rsaPublicKey = `-----BEGIN PUBLIC KEY----- -MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnzyis1ZjfNB0bBgKFMSv -vkTtwlvBsaJq7S5wA+kzeVOVpVWwkWdVha4s38XM/pa/yr47av7+z3VTmvDRyAHc -aT92whREFpLv9cj5lTeJSibyr/Mrm/YtjCZVWgaOYIhwrXwKLqPr/11inWsAkfIy -tvHWTxZYEcXLgAXFuUuaS3uF9gEiNQwzGTU1v0FqkqTBr4B8nW3HCN47XUu0t8Y0 -e+lf4s4OxQawWD79J9/5d3Ry0vbV3Am1FtGJiJvOwRsIfVChDpYStTcHTCMqtvWb -V6L11BWkpzGXSW4Hv43qa+GSYOD2QU68Mb59oSk2OB+BtOLpJofmbGEGgvmwyCI9 -MwIDAQAB +MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAu1SU1LfVLPHCozMxH2Mo +4lgOEePzNm0tRgeLezV6ffAt0gunVTLw7onLRnrq0/IzW7yWR7QkrmBL7jTKEn5u ++qKhbwKfBstIs+bMY2Zkp18gnTxKLxoS2tFczGkPLPgizskuemMghRniWaoLcyeh +kd3qqGElvW/VDL5AaWTg0nLVkjRo9z+40RQzuVaE8AkAFmxZzow3x+VJYKdjykkJ +0iT9wCS0DRTXu269V264Vf/3jvredZiKRkgwlL9xNAwxXFg0x/XFw005UWVRIkdg +cKWTjpBP2dPwVZ4WWC+9aGVd+Gyn1o0CLelf4rEjGoXbAAEgAqeGUxrcIlbjXfbc +mwIDAQAB -----END PUBLIC KEY-----`; const ecPrivateKey256 = @@ -47,6 +59,13 @@ MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgevZzL1gdAFr88hb2 OF/2NxApJCzGCEDdfSp6VQO30hyhRANCAAQRWz+jn65BtOMvdyHKcvjBeBSDZH2r 1RTwjmYSi9R/zpBnuQ4EiMnCqfMPWiZqB4QdbAd0E7oH50VpuZ1P087G -----END PRIVATE KEY-----`; +const ecJwk256 = { + crv: 'P-256', + x: 'EVs_o5-uQbTjL3chynL4wXgUg2R9q9UU8I5mEovUf84', + y: 'kGe5DgSIycKp8w9aJmoHhB1sB3QTugfnRWm5nU_TzsY', + d: 'evZzL1gdAFr88hb2OF_2NxApJCzGCEDdfSp6VQO30hw', + kty: 'EC' +}; const ecPublicKey256 = `-----BEGIN PUBLIC KEY----- @@ -55,12 +74,19 @@ q9UU8I5mEovUf86QZ7kOBIjJwqnzD1omageEHWwHdBO6B+dFabmdT9POxg== -----END PUBLIC KEY-----`; const ecPrivateKey384 = -`-----BEGIN EC PRIVATE KEY----- -MIGkAgEBBDCAHpFQ62QnGCEvYh/pE9QmR1C9aLcDItRbslbmhen/h1tt8AyMhske -enT+rAyyPhGgBwYFK4EEACKhZANiAAQLW5ZJePZzMIPAxMtZXkEWbDF0zo9f2n4+ -T1h/2sh/fviblc/VTyrv10GEtIi5qiOy85Pf1RRw8lE5IPUWpgu553SteKigiKLU -PeNpbqmYZUkWGh3MLfVzLmx85ii2vMU= ------END EC PRIVATE KEY-----`; +`-----BEGIN PRIVATE KEY----- +MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDCAHpFQ62QnGCEvYh/p +E9QmR1C9aLcDItRbslbmhen/h1tt8AyMhskeenT+rAyyPhGhZANiAAQLW5ZJePZz +MIPAxMtZXkEWbDF0zo9f2n4+T1h/2sh/fviblc/VTyrv10GEtIi5qiOy85Pf1RRw +8lE5IPUWpgu553SteKigiKLUPeNpbqmYZUkWGh3MLfVzLmx85ii2vMU= +-----END PRIVATE KEY-----`; +const ecJwk384 = { + crv: 'P-384', + x: 'C1uWSXj2czCDwMTLWV5BFmwxdM6PX9p-Pk9Yf9rIf374m5XP1U8q79dBhLSIuaoj', + y: 'svOT39UUcPJROSD1FqYLued0rXiooIii1D3jaW6pmGVJFhodzC31cy5sfOYotrzF', + d: 'gB6RUOtkJxghL2If6RPUJkdQvWi3AyLUW7JW5oXp_4dbbfAMjIbJHnp0_qwMsj4R', + kty: 'EC' +} const ecPublicKey384 = `-----BEGIN PUBLIC KEY----- @@ -70,13 +96,21 @@ Pk9Yf9rIf374m5XP1U8q79dBhLSIuaojsvOT39UUcPJROSD1FqYLued0rXiooIii -----END PUBLIC KEY-----`; const ecPrivateKey521 = -`-----BEGIN EC PRIVATE KEY----- -MIHcAgEBBEIBiyAa7aRHFDCh2qga9sTUGINE5jHAFnmM8xWeT/uni5I4tNqhV5Xx -0pDrmCV9mbroFtfEa0XVfKuMAxxfZ6LM/yKgBwYFK4EEACOhgYkDgYYABAGBzgdn -P798FsLuWYTDDQA7c0r3BVk8NnRUSexpQUsRilPNv3SchO0lRw9Ru86x1khnVDx+ -duq4BiDFcvlSAcyjLACJvjvoyTLJiA+TQFdmrearjMiZNE25pT2yWP1NUndJxPcv -VtfBW48kPOmvkY4WlqP5bAwCXwbsKrCgk6xbsp12ew== ------END EC PRIVATE KEY-----`; +`-----BEGIN PRIVATE KEY----- +MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBiyAa7aRHFDCh2qga +9sTUGINE5jHAFnmM8xWeT/uni5I4tNqhV5Xx0pDrmCV9mbroFtfEa0XVfKuMAxxf +Z6LM/yKhgYkDgYYABAGBzgdnP798FsLuWYTDDQA7c0r3BVk8NnRUSexpQUsRilPN +v3SchO0lRw9Ru86x1khnVDx+duq4BiDFcvlSAcyjLACJvjvoyTLJiA+TQFdmrear +jMiZNE25pT2yWP1NUndJxPcvVtfBW48kPOmvkY4WlqP5bAwCXwbsKrCgk6xbsp12 +ew== +-----END PRIVATE KEY-----`; +const ecJwk521 = { + crv: 'P-521', + x: 'AYHOB2c_v3wWwu5ZhMMNADtzSvcFWTw2dFRJ7GlBSxGKU82_dJyE7SVHD1G7zrHWSGdUPH526rgGIMVy-VIBzKMs', + y: 'AIm-O-jJMsmID5NAV2at5quMyJk0TbmlPbJY_U1Sd0nE9y9W18FbjyQ86a-RjhaWo_lsDAJfBuwqsKCTrFuynXZ7', + d: 'AYsgGu2kRxQwodqoGvbE1BiDROYxwBZ5jPMVnk_7p4uSOLTaoVeV8dKQ65glfZm66BbXxGtF1XyrjAMcX2eizP8i', + kty: 'EC' +} const ecPublicKey521 = `-----BEGIN PUBLIC KEY----- @@ -100,48 +134,57 @@ export default { secret: 'your-512-bit-secret' }, rs256: { - token: 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.POstGetfAytaZS82wHcjoTyoqhMyxXiWdR7Nn7A29DNSl0EiXLdwJ6xC6AfgZWF1bOsS_TuYI3OG85AmiExREkrS6tDfTQ2B3WXlrr-wp5AokiRbz3_oB4OxG-W9KcEEbDRcZc0nH3L7LzYptiy1PtAylQGxHTWZXtGz4ht0bAecBgmpdgXMguEIcoqPJ1n3pIWk_dUZegpqx0Lka21H6XxUTxiy8OcaarA8zdnPUnV6AmNP3ecFawIFYdvJB_cm-GvpCSbr8G8y_Mllj8f4x9nBH8pQux89_6gUY618iYv7tuPWBFfEbLxtF2pZS6YC1aSfLQxeNe8djT9YjpvRZA', + token: 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.NHVaYe26MbtOYhSKkoKYdFVomg4i8ZJd8_-RU8VNbftc4TSMb4bXP3l3YlNWACwyXPGffz5aXHc6lty1Y2t4SWRqGteragsVdZufDn5BlnJl9pdR_kdVFUsra2rWKEofkZeIC4yWytE58sMIihvo9H1ScmmVwBcQP6XETqYd0aSHp1gOa9RdUPDvoXQ5oqygTqVtxaDr6wUFKrKItgBMzWIdNZ6y7O9E0DhEPTbE9rfBo6KTFsHAZnMg4k68CDp2woYIaXbmYTWcvbzIuHO7_37GT79XdIwkm95QJ7hYC9RiwrV7mesbY4PAahERJawntho0my942XheVLmGwLMBkQ', privateKey: rsaPrivateKey, + jwk: rsaJwk, publicKey: rsaPublicKey }, rs384: { - token: 'eyJhbGciOiJSUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.D4kXa3UspFjRA9ys5tsD4YDyxxam3l_XnOb3hMEdPDTfSLRHPv4HPwxvin-pIkEmfJshXPSK7O4zqSXWAXFO52X-upJjFc_gpGDswctNWpOJeXe1xBgJ--VuGDzUQCqkr9UBpN-Q7TE5u9cgIVisekSFSH5Ax6aXQC9vCO5LooNFx_WnbTLNZz7FUia9vyJ544kLB7UcacL-_idgRNIWPdd_d1vvnNGkknIMarRjCsjAEf6p5JGhYZ8_C18g-9DsfokfUfSpKgBR23R8v8ZAAmPPPiJ6MZXkefqE7p3jRbA--58z5TlHmH9nTB1DYE2872RYvyzG3LoQ-2s93VaVuw', + token: 'eyJhbGciOiJSUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.o1hC1xYbJolSyh0-bOY230w22zEQSk5TiBfc-OCvtpI2JtYlW-23-8B48NpATozzMHn0j3rE0xVUldxShzy0xeJ7vYAccVXu2Gs9rnTVqouc-UZu_wJHkZiKBL67j8_61L6SXswzPAQu4kVDwAefGf5hyYBUM-80vYZwWPEpLI8K4yCBsF6I9N1yQaZAJmkMp_Iw371Menae4Mp4JusvBJS-s6LrmG2QbiZaFaxVJiW8KlUkWyUCns8-qFl5OMeYlgGFsyvvSHvXCzQrsEXqyCdS4tQJd73ayYA4SPtCb9clz76N1zE5WsV4Z0BYrxeb77oA7jJhh994RAPzCG0hmQ', privateKey: rsaPrivateKey, + jwk: rsaJwk, publicKey: rsaPublicKey }, rs512: { - token: 'eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.JlX3gXGyClTBFciHhknWrjo7SKqyJ5iBO0n-3S2_I7cIgfaZAeRDJ3SQEbaPxVC7X8aqGCOM-pQOjZPKUJN8DMFrlHTOdqMs0TwQ2PRBmVAxXTSOZOoEhD4ZNCHohYoyfoDhJDP4Qye_FCqu6POJzg0Jcun4d3KW04QTiGxv2PkYqmB7nHxYuJdnqE3704hIS56pc_8q6AW0WIT0W-nIvwzaSbtBU9RgaC7ZpBD2LiNE265UBIFraMDF8IAFw9itZSUCTKg1Q-q27NwwBZNGYStMdIBDor2Bsq5ge51EkWajzZ7ALisVp-bskzUsqUf77ejqX_CBAqkNdH1Zebn93A', + token: 'eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.jYW04zLDHfR1v7xdrW3lCGZrMIsVe0vWCfVkN2DRns2c3MN-mcp_-RE6TN9umSBYoNV-mnb31wFf8iun3fB6aDS6m_OXAiURVEKrPFNGlR38JSHUtsFzqTOj-wFrJZN4RwvZnNGSMvK3wzzUriZqmiNLsG8lktlEn6KA4kYVaM61_NpmPHWAjGExWv7cjHYupcjMSmR8uMTwN5UuAwgW6FRstCJEfoxwb0WKiyoaSlDuIiHZJ0cyGhhEmmAPiCwtPAwGeaL1yZMcp0p82cpTQ5Qb-7CtRov3N4DcOHgWYk6LomPR5j5cCkePAz87duqyzSMpCB0mCOuE3CU2VMtGeQ', privateKey: rsaPrivateKey, + jwk: rsaJwk, publicKey: rsaPublicKey }, es256: { token: 'eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.tyh-VfuzIxCyGYDlkBA7DfyjrqmSHu6pQ2hoZuFqUSLPNY2N0mpHb3nk5K17HWP_3cYHBw7AhHale5wky6-sVA', privateKey: ecPrivateKey256, + jwk: ecJwk256, publicKey: ecPublicKey256 }, es384: { token: 'eyJhbGciOiJFUzM4NCIsInR5cCI6IkpXVCIsImtpZCI6ImlUcVhYSTB6YkFuSkNLRGFvYmZoa00xZi02ck1TcFRmeVpNUnBfMnRLSTgifQ.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.cJOP_w-hBqnyTsBm3T6lOE5WpcHaAkLuQGAs1QO-lg2eWs8yyGW8p9WagGjxgvx7h9X72H7pXmXqej3GdlVbFmhuzj45A9SXDOAHZ7bJXwM1VidcPi7ZcrsMSCtP1hiN', privateKey: ecPrivateKey384, + jwk: ecJwk384, publicKey: ecPublicKey384 }, es512: { token: 'eyJhbGciOiJFUzUxMiIsInR5cCI6IkpXVCIsImtpZCI6InhaRGZacHJ5NFA5dlpQWnlHMmZOQlJqLTdMejVvbVZkbTd0SG9DZ1NOZlkifQ.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.AP_CIMClixc5-BFflmjyh_bRrkloEvwzn8IaWJFfMz13X76PGWF0XFuhjJUjp7EYnSAgtjJ-7iJG4IP7w3zGTBk_AUdmvRCiWp5YAe8S_Hcs8e3gkeYoOxiXFZlSSAx0GfwW1cZ0r67mwGtso1I3VXGkSjH5J0Rk6809bn25GoGRjOPu', privateKey: ecPrivateKey521, + jwk: ecJwk521, publicKey: ecPublicKey521 }, ps256: { - token: 'eyJhbGciOiJQUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.hZnl5amPk_I3tb4O-Otci_5XZdVWhPlFyVRvcqSwnDo_srcysDvhhKOD01DigPK1lJvTSTolyUgKGtpLqMfRDXQlekRsF4XhAjYZTmcynf-C-6wO5EI4wYewLNKFGGJzHAknMgotJFjDi_NCVSjHsW3a10nTao1lB82FRS305T226Q0VqNVJVWhE4G0JQvi2TssRtCxYTqzXVt22iDKkXeZJARZ1paXHGV5Kd1CljcZtkNZYIGcwnj65gvuCwohbkIxAnhZMJXCLaVvHqv9l-AAUV7esZvkQR1IpwBAiDQJh4qxPjFGylyXrHMqh5NlT_pWL2ZoULWTg_TJjMO9TuQ', + token: 'eyJhbGciOiJQUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.iOeNU4dAFFeBwNj6qdhdvm-IvDQrTa6R22lQVJVuWJxorJfeQww5Nwsra0PjaOYhAMj9jNMO5YLmud8U7iQ5gJK2zYyepeSuXhfSi8yjFZfRiSkelqSkU19I-Ja8aQBDbqXf2SAWA8mHF8VS3F08rgEaLCyv98fLLH4vSvsJGf6ueZSLKDVXz24rZRXGWtYYk_OYYTVgR1cg0BLCsuCvqZvHleImJKiWmtS0-CymMO4MMjCy_FIl6I56NqLE9C87tUVpo1mT-kbg5cHDD8I7MjCW5Iii5dethB4Vid3mZ6emKjVYgXrtkOQ-JyGMh6fnQxEFN1ft33GX2eRHluK9eg', privateKey: rsaPrivateKey, + jwk: rsaJwk, publicKey: rsaPublicKey }, ps384: { - token: 'eyJhbGciOiJQUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.MqF1AKsJkijKnfqEI3VA1OnzAL2S4eIpAuievMgD3tEFyFMU67gCbg-fxsc5dLrxNwdZEXs9h0kkicJZ70mp6p5vdv-j2ycDKBWg05Un4OhEl7lYcdIsCsB8QUPmstF-lQWnNqnq3wra1GynJrOXDL27qIaJnnQKlXuayFntBF0j-82jpuVdMaSXvk3OGaOM-7rCRsBcSPmocaAO-uWJEGPw_OWVaC5RRdWDroPi4YL4lTkDEC-KEvVkqCnFm_40C-T_siXquh5FVbpJjb3W2_YvcqfDRj44TsRrpVhk6ohsHMNeUad_cxnFnpolIKnaXq_COv35e9EgeQIPAbgIeg', + token: 'eyJhbGciOiJQUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.Lfe_aCQme_gQpUk9-6l9qesu0QYZtfdzfy08w8uqqPH_gnw-IVyQwyGLBHPFBJHMbifdSMxPjJjkCD0laIclhnBhowILu6k66_5Y2z78GHg8YjKocAvB-wSUiBhuV6hXVxE5emSjhfVz2OwiCk2bfk2hziRpkdMvfcITkCx9dmxHU6qcEIsTTHuH020UcGayB1-IoimnjTdCsV1y4CMr_ECDjBrqMdnontkqKRIM1dtmgYFsJM6xm7ewi_ksG_qZHhaoBkxQ9wq9OVQRGiSZYowCp73d2BF3jYMhdmv2JiaUz5jRvv6lVU7Quq6ylVAlSPxeov9voYHO1mgZFCY1kQ', privateKey: rsaPrivateKey, + jwk: rsaJwk, publicKey: rsaPublicKey - }/*, + }, ps512: { - token: 'eyJhbGciOiJQUzUxMiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.lLFQm3WUmHanSiQZBDcwEX9CH34ROOlPtgH3icJxaiesfvRHFDWHnG7GZQ6_-c6MU1h2LmP-mCpWM2evj7arIQCS63vp6K869CUZROhwCGZK1dfbOlYFAPg-AO4bBIKpS4NHkBIoo4O2LIbaIQT2gpBsYr4vMOX5UPCULWz8V8GlNKDv_2TYoHlttVm-2fpqQCt-ZEeCvaWEbWmk_dagewuxlhR7fXjdaSHo_6oQe6vic2sBu8RGv_NyQ97sB6X2jv1sXo0WIWihmPzDOpP0J4dmAIyCiGWQa8jXQfPN8JYbBD9j2w3xkKs7HCSl7VX3JfzxmSpTaOcVIGRnEt3kZA', + token: 'eyJhbGciOiJQUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.W0vasx0Lxmn3hkfi3RjJSLDSZnZbqDRZy6fau8wvIm_sdtTCiSJAjMSO1eR8YbnUF_MD10JYwR5unI8JO_qB8uSrW5vg4OPCDuPSQQu0Pnf9Q2Cy3WqSK166lgidlwAqyijgPFp5ggOnJM20IY4F8W6HOqcGeXcRzsaM2DIBEnku32TM7Xb-aCJYdKtawEfvD1zEwE1of02BoGva3sf_RhijMZpOA3yIG3FCDll-3M1rILP9Bi4FPz_uOAbJkKvUirAdaMX-KNaw6T_0nnBwHaFc8M9GGVZV6bT4uaOQ1U0Ezi4SAcBWW8kkPKZNorpRC5EtO_X6uvIVazj5EHERuw', privateKey: rsaPrivateKey, + jwk: rsaJwk, publicKey: rsaPublicKey - }*/ + } }; diff --git a/src/editor/jwt.js b/src/editor/jwt.js index 22a0cc98..83f4bb15 100644 --- a/src/editor/jwt.js +++ b/src/editor/jwt.js @@ -1,74 +1,61 @@ -import jose from 'node-jose'; import b64u from 'base64url'; import any from 'promise.any'; -import { pki } from 'node-forge'; import strings from '../strings'; -strings import log from 'loglevel'; -import { findLastIndex } from 'lodash'; +import * as keyImport from 'jose/key/import' +import CompactSign from 'jose/jws/compact/sign' +import compactVerify from 'jose/jws/compact/verify' +import { pki } from 'node-forge'; -// node-jose does not support keys shorter than block size. This is a -// limitation from their implementation and could be resolved in the future. -// See: https://github.com/cisco/node-jose/blob/master/lib/jwk/octkey.js#L141 -function paddedKey(key, alg, base64Secret) { - const blockSizeBytes = alg.indexOf('256') !== -1 ? 512 / 8 : 1024 / 8; +function symmetricSecret(key, alg, base64Secret) { + let secret = base64Secret ? Buffer.from(key, 'base64') : Buffer.from(key); - let buf = base64Secret ? Buffer.from(key, 'base64') : Buffer.from(key); + const len = Math.max(parseInt(alg.substr(-3), 10) >> 3, secret.byteLength); - if (buf.length < blockSizeBytes) { - const oldBuf = buf; - buf = Buffer.alloc(blockSizeBytes); - buf.set(oldBuf); - } + const padded = new Uint8Array(len); + padded.set(secret); - return b64u.encode(buf); + return Promise.resolve(padded); } -/* - * This function handles plain RSA keys not wrapped in a - * X.509 SubjectPublicKeyInfo structure. It returns a PEM encoded public key - * wrapper in that structure. - * See: https://stackoverflow.com/questions/18039401/how-can-i-transform-between-the-two-styles-of-public-key-format-one-begin-rsa - * @param {String} publicKey The public key as a PEM string. - * @returns {String} The PEM encoded public key in - * X509 SubjectPublicKeyInfo format. - */ -function plainRsaKeyToX509Key(key) { - try { - const startTag = '-----BEGIN RSA PUBLIC KEY-----'; - const endTag = '-----END RSA PUBLIC KEY-----'; - const startTagPos = key.indexOf(startTag); - const endTagPos = key.indexOf(endTag); - - return startTagPos !== -1 && endTagPos !== -1 ? - pki.publicKeyToPem(pki.publicKeyFromPem(key)) : - key; - } catch (e) { - // If anything fails, it may not be a plain RSA key, so return the same key. - return key; - } -} +const types = { + 'PRIVATE': 1, + 'PUBLIC': 2, +}; + +const rawPublic = ({ alg, oth, d, p, q, dp, dq, qi, use, key_ops, ext, ...jwk }) => jwk; +const rawPrivate = ({ alg, use, key_ops, ext, ...jwk }) => jwk; -function getJoseKey(header, key, base64Secret) { +function getJoseKey(header, key, base64Secret, type) { if (header.alg.indexOf('HS') === 0) { - return jose.JWK.asKey({ - kty: 'oct', - use: 'sig', - alg: header.alg, - k: paddedKey(key, header.alg, base64Secret) - }); - } else { - if (header.alg.indexOf('RS') === 0) { - key = plainRsaKeyToX509Key(key); - } + return symmetricSecret(key, header.alg, base64Secret) + } - return any(['pem', 'json'].map(form => { - try { - return jose.JWK.asKey(key, form); - } catch (e) { - return Promise.reject(e); + switch (type) { + case types.PRIVATE: + if (key.startsWith('-----BEGIN RSA PRIVATE KEY-----')) { + key = pki.privateKeyInfoToPem(pki.wrapRsaPrivateKey(pki.privateKeyToAsn1(pki.privateKeyFromPem(key)))) + } + return any([ + keyImport.importPKCS8(key, header.alg), + Promise.resolve().then(() => JSON.parse(key)).then(rawPrivate).then((jwk) => { + if (!('d' in jwk)) throw new Error('not a private JWK') + return keyImport.importJWK(jwk, header.alg) + }) + ]) + case types.PUBLIC: + if (key.startsWith('-----BEGIN RSA PUBLIC KEY-----')) { + key = pki.publicKeyToPem(pki.publicKeyFromPem(key)) } - })); + return any([ + keyImport.importSPKI(key, header.alg), + keyImport.importX509(key, header.alg), + Promise.resolve().then(() => JSON.parse(key)).then(rawPublic).then((jwk) => { + return keyImport.importJWK(jwk, header.alg) + }) + ]) + default: + throw new Error('unreachable') } } @@ -80,19 +67,15 @@ export function sign(header, return Promise.reject(new Error('Missing "alg" claim in header')); } - return getJoseKey(header, secretOrPrivateKeyString, base64Secret).then( + return getJoseKey(header, secretOrPrivateKeyString, base64Secret, types.PRIVATE).then( key => { if (!(typeof payload === 'string' || payload instanceof String)) { payload = JSON.stringify(payload); } - return jose.JWS.createSign({ - fields: header, - format: 'compact' - }, { - key: key, - reference: false - }).update(payload, 'utf8').final(); + return new CompactSign(new TextEncoder().encode(payload)) + .setProtectedHeader(header) + .sign(key); } ); } @@ -108,17 +91,18 @@ export function verify(jwt, secretOrPublicKeyString, base64Secret = false) { return Promise.resolve({ validSignature: false }); } - return getJoseKey(decoded.header, secretOrPublicKeyString, base64Secret).then( + return getJoseKey(decoded.header, secretOrPublicKeyString, base64Secret, types.PUBLIC).then( key => { - return jose.JWS.createVerify(key) - .verify(jwt) + return compactVerify(jwt, key) .then(() => ({ validSignature: true, validBase64: jwt.split('.').reduce((valid, s) => valid = valid && isValidBase64String(s), true) - }), () => ({ validSignature: false })); + }), (e) => { + log.warn('Could not verify token: ', e); + return { validSignature: false } + }); }, e => { - log.warn('Could not verify token, ' + - 'probably due to bad data in it or the keys: ', e); + log.warn('Could not load the key(s): ', e); return { validSignature: false }; } ); @@ -206,4 +190,4 @@ export function isToken(jwt, checkTypClaim = false) { split.forEach(s => valid = valid && isValidBase64String(s, true)); return valid; -} \ No newline at end of file +} diff --git a/src/editor/public-key-download.js b/src/editor/public-key-download.js index 07b9209b..ac9fd52e 100644 --- a/src/editor/public-key-download.js +++ b/src/editor/public-key-download.js @@ -1,24 +1,16 @@ -import jose from 'node-jose'; +import { createRemoteJWKSet } from 'jose/jwks/remote' +import { EmbeddedJWK } from 'jose/jwk/embedded' +import * as keyExport from 'jose/key/export' import { httpGet } from '../utils.js'; function getKeyFromX5c(x5c) { - if(!x5c) { - throw new Error('x5c claim not present?'); + if(!Array.isArray(x5c) || typeof x5c[0] !== 'string') { + throw new Error('x5c claim not present or invalid'); } - if(!(x5c instanceof Array)) { - x5c = [ x5c ]; - } - - let certChain = ''; - x5c.forEach(cert => { - certChain += '-----BEGIN CERTIFICATE-----\n'; - certChain += cert + '\n'; - certChain += '-----END CERTIFICATE-----\n'; - }); - - return certChain; + const newlined = (x5c[0].match(/.{1,64}/g) || []).join('\n') + return `-----BEGIN CERTIFICATE-----\n${newlined}\n-----END CERTIFICATE-----` } function getKeyFromX5Claims(claims) { @@ -33,36 +25,8 @@ function getKeyFromX5Claims(claims) { }); } -function getKeyFromJwkKeySetUrl(kid, url) { - return httpGet(url).then(data => { - data = JSON.parse(data); - - if(!data || !data.keys || !(data.keys instanceof Array)) { - throw new Error(`Could not get JWK key set from URL: ${url}`); - } - - for(let i = 0; i < data.keys.length; ++i) { - const jwk = data.keys[i]; - if(jwk.kid === kid) { - return getKeyFromX5Claims(jwk); - } - } - - throw new Error(`Could not find key with kid ${kid} in URL: ${url}`); - }); -} - -function supportedJwk({ kty, crv }) { - switch (kty) { - case 'RSA': - return true; - case 'EC': - return ['P-256', 'P-384', 'P-521'].includes(crv) - // node-jose does not support e.g. OKP keys or non-registered curves such as P-256K - // we also don't populate the HMAC secret - default: - return false; - } +function getKeyFromJwkKeySetUrl(header, url) { + return createRemoteJWKSet(new URL(url))(header, {}).then((key) => keyExport.exportSPKI(key)) } export function downloadPublicKeyIfPossible(decodedToken) { @@ -76,11 +40,11 @@ export function downloadPublicKeyIfPossible(decodedToken) { } if(header.x5c || header.x5u) { - resolve(getKeyFromX5Claims(header)); + getKeyFromX5Claims(header).then(resolve, reject); } else if(header.jku) { - resolve(getKeyFromJwkKeySetUrl(header.kid, header.jku)); + getKeyFromJwkKeySetUrl(header, header.jku).then(resolve, reject); } else if(header.jwk) { - resolve(getKeyFromX5Claims(header.jwk)); + EmbeddedJWK(header, {}).then((key) => keyExport.exportSPKI(key)).then(resolve, reject); } else if(payload.iss) { const url = payload.iss + (payload.iss.substr(-1) === '/' ? '.well-known/openid-configuration' : '/.well-known/openid-configuration') @@ -91,20 +55,7 @@ export function downloadPublicKeyIfPossible(decodedToken) { throw new Error(`Could not get jwks_uri from URL: ${url}`); } - return httpGet(data.jwks_uri) - }).then(data => { - const { keys } = JSON.parse(data); - - return jose.JWK.asKeyStore({ keys: keys.filter(supportedJwk) }); - }).then(jwks => { - - const keys = jwks.all({ alg: header.alg, kid: header.kid, use: 'sig' }) - - if (keys.length !== 1) { - throw new Error('Could not find a single definitive key in jwks_uri'); - } - - resolve(keys[0].toPEM()) + return getKeyFromJwkKeySetUrl(header, data.jwks_uri).then(resolve); }).catch(reject); } else { reject('No details about key'); diff --git a/src/editor/utils.js b/src/editor/utils.js index e944ac14..60121485 100644 --- a/src/editor/utils.js +++ b/src/editor/utils.js @@ -1,7 +1,5 @@ +import * as Bowser from 'bowser'; import { isWideScreen } from '../utils.js'; -import * as jwt from './jwt.js'; -import registeredClaims from './jwt-iana-registered-claims.js'; -import forge from 'node-forge'; import { algorithmSelect, algorithmEs512, @@ -9,7 +7,7 @@ import { decodedElement } from '../dom-elements.js'; -const sha256 = forge.md.sha256.create(); +const browser = Bowser.parse(window.navigator.userAgent); export function getTrimmedValue(instance) { const value = instance.getValue(); @@ -37,13 +35,13 @@ export function getSelectedAlgorithm() { return selected.value; } -export function isSafari() { - return /^((?!chrome|android).)*safari/i.test(navigator.userAgent); +export function isWebkit() { + return browser.engine.name === 'WebKit'; } export function disableUnsupportedAlgorithms() { // TODO: test supported algorithms in runtime - if(isSafari()) { + if(isWebkit()) { algorithmEs512.disabled = true; } } @@ -51,86 +49,3 @@ export function disableUnsupportedAlgorithms() { export function isString(value) { return typeof value === 'string' || value instanceof String; } - -function getRegisteredClaims(payload) { - const result = []; - - registeredClaims.forEach(claim => { - if(claim in payload) { - result.push(claim); - } - }); - - return result; -} - -function getScopes(payload) { - if(!isString(payload.scope)) { - return []; - } - - const scopes = payload.scope.split(/\s+/).filter(scope => { - return scope.length > 0 && /\S+/.test(scope); - }); - - return scopes; -} - -function getNumberOfScopes(payload) { - return getScopes(payload).length; -} - -function getOIDCScopes(payload) { - const oidcScopes = ['openid', 'profile', 'email', - 'address', 'phone', 'offline_access']; - const scopes = getScopes(payload); - - return scopes.filter(scope => oidcScopes.indexOf(scope) !== -1); -} - -export function getSafeTokenInfo(token) { - try { - sha256.start(); - sha256.update(token); - - const result = { - hash: sha256.digest().toHex() - }; - - try { - const decoded = jwt.decode(token); - - Object.assign(result, { - decodedWithErrors: decoded.errors, - encodedSize: token.length, - header: { - alg: decoded.header.alg, - }, - payload: { - registeredClaimsPresent: getRegisteredClaims(decoded.payload), - oidcScopesPresent: getOIDCScopes(decoded.payload), - numberOfScopes: getNumberOfScopes(decoded.payload), - numberOfClaims: Object.keys(decoded.payload).length, - issuer: decoded.payload.iss ? decoded.payload.iss : null - } - }); - - if(decoded.payload.amr) { - result.payload.amr = decoded.payload.amr; - } - - return result; - } catch(e) { - return Object.assign(result, { - error: 'error decoding token', - }); - } - } catch(e) { - sha256.start(); - - return { - error: 'error reading token', - hash: sha256.digest().toHex() // Hash for empty string - }; - } -} diff --git a/src/utils.js b/src/utils.js index e6f91ac2..85e8dd90 100644 --- a/src/utils.js +++ b/src/utils.js @@ -30,49 +30,6 @@ export function httpGet(url, cache = true) { }); } -/*export function isValidKey(key) { - // Four tries: no header, header for cert, header for pub key, - // header for priv key - - const headers = [{ - prologue: '', - epilogue: '' - },{ - prologue: '-----BEGIN CERTIFICATE-----\n', - epilogue: '-----END CERTIFICATE-----\n' - }, { - prologue: '-----BEGIN PUBLIC KEY-----\n', - epilogue: '-----END PUBLIC KEY-----\n' - }, { - prologue: '-----BEGIN PRIVATE KEY-----\n', - epilogue: '-----END PRIVATE KEY-----\n' - }, { - prologue: '-----BEGIN RSA PRIVATE KEY-----\n', - epilogue: '-----END RSA PRIVATE KEY-----\n' - }]; - - for(let i = 0; i < headers.length; ++i) { - const header = headers[i]; - try { - let newKey = header.prologue; - newKey += key + '\n'; - newKey += header.epilogue; - - return { - valid: !!KEYUTIL.getKey(newKey), - key: newKey - }; - } catch(e2) { - // Ignore - } - } - - return { - valid: false, - key: key - }; -}*/ - export function deferToNextLoop(func) { setTimeout(func, 1); } diff --git a/test/functional/editor.js b/test/functional/editor.js index 897dea2d..46f5bf7c 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -3,7 +3,9 @@ const chaiAsPromised = require('chai-as-promised'); const chaiArrays = require('chai-arrays'); const express = require('express'); -const jose = require('node-jose'); +const { importPKCS8, importSPKI } = require('jose/key/import') +const { CompactSign } = require('jose/jws/compact/sign') +const { exportJWK } = require('jose/key/export') const _ = require('lodash'); @@ -335,15 +337,11 @@ describe('Editor', function() { const secretInput = await this.page.$('input[name="secret"]'); await secretInput.click(); await selectAll.call(this); - await secretInput.type(tokens[alg].secret, { - delay: typingDelay - }); + await secretInput.type(tokens[alg].secret); await this.page.click('.js-input'); await selectAll.call(this); - await this.page.keyboard.type(tokens[alg].token, { - delay: typingDelay - }); + await this.page.keyboard.type(tokens[alg].token); // Wait for token processing. await this.page.waitFor(tokenProcessingWait); @@ -425,153 +423,83 @@ describe('Editor', function() { describe('Public-key', function() { describe('Decodes RS/ES/PS tokens', function() { - const algs = Object.keys(defaultTokens) - .filter(alg => !alg.includes('hs')); + const algs = Object.keys(defaultTokens).filter(alg => !alg.includes('hs')); for(const alg of algs) { - it(alg.toUpperCase(), async function() { - await this.page.click('.js-input'); - await selectAll.call(this); - await this.page.keyboard.type(tokens[alg].token, { - delay: typingDelay - }); - - const secretInput = await this.page.$('textarea[name="public-key"]'); - await secretInput.click(); - await selectAll.call(this); - await secretInput.type(tokens[alg].publicKey, { - delay: typingDelay - }); + for (const format of ['pem', 'jwk']) { + it(`${alg.toUpperCase()} using a ${format.toUpperCase()} key`, async function() { + await this.page.click('.js-input'); + await selectAll.call(this); + await this.page.keyboard.type(tokens[alg].token); - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); - await this.page.waitFor(tokenEditorThrottleWait); + const secretInput = await this.page.$('textarea[name="public-key"]'); + await secretInput.click(); + await selectAll.call(this); - const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && - status.textContent.indexOf('verified') !== -1; - }); + let publicKey = tokens[alg].publicKey; + if (format === 'jwk') { + publicKey = JSON.stringify(await importSPKI(publicKey).then(exportJWK)) + } - expect(valid).to.be.true; + await secretInput.type(publicKey); - const payload = await this.page.evaluate(() => { - return window.test.payloadEditor.getValue(); - }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); - expect(payload).to.include(alg + 'test'); - }); - } - }); + const valid = await this.page.$eval('.validation-status', status => { + return status.classList.contains('valid-token') && + status.textContent.indexOf('verified') !== -1; + }); - describe('Encodes RS/ES/PS tokens', function() { - describe('RS/PS', async function() { - before(async function() { - await this.page.select('#algorithm-select', 'RS256'); + expect(valid).to.be.true; - await this.page.click('textarea[name="public-key"]'); - await selectAll.call(this); - await this.page.keyboard.type(defaultTokens['rs256'].publicKey, { - delay: typingDelay - }); + const payload = await this.page.evaluate(() => { + return window.test.payloadEditor.getValue(); + }); - await this.page.click('textarea[name="private-key"]'); - await selectAll.call(this); - await this.page.keyboard.type(defaultTokens['rs256'].privateKey, { - delay: typingDelay + expect(payload).to.include(alg + 'test'); }); - }); - - const algs = - Object.keys(defaultTokens) - .filter(alg => alg.includes('rs') || alg.includes('ps')); - - for(const alg of algs) { - it(alg.toUpperCase(), async function() { - //this.timeout(30000); + } + } + }); - await this.page.evaluate(token => { - window.test.tokenEditor.setValue(token); - }, defaultTokens[alg].token); + describe('Encodes RS/ES/PS tokens', function() { + const algs = Object.keys(defaultTokens).filter(alg => !alg.includes('hs')); + for(const alg of algs) { + for (const format of ['pem', 'jwk']) { + it(`${alg.toUpperCase()} using a ${format.toUpperCase()} key`, async function() { await this.page.select('#algorithm-select', alg.toUpperCase()); - const oldToken = await this.page.evaluate(() => { - return window.test.tokenEditor.getValue(); - }); + let publicKey = defaultTokens[alg].publicKey; + if (format === 'jwk') { + publicKey = JSON.stringify(await importSPKI(publicKey).then(exportJWK)) + } - await this.page.click('.js-header'); + let privateKey = defaultTokens[alg].privateKey; + if (format === 'jwk') { + privateKey = JSON.stringify(await importPKCS8(privateKey).then(exportJWK)) + } + + await this.page.click('textarea[name="public-key"]'); await selectAll.call(this); - await this.page.keyboard.type(JSON.stringify({ - alg: alg.toUpperCase(), - typ: 'JWT' - }, null, 2), { + await this.page.keyboard.type(publicKey, { delay: typingDelay }); - await this.page.click('.js-payload'); + await this.page.click('textarea[name="private-key"]'); await selectAll.call(this); - await this.page.keyboard.type(JSON.stringify({ - sub: 'test' - }, null, 2), { + await this.page.keyboard.type(privateKey, { delay: typingDelay }); - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); - await this.page.waitFor(tokenEditorThrottleWait); - - const newToken = await this.page.evaluate(() => { - return window.test.tokenEditor.getValue(); - }); - - expect(newToken).to.not.be.empty; - expect(newToken).to.not.equal(oldToken); - - const valid = await this.page.$eval('.validation-status', - status => { - return status.classList.contains('valid-token') && - status.textContent.indexOf('verified') !== -1; - }); - - expect(valid).to.be.true; - }); - } - }); - - describe('ES', async function() { - before(async function() { - await this.page.select('#algorithm-select', 'ES256'); - - await this.page.click('textarea[name="public-key"]'); - await selectAll.call(this); - await this.page.keyboard.type(defaultTokens['es256'].publicKey, { - delay: typingDelay - }); - - await this.page.click('textarea[name="private-key"]'); - await selectAll.call(this); - await this.page.keyboard.type(defaultTokens['es256'].privateKey, { - delay: typingDelay - }); - }); - - const algs = Object.keys(defaultTokens) - .filter(alg => alg.includes('es')); - - for(const alg of algs) { - it(alg.toUpperCase(), async function() { - //this.timeout(30000); - await this.page.evaluate(token => { window.test.tokenEditor.setValue(token); }, defaultTokens[alg].token); await this.page.select('#algorithm-select', alg.toUpperCase()); - const oldToken = await this.page.evaluate(() => { - return window.test.tokenEditor.getValue(); - }); - await this.page.click('.js-header'); await selectAll.call(this); await this.page.keyboard.type(JSON.stringify({ @@ -598,18 +526,17 @@ describe('Editor', function() { }); expect(newToken).to.not.be.empty; - expect(newToken).to.not.equal(oldToken); const valid = await this.page.$eval('.validation-status', status => { return status.classList.contains('valid-token') && - status.textContent.indexOf('verified') !== -1; + status.textContent.indexOf('verified') !== -1; }); expect(valid).to.be.true; }); } - }); + } }); describe('Should download public-keys when possible', function() { @@ -645,26 +572,19 @@ describe('Editor', function() { }); it('iss URL + .well-known', async function() { - const key = await jose.JWK.asKey(defaultTokens.rs256.privateKey, 'pem'); - const token = await jose.JWS.createSign({ - fields: { - alg: 'RS256', - typ: 'JWT', - kid: '1' - }, - format: 'compact' - }, { - key: key - }).update(JSON.stringify({ + const key = await importPKCS8(defaultTokens.rs256.privateKey, 'RS256'); + const token = await new CompactSign(Buffer.from(JSON.stringify({ sub: 'test', iss: 'http://localhost:3000/' - }), 'utf8').final(); + }))).setProtectedHeader({ + alg: 'RS256', + typ: 'JWT', + kid: '1' + }).sign(key); await this.page.click('.js-input'); await selectAll.call(this); - await this.page.keyboard.type(token, { - delay: typingDelay - }); + await this.page.keyboard.type(token); await this.page.waitFor(2000); await this.page.waitFor(tokenEditorThrottleWait); @@ -672,39 +592,25 @@ describe('Editor', function() { const publicKey = await this.page.$eval('textarea[name="public-key"]', publicKeyElement => publicKeyElement.value); - expect(publicKey).to.include(`-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnzyis1ZjfNB0bBgKFMSv\nvkTtwlvBsaJq7S5wA+kzeVOVpVWwkWdVha4s38XM/pa/yr47av7+z3VTmvDRyAHc\naT92whREFpLv9cj5lTeJSibyr/Mrm/YtjCZVWgaOYIhwrXwKLqPr/11inWsAkfIy\ntvHWTxZYEcXLgAXFuUuaS3uF9gEiNQwzGTU1v0FqkqTBr4B8nW3HCN47XUu0t8Y0\ne+lf4s4OxQawWD79J9/5d3Ry0vbV3Am1FtGJiJvOwRsIfVChDpYStTcHTCMqtvWb\nV6L11BWkpzGXSW4Hv43qa+GSYOD2QU68Mb59oSk2OB+BtOLpJofmbGEGgvmwyCI9\nMwIDAQAB\n-----END PUBLIC KEY-----`); - - const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && - status.textContent.indexOf('verified') !== -1; - }); - - expect(valid).to.be.true; + expect(publicKey).to.include(defaultTokens.rs256.publicKey); }); it('jku', async function() { //this.timeout(20000); - const key = await jose.JWK.asKey(defaultTokens.rs256.privateKey, 'pem'); - const token = await jose.JWS.createSign({ - fields: { - alg: 'RS256', - typ: 'JWT', - kid: '1', - jku: 'http://localhost:3000/.well-known/jwks.json' - }, - format: 'compact' - }, { - key: key - }).update(JSON.stringify({ + const key = await importPKCS8(defaultTokens.rs256.privateKey, 'RS256'); + const token = await new CompactSign(Buffer.from(JSON.stringify({ sub: 'test' - }), 'utf8').final(); + }))).setProtectedHeader({ + alg: 'RS256', + typ: 'JWT', + kid: '1', + jku: 'http://localhost:3000/.well-known/jwks.json' + }).sign(key); await this.page.click('.js-input'); await selectAll.call(this); - await this.page.keyboard.type(token, { - delay: typingDelay - }); + await this.page.keyboard.type(token); await this.page.waitFor(2000); await this.page.waitFor(tokenEditorThrottleWait); @@ -712,52 +618,31 @@ describe('Editor', function() { const publicKey = await this.page.$eval('textarea[name="public-key"]', publicKeyElement => publicKeyElement.value); - expect(publicKey).to.include(jwks.keys[0].x5c[0]); - - const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && - status.textContent.indexOf('verified') !== -1; - }); - - expect(valid).to.be.true; + expect(publicKey).to.include(defaultTokens.rs256.publicKey); }); it('x5c', async function() { //this.timeout(35000); - const key = await jose.JWK.asKey(defaultTokens.rs256.privateKey, 'pem'); - const token = await jose.JWS.createSign({ - fields: { - alg: 'RS256', - typ: 'JWT', - x5c: jwks.keys[0].x5c[0] - }, - format: 'compact' - }, { - key: key - }).update(JSON.stringify({ - sub: 'test', - }), 'utf8').final(); + const key = await importPKCS8(defaultTokens.rs256.privateKey, 'RS256'); + const token = await new CompactSign(Buffer.from(JSON.stringify({ + sub: 'test' + }))).setProtectedHeader({ + alg: 'RS256', + typ: 'JWT', + x5c: jwks.keys[0].x5c + }).sign(key); await this.page.click('.js-input'); await selectAll.call(this); - await this.page.keyboard.type(token, { - delay: typingDelay - }); + await this.page.keyboard.type(token); await this.page.waitFor(2000); const publicKey = await this.page.$eval('textarea[name="public-key"]', publicKeyElement => publicKeyElement.value); - expect(publicKey).to.include(jwks.keys[0].x5c[0]); - - const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && - status.textContent.indexOf('verified') !== -1; - }); - - expect(valid).to.be.true; + expect(publicKey).to.include('-----BEGIN CERTIFICATE-----\nMIIDBjCCAe4CCQDOaPo3zzlhlzANBgkqhkiG9w0BAQsFADBFMQswCQYDVQQGEwJV\nUzETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0\ncyBQdHkgTHRkMB4XDTE5MDYwNTEwMDg0OVoXDTIwMDYwNDEwMDg0OVowRTELMAkG\nA1UEBhMCVVMxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoMGEludGVybmV0\nIFdpZGdpdHMgUHR5IEx0ZDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB\nAJ88orNWY3zQdGwYChTEr75E7cJbwbGiau0ucAPpM3lTlaVVsJFnVYWuLN/FzP6W\nv8q+O2r+/s91U5rw0cgB3Gk/dsIURBaS7/XI+ZU3iUom8q/zK5v2LYwmVVoGjmCI\ncK18Ci6j6/9dYp1rAJHyMrbx1k8WWBHFy4AFxblLmkt7hfYBIjUMMxk1Nb9BapKk\nwa+AfJ1txwjeO11LtLfGNHvpX+LODsUGsFg+/Sff+Xd0ctL21dwJtRbRiYibzsEb\nCH1QoQ6WErU3B0wjKrb1m1ei9dQVpKcxl0luB7+N6mvhkmDg9kFOvDG+faEpNjgf\ngbTi6SaH5mxhBoL5sMgiPTMCAwEAATANBgkqhkiG9w0BAQsFAAOCAQEAU4Nx25sl\niX8gD10Oik+RpBpHmsuZBU6q3nqYQKMlVdKFVeuptdqNjnVZY0WSSYvAUdtZ1kCu\nkMxjhvPb+LVaCkfOfXEuSqyjN55C1vDLpCV0xMb3irltYaWRIeHkqlRxRmoS+569\nZ/qg+JqZnCuEc6CeLLkzhVq+zagJkJs3evpSmofrY4qzJ1s1rygqSUhyS5NoyGAX\nCHba+m+7qMuSC3yOEPfiuAh9h6D/RltGi1iQ9Yqi4DoKlW9mfKGXbDn8thkGNdc7\n6yffilC8B/7Q8d5Btox/fE9yNI4YVhUEo+MkvUMnT1KS9fbw0o6fTjSa0D2oaHSO\nyBSs097rzC1PIw==\n-----END CERTIFICATE-----'); }); }); @@ -828,16 +713,12 @@ describe('Editor', function() { await this.page.click('.js-input'); await selectAll.call(this); - await this.page.keyboard.type(tokens['rs256'].token, { - delay: typingDelay - }); + await this.page.keyboard.type(tokens['rs256'].token); const secretInput = await this.page.$('textarea[name="public-key"]'); await secretInput.click(); await selectAll.call(this); - await secretInput.type(tokens['rs256'].publicKey, { - delay: typingDelay - }); + await secretInput.type(tokens['rs256'].publicKey); // Wait for token processing. await this.page.waitFor(tokenProcessingWait); @@ -873,16 +754,12 @@ describe('Editor', function() { await this.page.click('.js-input'); await selectAll.call(this); - await this.page.keyboard.type(tokens['rs256'].token, { - delay: typingDelay - }); + await this.page.keyboard.type(tokens['rs256'].token); const secretInput = await this.page.$('textarea[name="public-key"]'); await secretInput.click(); await selectAll.call(this); - await secretInput.type(tokens['rs256'].publicKey, { - delay: typingDelay - }); + await secretInput.type(tokens['rs256'].publicKey); // Wait for token processing. await this.page.waitFor(tokenProcessingWait); @@ -960,9 +837,7 @@ describe('Editor', function() { const secretInput = await this.page.$('textarea[name="public-key"]'); await secretInput.click(); await selectAll.call(this); - await secretInput.type(tokens['rs256'].publicKey, { - delay: typingDelay - }); + await secretInput.type(tokens['rs256'].publicKey); const privateKeyInput = await this.page.$('textarea[name="private-key"]'); await privateKeyInput.click(); @@ -971,9 +846,7 @@ describe('Editor', function() { await this.page.click('.js-input'); await selectAll.call(this); - await this.page.keyboard.type(tokens['rs256'].token, { - delay: typingDelay - }); + await this.page.keyboard.type(tokens['rs256'].token); await this.page.waitFor(1000); @@ -992,9 +865,7 @@ describe('Editor', function() { await this.page.click('.js-input'); await selectAll.call(this); - await this.page.keyboard.type(tokens.hs256.token, { - delay: typingDelay - }); + await this.page.keyboard.type(tokens.hs256.token); await this.page.select('#algorithm-select', 'HS384'); @@ -1010,9 +881,7 @@ describe('Editor', function() { await this.page.click('.js-input'); await selectAll.call(this); - await this.page.keyboard.type(tokens.none.token, { - delay: typingDelay - }); + await this.page.keyboard.type(tokens.none.token); // Wait for token processing. await this.page.waitFor(tokenProcessingWait); diff --git a/test/functional/jwks.json b/test/functional/jwks.json index 8f57c7e7..89192924 100644 --- a/test/functional/jwks.json +++ b/test/functional/jwks.json @@ -10,7 +10,7 @@ "kid": "1", "x5t": "1", "e": "AQAB", - "n": "nzyis1ZjfNB0bBgKFMSvvkTtwlvBsaJq7S5wA-kzeVOVpVWwkWdVha4s38XM_pa_yr47av7-z3VTmvDRyAHcaT92whREFpLv9cj5lTeJSibyr_Mrm_YtjCZVWgaOYIhwrXwKLqPr_11inWsAkfIytvHWTxZYEcXLgAXFuUuaS3uF9gEiNQwzGTU1v0FqkqTBr4B8nW3HCN47XUu0t8Y0e-lf4s4OxQawWD79J9_5d3Ry0vbV3Am1FtGJiJvOwRsIfVChDpYStTcHTCMqtvWbV6L11BWkpzGXSW4Hv43qa-GSYOD2QU68Mb59oSk2OB-BtOLpJofmbGEGgvmwyCI9Mw" + "n": "u1SU1LfVLPHCozMxH2Mo4lgOEePzNm0tRgeLezV6ffAt0gunVTLw7onLRnrq0_IzW7yWR7QkrmBL7jTKEn5u-qKhbwKfBstIs-bMY2Zkp18gnTxKLxoS2tFczGkPLPgizskuemMghRniWaoLcyehkd3qqGElvW_VDL5AaWTg0nLVkjRo9z-40RQzuVaE8AkAFmxZzow3x-VJYKdjykkJ0iT9wCS0DRTXu269V264Vf_3jvredZiKRkgwlL9xNAwxXFg0x_XFw005UWVRIkdgcKWTjpBP2dPwVZ4WWC-9aGVd-Gyn1o0CLelf4rEjGoXbAAEgAqeGUxrcIlbjXfbcmw" } ] } diff --git a/test/functional/libraries.js b/test/functional/libraries.js index 7ca00ab4..2176c945 100644 --- a/test/functional/libraries.js +++ b/test/functional/libraries.js @@ -92,7 +92,8 @@ describe('Libraries', function() { })).to.be.true; }); - it('Has a data-repo attribute for star counts if repo ' + + // skipped since we're pulling these on the server now + it.skip('Has a data-repo attribute for star counts if repo ' + 'is in GitHub', async function() { const repos = await this.page.$$eval('.panel-wrap', bodies => { const result = []; diff --git a/test/functional/tokens.js b/test/functional/tokens.js index 56ea8df9..6dee3b98 100644 --- a/test/functional/tokens.js +++ b/test/functional/tokens.js @@ -1,9 +1,12 @@ const rsaPublicKey = `-----BEGIN PUBLIC KEY----- -MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDdlatRjRjogo3WojgGHFHYLugd -UWAY9iR3fy4arWNA1KoS8kVw33cJibXr8bvwUAUparCwlvdbH6dvEOfou0/gCFQs -HUfQrSDv+MuSUMAe8jzKE4qW+jK+xQU9a03GUnKHkkle+Q0pX/g6jXZ7r1/xAK5D -o2kQ+X5xK9cipRgEKwIDAQAB +MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAu1SU1LfVLPHCozMxH2Mo +4lgOEePzNm0tRgeLezV6ffAt0gunVTLw7onLRnrq0/IzW7yWR7QkrmBL7jTKEn5u ++qKhbwKfBstIs+bMY2Zkp18gnTxKLxoS2tFczGkPLPgizskuemMghRniWaoLcyeh +kd3qqGElvW/VDL5AaWTg0nLVkjRo9z+40RQzuVaE8AkAFmxZzow3x+VJYKdjykkJ +0iT9wCS0DRTXu269V264Vf/3jvredZiKRkgwlL9xNAwxXFg0x/XFw005UWVRIkdg +cKWTjpBP2dPwVZ4WWC+9aGVd+Gyn1o0CLelf4rEjGoXbAAEgAqeGUxrcIlbjXfbc +mwIDAQAB -----END PUBLIC KEY-----`; const ecPublicKey256 = @@ -44,15 +47,15 @@ module.exports = { secret: 'secret' }, rs256: { - token: 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6InJzMjU2dGVzdCJ9.qEQ_Gi7jYveN-sg-nRol_y0ULB0rtGIOGdOly0SkMFpc3HUxnj8addm-0UNdrJYLJv3CsFpXj_HnldvgDxpk0XAw8ArbeK-jCoxNFqUGBSITsLXQY5Chs8dh80C4vhKwxFqzo1FVxT2RlZIp_wN9dteKelGG-IVFNAhIlcHsSdw', + token: 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6InJzMjU2dGVzdCJ9.ngCSp0NA7x21PySWoXTqNFA9Ts-Tz0F8bkF7jIajkM6l-X9HiBY2LF-LUqLW88k0QtBOgg9IYDRsB1-5zFyCp0byQXpyvHOfXKJ9NmaxdjtrDFB2Gr5EtAIyWzWfzbQkiVK0kmYSjhkKqZ5u8vkdnE0GSi4p5OGth9gteHsO2OAau9PCQ50-zOJDPytpwU8KLHKprP255ztR4_S5FjRvni2-jx0O6RPBSnZ2Xw9fr6BD-i21QMugzcJiVq3VFVSp_URVWT-YWhJqry3gjE3sktTnP-R2Q8BSsUfeXbsOmf_q2Qoi_ntFXQBo7BbHOy7jug0ZbnAiqCCfA4-Dug_xhA', publicKey: rsaPublicKey }, rs384: { - token: 'eyJhbGciOiJSUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6InJzMzg0dGVzdCJ9.YdJv8eHUfsheBaH8Y2OprzO8ewP4-wfuyCtYjx-vm-KybqPhfKDxaq9QsjYqNWPn7rZVnc843FL0G-0rSl2YDQG5QM0uW44jl20C5-LouloaSQ0Mg88Wj8-0kt8R22bXBeBc1tNuIezlna80pCvxZrZnVkphLGKlWXOu7tSwUVc', + token: 'eyJhbGciOiJSUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6InJzMzg0dGVzdCJ9.hxLs4M9mrvT59dto3xpVjLPG9HuGZwDmGNwOJjq5a5L5VhUg5Dx_Jb96adzeFdtd6ky_Jx2P5vcXQDsEUw8sMYuyoJGORzQxKgRKW-kXviLHPHiGfu1hX7gk5uNCsClz_LBOp5GXeQWz0iOov84mxE0DJvXJQHJSfwu7C4bmb1d4ufN8be-3dfztfKaUmf3Iot0LiC_86gEg-9yghTF6UR0AOJ6Dv56FGV9ftAkvyBQ78M3Rez2eUFte8_uN-vPSpRyjGV3unorfc9RjCis-lXy-Ex5lCJMpKkvLAruZsxfpvnhorikJMX86Gugg6XMRjsSWUKxdtEFWVd8OdpsKiA', publicKey: rsaPublicKey }, rs512: { - token: 'eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6InJzNTEydGVzdCJ9.x6PkeyOYFCdmxV-JfsHmeVXad41h3AoyldaQVDaWJbD9SLXnz_hkbQ6KcUJGIzkLnL5KWuRc1IAYfa1lxk3ijWS0p42YKLbqdX3tXBvuaAr7bV8KM-rb_6RqhLqGXjkVJ8jjpCy0uu4VS3Yg0xojbm8sY6Jf-YbggRpFpvF_CxU', + token: 'eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6InJzNTEydGVzdCJ9.L8muqWPmDwxw8xZ9lTi8Ndv6W-QDiZvDejs8xMge75uTXPx2VEpMdmKbwGMOEoNbScPpkcXNQRkot3_kXLtXQmo88ZzOZJMrMMw3Fbg4vnnrK5nCWPws7GKe9AJAd8iJEK6tWF6XG7TCWR4UG8RFWYmmxb0sdeOYVRwBdu-PrvT8j3az73_b79eOsSm99OO98XPkv5Ho7ev57Pfc3FAmRZ6R4O6og-YmI4uzzHWaPNvJgf4UG3A6STArzNlwmSn5cVAK5hyMh5v0n865HucotuOND7lE1EO0RgTXuWL6eTuClBCaECFtORnOzd9fvKloeE-GYiEOp7nsX-YpaDTHPw', publicKey: rsaPublicKey }, es256: { @@ -68,11 +71,15 @@ module.exports = { publicKey: ecPublicKey521 }, ps256: { - token: 'eyJhbGciOiJQUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6InBzMjU2dGVzdCJ9.jVQfrR2D8k3I5FsIBDW2zn1OINhemVA7T1izMSlYb-7MNlw4DrlcifJ0ilQwXHNw1rZI00OkGjeoJBNpArhEROCY8odXLosjvetRvfp0QPyH0mL5IehWcSsSAhJU0jL8FNQ44HBAUnTQ41llG6p1q7w7qIVcHnFmyqaXcFCP5B8', + token: 'eyJhbGciOiJQUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6InBzMjU2dGVzdCJ9.m_bT9rLV4kf3XTqqAzPiwot9jiOrH4nA7kwtBWDUIaLUabTSdjjeMud34DVXkCgwqoin_N2lQWFZV9jsjHNsoSjX-rw-PaxJmJq8-blix8KUaxgJBgxeZZnswGi6kOfHPNHYiEdZUrNTgRDdkhvV0aLfgGMUm62kG_v1-VzZLiENeIhXD1yqL6z3C3GwsYR0JcnyReTY3y5lN1-PoTz3h7Rnp6xhw7VnpG9Okt319WP7TDmddCiv2NReNVXA7e1Ng7c0R-qOhHljISn_AQZCsTrJJPOa4q3RQF2U3AabJkJbOWXYdzfbn1ZL3_Odp4t7LMLvBRMwa9_tb401XYuI1g', publicKey: rsaPublicKey }, ps384: { - token: 'eyJhbGciOiJQUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6InBzMzg0dGVzdCJ9.yS13poMub8KhYAT3p_Sd7FBIH6DtKLf-aPaxlNnyWwWmYXJm75uxG1XJ6pwTNZ2Sw-nw_YyFALVpO3QyUPtK16ZkyyQ2CrJ6w0nfRL5Bi7uah8OKXZh5ykqK9hq_No83AAPK53O-NPkG5CSreaexHOpCPqdjruV7JWyHysGFA80', + token: 'eyJhbGciOiJQUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6InBzMzg0dGVzdCJ9.LuBBEFHht0VjgaC9l8kp59dsYGxmxcs5L3nSHfv1doHzT1kj4vOxW9TbZqdJdx6hoEjgdB6RPt9jzRzbJ1X95suOJMLFVueaFQ6ZQ_3TO7W06pBRl_3Mo3atieXSDccFmbVGbyesk2fn5n-kqvoF0ngANHnOqEeHONaLLI-_x94M_EyhrhqLXFgJ08akon3p0oDe84KLGfr07gmb_7OKZx873FH4xVu_e_uRhgMFreRsIRN5WFT4kq2bJ_B_fpOAWnEy0ReIf-eKXKh0K2GIOf_vJY5KHKy2k8zGNOkvosLH0udRuevNkQpxH-w1WDOa8fNBOn4x7eos8zqv0wiVTw', publicKey: rsaPublicKey - } + }, + ps512: { + token: 'eyJhbGciOiJQUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6InBzNTEydGVzdCJ9.QWj-Egqu3fPb7Ua-PCQ0dMJ4PxNDdAzbh-pYLtIp6y5wNaWsO0uED_j22b4cAsbeoHJbewsl78yxGVkOjqAL2AK4O7ZuJmVrkh5eMCVEaMnNPWqshaZAfFvWpEaFVe4fjwvm6yRF-C8rPu_jMCO8y0mJ88X_cqKHBZdDq5WhkIcoo7u60t4jucwgPVdMLA9elx9HyUCMxeBsfEi3F4iNjZ4UJxehCtsxpz19PB7IlJQq0xA5dIZA7uGb6jyjBcpS95mvfa1dkrw02KTEpBcw1FOnKqoliWIDoD3qI2-AnPe4YzkOkupIKN7HDKa-M6aT1Rnxvop-r_trhVTS2qCSZw', + publicKey: rsaPublicKey + }, }; diff --git a/test/functional/utils.js b/test/functional/utils.js index d975720b..0da4f836 100644 --- a/test/functional/utils.js +++ b/test/functional/utils.js @@ -18,7 +18,9 @@ async function launchBrowser() { // Initial navigation may take long due to outside requests. this.timeout(30000); - this.browser = await puppeteer.launch(); + this.browser = await puppeteer.launch({ + args: ['--disable-dev-shm-usage'] + }); this.page = await this.browser.newPage(); await this.page.setViewport({ width: 1920, diff --git a/test/unit/editor/jwt.js b/test/unit/editor/jwt.js index 5af6542e..45673040 100644 --- a/test/unit/editor/jwt.js +++ b/test/unit/editor/jwt.js @@ -5,21 +5,11 @@ import b64u from 'base64url'; import log from 'loglevel'; import chai from 'chai'; import chaiAsPromised from 'chai-as-promised'; -import { randomFillSync } from 'crypto'; +import { randomFillSync, generateKeyPair } from 'crypto'; chai.use(chaiAsPromised); chai.should(); -const publicKeyPlainRSA = -`-----BEGIN RSA PUBLIC KEY----- -MIIBCgKCAQEAnzyis1ZjfNB0bBgKFMSvvkTtwlvBsaJq7S5wA+kzeVOVpVWwkWdV -ha4s38XM/pa/yr47av7+z3VTmvDRyAHcaT92whREFpLv9cj5lTeJSibyr/Mrm/Yt -jCZVWgaOYIhwrXwKLqPr/11inWsAkfIytvHWTxZYEcXLgAXFuUuaS3uF9gEiNQwz -GTU1v0FqkqTBr4B8nW3HCN47XUu0t8Y0e+lf4s4OxQawWD79J9/5d3Ry0vbV3Am1 -FtGJiJvOwRsIfVChDpYStTcHTCMqtvWbV6L11BWkpzGXSW4Hv43qa+GSYOD2QU68 -Mb59oSk2OB+BtOLpJofmbGEGgvmwyCI9MwIDAQAB ------END RSA PUBLIC KEY-----`; - describe('JWT', function() { it('detects tokens', function() { jwt.isToken('skdjf9238ujdhkf.asdfasdf2.sdsdffsfsd').should.be.false; @@ -45,20 +35,6 @@ describe('JWT', function() { return jwt.verify(token, tokens.hs256.secret).should.eventually.include({validSignature: false}); }); - describe('verifies valid tokens', function() { - Object.keys(tokens).forEach(alg => { - it(alg.toUpperCase(), function() { - if(alg.indexOf('hs') !== -1) { - return jwt.verify(tokens[alg].token, tokens[alg].secret) - .should.eventually.include({validSignature: true}); - } else { - return jwt.verify(tokens[alg].token, tokens[alg].publicKey) - .should.eventually.be.include({validSignature: true}); - } - }); - }); - }); - it('fails to verify invalid tokens ' + '(logging temporarily disabled to hide exceptions)', function() { log.disableAll(); @@ -99,98 +75,68 @@ describe('JWT', function() { .should.eventually.be.true; }); - it('signs/verifies tokens (HS256)', function() { - const header = { - alg: 'HS256' - }; - const payload = { - sub: 'test' - }; - - return jwt.sign(header, payload, 'secret').then(token => { - token.should.be.a('string'); - - const split = token.split('.'); - split.should.have.lengthOf(3); - - const decoded = jwt.decode(token); - decoded.header.should.deep.equal(header); - decoded.payload.should.deep.equal(payload); - - return jwt.verify(token, 'secret').should.eventually.include({validSignature: true}); - }); - }); - - it('signs/verifies tokens (RS256)', function() { - const header = { - alg: 'RS256' - }; - const payload = { - sub: 'test' - }; - - return jwt.sign(header, payload, tokens.rs256.privateKey).then(token => { - token.should.be.a('string'); - - const split = token.split('.'); - split.should.have.lengthOf(3); - - const decoded = jwt.decode(token); - decoded.header.should.deep.equal(header); - decoded.payload.should.deep.equal(payload); + for (const [alg, vector] of Object.entries(tokens)) { + let { privateKey, publicKey, jwk } = vector; + if (vector.secret) { + privateKey = publicKey = vector.secret; + } - return jwt.verify(token, tokens.rs256.publicKey) - .should.eventually.include({validSignature: true}); + it(`signs/verifies ${alg.toUpperCase()}`, function () { + const header = { alg: alg.toUpperCase(), iat: Date.now() }; + const payload = { sub: 'test' }; + + // test the default token + return jwt.verify(vector.token, publicKey).should.eventually.include({validSignature: true}) + .then(() => { + // test signing + return jwt.sign(header, payload, privateKey).then(token => { + token.should.be.a('string'); + + const split = token.split('.'); + split.should.have.lengthOf(3); + + const decoded = jwt.decode(token); + decoded.header.should.deep.equal(header); + decoded.payload.should.deep.equal(payload); + + // test verifying just signed token + return jwt.verify(token, publicKey) + .should.eventually.include({validSignature: true}); + }); + }); }); - }); - it('signs/verifies tokens (ES256)', function() { - const header = { - alg: 'ES256' - }; - const payload = { - sub: 'test' - }; + if (jwk) { + it(`signs/verifies ${alg.toUpperCase()} with a JWK`, function () { + const header = { alg: alg.toUpperCase(), iat: Date.now() }; + const payload = { sub: 'test' }; - return jwt.sign(header, payload, tokens.es256.privateKey).then(token => { - token.should.be.a('string'); + const jsonJWK = JSON.stringify(jwk, null, 4) - const split = token.split('.'); - split.should.have.lengthOf(3); + // test the default token + return jwt.verify(vector.token, jsonJWK).should.eventually.include({validSignature: true}) + .then(() => { + // test signing + return jwt.sign(header, payload, jsonJWK).then(token => { + token.should.be.a('string'); - const decoded = jwt.decode(token); - decoded.header.should.deep.equal(header); - decoded.payload.should.deep.equal(payload); + const split = token.split('.'); + split.should.have.lengthOf(3); - return jwt.verify(token, tokens.es256.publicKey) - .should.eventually.include({validSignature: true}); - }); - }); + const decoded = jwt.decode(token); + decoded.header.should.deep.equal(header); + decoded.payload.should.deep.equal(payload); - it('signs/verifies tokens (PS256)', function() { - const header = { - alg: 'PS256' - }; - const payload = { - sub: 'test' - }; - - return jwt.sign(header, payload, tokens.ps256.privateKey).then(token => { - token.should.be.a('string'); - - const split = token.split('.'); - split.should.have.lengthOf(3); - - const decoded = jwt.decode(token); - decoded.header.should.deep.equal(header); - decoded.payload.should.deep.equal(payload); - - return jwt.verify(token, tokens.ps256.publicKey) - .should.eventually.include({validSignature: true}); - }); - }); + // test verifying just signed token + return jwt.verify(token, jsonJWK) + .should.eventually.include({validSignature: true}); + }); + }); + }); + } + } - it('verifies tokens (RS256) using a plain RSA public key', function() { + it('signs and verifies tokens using a PKCS1 RSA keys', function() { const header = { alg: 'RS256' }; @@ -198,8 +144,19 @@ describe('JWT', function() { sub: 'test' }; - return jwt.sign(header, payload, tokens.rs256.privateKey).then(token => { - return jwt.verify(token, publicKeyPlainRSA).should.eventually.include({validSignature: true}); + return new Promise((resolve, reject) => { + generateKeyPair('rsa', { + modulusLength: 2048, + privateKeyEncoding: { format: 'pem', type: 'pkcs1' }, + publicKeyEncoding: { format: 'pem', type: 'pkcs1' }, + }, (err, publicKey, privateKey) => { + if (err) return reject(err); + return resolve({ publicKey, privateKey }); + }) + }).then(({ privateKey, publicKey }) => { + return jwt.sign(header, payload, privateKey).then((token) => { + return jwt.verify(token, publicKey).should.eventually.include({validSignature: true}); + }); }); }); diff --git a/test/unit/editor/public-key-download.js b/test/unit/editor/public-key-download.js index 8ee23556..537e16ec 100644 --- a/test/unit/editor/public-key-download.js +++ b/test/unit/editor/public-key-download.js @@ -3,6 +3,7 @@ import chaiAsPromised from 'chai-as-promised'; import _ from 'lodash'; import sinon from 'sinon'; import sinonChai from 'sinon-chai'; +import nock from 'nock'; import publicKeyDownloadInjector from 'inject-loader!../../../src/editor/public-key-download.js'; @@ -12,7 +13,20 @@ chai.use(sinonChai); chai.should(); describe('Public key downloader', function() { - const baseUrl = '/'; + before(() => { + nock.disableNetConnect(); + }) + + after(() => { + nock.enableNetConnect(); + }) + + afterEach(() => { + nock.isDone().should.be.true; + nock.cleanAll(); + }); + + const baseUrl = 'http://local.dev/'; const decodedBaseToken = { header: { @@ -34,11 +48,7 @@ describe('Public key downloader', function() { }] }; - const keyAsPEM = `-----BEGIN PUBLIC KEY-----\r\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1GPz+Er5h7PCk4v3pSln\r\naLYNYrp4sVc6Tx7FVz9d8m4zIS2qzcTM/6dRbMgZ4hBdD35NpYzU4z+d8lN27+J/\r\njOzHnCiMdkY+w52dCofAkICh6ftkFlG9bFQyH8Jz5UtpVkZyy1dxCRz/sbRAzUdj\r\nUYsGvrKXg+3UYCL5SBCnt0ycrvr3iKX9k8IlMrFRB8lBJ6eQVzkzGsuivPaThXjV\r\nZ/OpY7W+XsDjut7cFgPKIc843tW4CNaDJ6j3afm+RFOok//xLQH5uA7HXS/yqfEc\r\nhvzXfYfMxJY2d+Eqw4xTurm3TT07RnwJuN9slDJUrTH9EKkJkjZ7dn7fZtGjGTpa\r\nDQIDAQAB\r\n-----END PUBLIC KEY-----\r\n`; - - function httpGetMock(data) { - return (url) => data ? Promise.resolve(data) : Promise.reject(); - } + const keyAsPEM = `-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1GPz+Er5h7PCk4v3pSln\naLYNYrp4sVc6Tx7FVz9d8m4zIS2qzcTM/6dRbMgZ4hBdD35NpYzU4z+d8lN27+J/\njOzHnCiMdkY+w52dCofAkICh6ftkFlG9bFQyH8Jz5UtpVkZyy1dxCRz/sbRAzUdj\nUYsGvrKXg+3UYCL5SBCnt0ycrvr3iKX9k8IlMrFRB8lBJ6eQVzkzGsuivPaThXjV\nZ/OpY7W+XsDjut7cFgPKIc843tW4CNaDJ6j3afm+RFOok//xLQH5uA7HXS/yqfEc\nhvzXfYfMxJY2d+Eqw4xTurm3TT07RnwJuN9slDJUrTH9EKkJkjZ7dn7fZtGjGTpa\nDQIDAQAB\n-----END PUBLIC KEY-----\n`; it('Finds keys in iss + .well-known URL', function(done) { const decodedToken = _.defaultsDeep({}, decodedBaseToken, { @@ -51,8 +61,11 @@ describe('Public key downloader', function() { }); const httpGetStub = sinon.stub() - .onCall(0).resolves(JSON.stringify({ jwks_uri: '/.well-known/jwks.json' })) - .onCall(1).resolves(JSON.stringify(jwks)); + .onCall(0).resolves(JSON.stringify({ jwks_uri: baseUrl + '.well-known/jwks.json' })) + + nock(baseUrl) + .get('/.well-known/jwks.json') + .reply(200, jwks) const downloadPublicKeyIfPossible = publicKeyDownloadInjector({ '../utils.js': { @@ -65,8 +78,6 @@ describe('Public key downloader', function() { .then(() => { httpGetStub.should.have.been .calledWith(baseUrl + '.well-known/openid-configuration'); - httpGetStub.should.have.been - .calledWith(baseUrl + '.well-known/jwks.json'); }).should.notify(done); }); @@ -86,7 +97,7 @@ describe('Public key downloader', function() { }).downloadPublicKeyIfPossible; downloadPublicKeyIfPossible(decodedToken) - .should.eventually.include(jwks.keys[0].x5c[0]) + .should.eventually.include(keyAsPEM) .then(() => { httpGetStub.should.have.callCount(0); }).should.notify(done); @@ -100,7 +111,11 @@ describe('Public key downloader', function() { } }); - const httpGetStub = sinon.stub().resolves(JSON.stringify(jwks)); + nock(baseUrl) + .get('/') + .reply(200, jwks) + + const httpGetStub = sinon.stub().rejects('Should not be called'); const downloadPublicKeyIfPossible = publicKeyDownloadInjector({ '../utils.js': { httpGet: httpGetStub @@ -108,10 +123,11 @@ describe('Public key downloader', function() { }).downloadPublicKeyIfPossible; downloadPublicKeyIfPossible(decodedToken) - .should.eventually.include(jwks.keys[0].x5c[0]) + .should.eventually.include(keyAsPEM) .then(() => { - httpGetStub.should.have.been.calledWith(baseUrl); - }).should.notify(done); + httpGetStub.should.have.callCount(0); + }) + .should.notify(done); }); it('Finds keys in x5u header claim', function(done) { @@ -121,7 +137,7 @@ describe('Public key downloader', function() { } }); - const httpGetStub = sinon.stub().resolves(jwks.keys[0].x5c[0]); + const httpGetStub = sinon.stub().resolves(jwks.keys[0].x5c); const downloadPublicKeyIfPossible = publicKeyDownloadInjector({ '../utils.js': { httpGet: httpGetStub @@ -129,33 +145,12 @@ describe('Public key downloader', function() { }).downloadPublicKeyIfPossible; downloadPublicKeyIfPossible(decodedToken) - .should.eventually.include(jwks.keys[0].x5c[0]) + .should.eventually.include(jwks.keys[0].x5c) .then(() => { httpGetStub.should.have.been.calledWith(baseUrl); }).should.notify(done); }); - it('Finds keys in x5c string header claim', function(done) { - const decodedToken = _.defaultsDeep({}, decodedBaseToken, { - header: { - x5c: jwks.keys[0].x5c[0] - } - }); - - const httpGetStub = sinon.stub().rejects('Should not be called'); - const downloadPublicKeyIfPossible = publicKeyDownloadInjector({ - '../utils.js': { - httpGet: httpGetStub - } - }).downloadPublicKeyIfPossible; - - downloadPublicKeyIfPossible(decodedToken) - .should.eventually.include(jwks.keys[0].x5c[0]) - .then(() => { - httpGetStub.should.have.callCount(0); - }).should.notify(done); - }); - it('Finds keys in x5c array header claim', function(done) { const decodedToken = _.defaultsDeep({}, decodedBaseToken, { header: { @@ -171,7 +166,7 @@ describe('Public key downloader', function() { }).downloadPublicKeyIfPossible; downloadPublicKeyIfPossible(decodedToken) - .should.eventually.include(jwks.keys[0].x5c[0]) + .should.eventually.include(jwks.keys[0].x5c) .then(() => { httpGetStub.should.have.callCount(0); }).should.notify(done); @@ -181,7 +176,7 @@ describe('Public key downloader', function() { const decodedToken = _.defaultsDeep({}, decodedBaseToken, { header: { kid: '1', - jku: baseUrl + x5u: baseUrl } }); @@ -208,62 +203,33 @@ describe('Public key downloader', function() { } }); - let httpGetStub; + const httpGetStub = sinon.stub().rejects('Should not be called'); const downloadPublicKeyIfPossible = publicKeyDownloadInjector({ '../utils.js': { - httpGet: url => httpGetStub(url) + httpGet: httpGetStub } }).downloadPublicKeyIfPossible; it('when the keys object is not an array', function(done) { - httpGetStub = sinon.stub().resolves({ - keys: {} - }); - downloadPublicKeyIfPossible(decodedToken) - .should.be.rejected - .then(() => { - httpGetStub.should.have.been.calledWith(baseUrl); - }).should.notify(done); - }); - it('when the keys object does not exist', function(done) { - httpGetStub = sinon.stub().resolves({ - }); + nock(baseUrl) + .get('/') + .reply(200, { keys: {} }) downloadPublicKeyIfPossible(decodedToken) .should.be.rejected - .then(() => { - httpGetStub.should.have.been.calledWith(baseUrl); - }).should.notify(done); + .should.notify(done); }); - it('when there is no kid', function(done) { - httpGetStub = sinon.stub().resolves({ - keys: [{ - x5c: jwks.keys[0].x5c - }] - }); - - downloadPublicKeyIfPossible(decodedToken) - .should.be.rejected - .then(() => { - httpGetStub.should.have.been.calledWith(baseUrl); - }).should.notify(done); - }); - - it('when there are no x5u or x5c claims', function(done) { - httpGetStub = sinon.stub().resolves({ - keys: [{ - kid: '1' - }] - }); + it('when the keys object does not exist', function(done) { + nock(baseUrl) + .get('/') + .reply(200, {}) downloadPublicKeyIfPossible(decodedToken) .should.be.rejected - .then(() => { - httpGetStub.should.have.been.calledWith(baseUrl); - }).should.notify(done); + .should.notify(done); }); }); }); diff --git a/test/unit/utils.js b/test/unit/utils.js index 3b850c64..3d5c7e36 100644 --- a/test/unit/utils.js +++ b/test/unit/utils.js @@ -4,8 +4,6 @@ import xhrMock from 'xhr-mock'; import { httpGet } from '../../src/utils.js'; -import { randomFillSync } from 'crypto'; - chai.use(chaiAsPromised); chai.should(); diff --git a/views/token-editor-algorithms.pug b/views/token-editor-algorithms.pug index 20ebb164..886c5172 100644 --- a/views/token-editor-algorithms.pug +++ b/views/token-editor-algorithms.pug @@ -10,6 +10,4 @@ select#algorithm-select option(name='algorithm',value='ES512') ES512 option(name='algorithm',value='PS256') PS256 option(name='algorithm',value='PS384') PS384 - //- Buggy in node-jose for now, supported by browsers - option(name='algorithm',value='PS512') PS512 - + option(name='algorithm',value='PS512') PS512 diff --git a/views/token-editor-common.pug b/views/token-editor-common.pug index 991402f1..d1959cf9 100644 --- a/views/token-editor-common.pug +++ b/views/token-editor-common.pug @@ -35,6 +35,6 @@ RSASHA256( base64UrlEncode(header) + "." + base64UrlEncode(payload), - , - + , + ) diff --git a/views/website/layout.pug b/views/website/layout.pug index cdb529b2..72e926b6 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -73,7 +73,8 @@ html(lang='en') script. !function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs'); - div - div(id="consent_blackbar") - div(id="teconsent" style="position: absolute; bottom: -100px;") - script(async="async" src="http://consent.trustarc.com/notice?domain=auth0banner.com&c=teconsent&js=nj¬iceType=bb&text=true" crossOrigin) + if process.env.NODE_ENV === "production" + div + div(id="consent_blackbar") + div(id="teconsent" style="position: absolute; bottom: -100px;") + script(async="async" src="http://consent.trustarc.com/notice?domain=auth0banner.com&c=teconsent&js=nj¬iceType=bb&text=true" crossOrigin) diff --git a/webpack.common.js b/webpack.common.js index 34aef2cb..f837d22b 100644 --- a/webpack.common.js +++ b/webpack.common.js @@ -33,4 +33,14 @@ module.exports = { jQuery: "jquery", }), ], -}; \ No newline at end of file + resolve: { + alias: { + 'jose/key/import': 'jose/dist/browser/key/import', + 'jose/key/export': 'jose/dist/browser/key/export', + 'jose/jws/compact/sign': 'jose/dist/browser/jws/compact/sign', + 'jose/jws/compact/verify': 'jose/dist/browser/jws/compact/verify', + 'jose/jwks/remote': 'jose/dist/browser/jwks/remote', + 'jose/jwk/embedded': 'jose/dist/browser/jwk/embedded', + } + } +}; diff --git a/webpack.website-unit-tests.js b/webpack.website-unit-tests.js index 91ac6e30..55d54796 100644 --- a/webpack.website-unit-tests.js +++ b/webpack.website-unit-tests.js @@ -41,5 +41,15 @@ module.exports = merge(common, { } } }] + }, + resolve: { + alias: { + 'jose/key/import': 'jose/dist/node/cjs/key/import', + 'jose/key/export': 'jose/dist/node/cjs/key/export', + 'jose/jws/compact/sign': 'jose/dist/node/cjs/jws/compact/sign', + 'jose/jws/compact/verify': 'jose/dist/node/cjs/jws/compact/verify', + 'jose/jwks/remote': 'jose/dist/node/cjs/jwks/remote', + 'jose/jwk/embedded': 'jose/dist/node/cjs/jwk/embedded', + } } }); From 6a4dd7e831e64fab1ff0f75daaf1bb501354d08f Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Mon, 27 Sep 2021 14:10:10 +0200 Subject: [PATCH 346/456] test: remove test specific vectors --- test/functional/editor.js | 48 ++++++++-------------- test/functional/tokens.js | 85 --------------------------------------- 2 files changed, 17 insertions(+), 116 deletions(-) delete mode 100644 test/functional/tokens.js diff --git a/test/functional/editor.js b/test/functional/editor.js index 46f5bf7c..84b9817d 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -3,14 +3,12 @@ const chaiAsPromised = require('chai-as-promised'); const chaiArrays = require('chai-arrays'); const express = require('express'); -const { importPKCS8, importSPKI } = require('jose/key/import') +const { importPKCS8 } = require('jose/key/import') const { CompactSign } = require('jose/jws/compact/sign') -const { exportJWK } = require('jose/key/export') const _ = require('lodash'); const utils = require('./utils.js'); -const tokens = require('./tokens.js'); const defaultTokens = require('esm')(module)('../../src/editor/default-tokens.js').default; const jwks = require('./jwks.json'); @@ -330,18 +328,18 @@ describe('Editor', function() { }); describe('HS256/384/512', function() { - const algs = Object.keys(tokens).filter(alg => alg.includes('hs')); + const algs = Object.keys(defaultTokens).filter(alg => alg.includes('hs')); for(const alg of algs) { it(`Decodes ${alg.toUpperCase()} tokens`, async function() { const secretInput = await this.page.$('input[name="secret"]'); await secretInput.click(); await selectAll.call(this); - await secretInput.type(tokens[alg].secret); + await secretInput.type(defaultTokens[alg].secret); await this.page.click('.js-input'); await selectAll.call(this); - await this.page.keyboard.type(tokens[alg].token); + await this.page.keyboard.type(defaultTokens[alg].token); // Wait for token processing. await this.page.waitFor(tokenProcessingWait); @@ -353,12 +351,6 @@ describe('Editor', function() { }); expect(valid).to.be.true; - - const payload = await this.page.evaluate(() => { - return window.test.payloadEditor.getValue(); - }); - - expect(payload).to.include(alg + 'test'); }); const bits = parseInt(alg.substr(2)); @@ -430,15 +422,15 @@ describe('Editor', function() { it(`${alg.toUpperCase()} using a ${format.toUpperCase()} key`, async function() { await this.page.click('.js-input'); await selectAll.call(this); - await this.page.keyboard.type(tokens[alg].token); + await this.page.keyboard.type(defaultTokens[alg].token); const secretInput = await this.page.$('textarea[name="public-key"]'); await secretInput.click(); await selectAll.call(this); - let publicKey = tokens[alg].publicKey; + let publicKey = defaultTokens[alg].publicKey; if (format === 'jwk') { - publicKey = JSON.stringify(await importSPKI(publicKey).then(exportJWK)) + publicKey = JSON.stringify(defaultTokens[alg].jwk) } await secretInput.type(publicKey); @@ -453,12 +445,6 @@ describe('Editor', function() { }); expect(valid).to.be.true; - - const payload = await this.page.evaluate(() => { - return window.test.payloadEditor.getValue(); - }); - - expect(payload).to.include(alg + 'test'); }); } } @@ -474,12 +460,12 @@ describe('Editor', function() { let publicKey = defaultTokens[alg].publicKey; if (format === 'jwk') { - publicKey = JSON.stringify(await importSPKI(publicKey).then(exportJWK)) + publicKey = JSON.stringify(defaultTokens[alg].jwk) } let privateKey = defaultTokens[alg].privateKey; if (format === 'jwk') { - privateKey = JSON.stringify(await importPKCS8(privateKey).then(exportJWK)) + privateKey = JSON.stringify(defaultTokens[alg].jwk) } await this.page.click('textarea[name="public-key"]'); @@ -713,12 +699,12 @@ describe('Editor', function() { await this.page.click('.js-input'); await selectAll.call(this); - await this.page.keyboard.type(tokens['rs256'].token); + await this.page.keyboard.type(defaultTokens['rs256'].token); const secretInput = await this.page.$('textarea[name="public-key"]'); await secretInput.click(); await selectAll.call(this); - await secretInput.type(tokens['rs256'].publicKey); + await secretInput.type(defaultTokens['rs256'].publicKey); // Wait for token processing. await this.page.waitFor(tokenProcessingWait); @@ -754,12 +740,12 @@ describe('Editor', function() { await this.page.click('.js-input'); await selectAll.call(this); - await this.page.keyboard.type(tokens['rs256'].token); + await this.page.keyboard.type(defaultTokens['rs256'].token); const secretInput = await this.page.$('textarea[name="public-key"]'); await secretInput.click(); await selectAll.call(this); - await secretInput.type(tokens['rs256'].publicKey); + await secretInput.type(defaultTokens['rs256'].publicKey); // Wait for token processing. await this.page.waitFor(tokenProcessingWait); @@ -837,7 +823,7 @@ describe('Editor', function() { const secretInput = await this.page.$('textarea[name="public-key"]'); await secretInput.click(); await selectAll.call(this); - await secretInput.type(tokens['rs256'].publicKey); + await secretInput.type(defaultTokens['rs256'].publicKey); const privateKeyInput = await this.page.$('textarea[name="private-key"]'); await privateKeyInput.click(); @@ -846,7 +832,7 @@ describe('Editor', function() { await this.page.click('.js-input'); await selectAll.call(this); - await this.page.keyboard.type(tokens['rs256'].token); + await this.page.keyboard.type(defaultTokens['rs256'].token); await this.page.waitFor(1000); @@ -865,7 +851,7 @@ describe('Editor', function() { await this.page.click('.js-input'); await selectAll.call(this); - await this.page.keyboard.type(tokens.hs256.token); + await this.page.keyboard.type(defaultTokens.hs256.token); await this.page.select('#algorithm-select', 'HS384'); @@ -881,7 +867,7 @@ describe('Editor', function() { await this.page.click('.js-input'); await selectAll.call(this); - await this.page.keyboard.type(tokens.none.token); + await this.page.keyboard.type('eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.'); // Wait for token processing. await this.page.waitFor(tokenProcessingWait); diff --git a/test/functional/tokens.js b/test/functional/tokens.js deleted file mode 100644 index 6dee3b98..00000000 --- a/test/functional/tokens.js +++ /dev/null @@ -1,85 +0,0 @@ -const rsaPublicKey = -`-----BEGIN PUBLIC KEY----- -MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAu1SU1LfVLPHCozMxH2Mo -4lgOEePzNm0tRgeLezV6ffAt0gunVTLw7onLRnrq0/IzW7yWR7QkrmBL7jTKEn5u -+qKhbwKfBstIs+bMY2Zkp18gnTxKLxoS2tFczGkPLPgizskuemMghRniWaoLcyeh -kd3qqGElvW/VDL5AaWTg0nLVkjRo9z+40RQzuVaE8AkAFmxZzow3x+VJYKdjykkJ -0iT9wCS0DRTXu269V264Vf/3jvredZiKRkgwlL9xNAwxXFg0x/XFw005UWVRIkdg -cKWTjpBP2dPwVZ4WWC+9aGVd+Gyn1o0CLelf4rEjGoXbAAEgAqeGUxrcIlbjXfbc -mwIDAQAB ------END PUBLIC KEY-----`; - -const ecPublicKey256 = -`-----BEGIN PUBLIC KEY----- -MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEEVs/o5+uQbTjL3chynL4wXgUg2R9 -q9UU8I5mEovUf86QZ7kOBIjJwqnzD1omageEHWwHdBO6B+dFabmdT9POxg== ------END PUBLIC KEY-----`; - -const ecPublicKey384 = -`-----BEGIN PUBLIC KEY----- -MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEC1uWSXj2czCDwMTLWV5BFmwxdM6PX9p+ -Pk9Yf9rIf374m5XP1U8q79dBhLSIuaojsvOT39UUcPJROSD1FqYLued0rXiooIii -1D3jaW6pmGVJFhodzC31cy5sfOYotrzF ------END PUBLIC KEY-----`; - -const ecPublicKey521 = -`-----BEGIN PUBLIC KEY----- -MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBgc4HZz+/fBbC7lmEww0AO3NK9wVZ -PDZ0VEnsaUFLEYpTzb90nITtJUcPUbvOsdZIZ1Q8fnbquAYgxXL5UgHMoywAib47 -6MkyyYgPk0BXZq3mq4zImTRNuaU9slj9TVJ3ScT3L1bXwVuPJDzpr5GOFpaj+WwM -Al8G7CqwoJOsW7Kddns= ------END PUBLIC KEY-----`; - -module.exports = { - none: { - token: 'eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.' - }, - hs512: { - token: 'eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6ImhzNTEydGVzdCJ9.RVBLQLIZqA6n8prLoVLsxsYb0nGg1-q4j-qUOwN7zjCC9RwS3HlOG2bNUB6cTKS7WBRHScVXnmwCoeHP0gVtDA', - secret: 'secret' - }, - hs384: { - token: 'eyJhbGciOiJIUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6ImhzMzg0dGVzdCJ9.xD9kvywowrJYO9Lo-zwXvmydjc6DkGtJHUWAmTjL144xSqExhnhUgoTG_04Lu4Ma', - secret: 'secret' - }, - hs256: { - token: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6ImhzMjU2dGVzdCJ9.mNZ_thfG9tYoIoV7TD_CQG6sQRAfGJqmBdEbU_uf4-0', - secret: 'secret' - }, - rs256: { - token: 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6InJzMjU2dGVzdCJ9.ngCSp0NA7x21PySWoXTqNFA9Ts-Tz0F8bkF7jIajkM6l-X9HiBY2LF-LUqLW88k0QtBOgg9IYDRsB1-5zFyCp0byQXpyvHOfXKJ9NmaxdjtrDFB2Gr5EtAIyWzWfzbQkiVK0kmYSjhkKqZ5u8vkdnE0GSi4p5OGth9gteHsO2OAau9PCQ50-zOJDPytpwU8KLHKprP255ztR4_S5FjRvni2-jx0O6RPBSnZ2Xw9fr6BD-i21QMugzcJiVq3VFVSp_URVWT-YWhJqry3gjE3sktTnP-R2Q8BSsUfeXbsOmf_q2Qoi_ntFXQBo7BbHOy7jug0ZbnAiqCCfA4-Dug_xhA', - publicKey: rsaPublicKey - }, - rs384: { - token: 'eyJhbGciOiJSUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6InJzMzg0dGVzdCJ9.hxLs4M9mrvT59dto3xpVjLPG9HuGZwDmGNwOJjq5a5L5VhUg5Dx_Jb96adzeFdtd6ky_Jx2P5vcXQDsEUw8sMYuyoJGORzQxKgRKW-kXviLHPHiGfu1hX7gk5uNCsClz_LBOp5GXeQWz0iOov84mxE0DJvXJQHJSfwu7C4bmb1d4ufN8be-3dfztfKaUmf3Iot0LiC_86gEg-9yghTF6UR0AOJ6Dv56FGV9ftAkvyBQ78M3Rez2eUFte8_uN-vPSpRyjGV3unorfc9RjCis-lXy-Ex5lCJMpKkvLAruZsxfpvnhorikJMX86Gugg6XMRjsSWUKxdtEFWVd8OdpsKiA', - publicKey: rsaPublicKey - }, - rs512: { - token: 'eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6InJzNTEydGVzdCJ9.L8muqWPmDwxw8xZ9lTi8Ndv6W-QDiZvDejs8xMge75uTXPx2VEpMdmKbwGMOEoNbScPpkcXNQRkot3_kXLtXQmo88ZzOZJMrMMw3Fbg4vnnrK5nCWPws7GKe9AJAd8iJEK6tWF6XG7TCWR4UG8RFWYmmxb0sdeOYVRwBdu-PrvT8j3az73_b79eOsSm99OO98XPkv5Ho7ev57Pfc3FAmRZ6R4O6og-YmI4uzzHWaPNvJgf4UG3A6STArzNlwmSn5cVAK5hyMh5v0n865HucotuOND7lE1EO0RgTXuWL6eTuClBCaECFtORnOzd9fvKloeE-GYiEOp7nsX-YpaDTHPw', - publicKey: rsaPublicKey - }, - es256: { - token: 'eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6ImVzMjU2dGVzdCJ9.Ir41cyW-pc_pM2L0_cl0spnr8Y3GRUYKm7LfLhScI8SaPLfaQn9B7uES8OkYxu1YfudkYfgoFV_Bh1Qvu8lf7g', - publicKey: ecPublicKey256 - }, - es384: { - token: 'eyJhbGciOiJFUzM4NCIsInR5cCI6IkpXVCIsImtpZCI6ImlUcVhYSTB6YkFuSkNLRGFvYmZoa00xZi02ck1TcFRmeVpNUnBfMnRLSTgifQ.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6ImVzMzg0dGVzdCJ9.YXzDoj68bFiJ-1gIOrqgSJUvyzh0y61uf6mqp4rWuhekhB1Ck1utbZ20Fg0fqokguEWG-9mj_iyEbiVDD9upf9SLU7M3_9PidGQ4YxbiMhXe3Q2iJyIcMHOqteqqobrt', - publicKey: ecPublicKey384 - }, - es512: { - token: 'eyJhbGciOiJFUzUxMiIsInR5cCI6IkpXVCIsImtpZCI6InhaRGZacHJ5NFA5dlpQWnlHMmZOQlJqLTdMejVvbVZkbTd0SG9DZ1NOZlkifQ.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6ImVzNTEydGVzdCJ9.AF3NvldM10bAnAYvoy337HgVLAyJealQRYLCYD1FxayivcNinURScqM49bhUWKUg6svLxi03ENhpcsErqJt2x6QnAOkkepMOPU52r1mVYNz_kB0gxY8Xvl8_0d9CYn84NmNL11NrvZlzm03vL2oFZnWZx1L_4st7bm4jsDglnzkapkdh', - publicKey: ecPublicKey521 - }, - ps256: { - token: 'eyJhbGciOiJQUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6InBzMjU2dGVzdCJ9.m_bT9rLV4kf3XTqqAzPiwot9jiOrH4nA7kwtBWDUIaLUabTSdjjeMud34DVXkCgwqoin_N2lQWFZV9jsjHNsoSjX-rw-PaxJmJq8-blix8KUaxgJBgxeZZnswGi6kOfHPNHYiEdZUrNTgRDdkhvV0aLfgGMUm62kG_v1-VzZLiENeIhXD1yqL6z3C3GwsYR0JcnyReTY3y5lN1-PoTz3h7Rnp6xhw7VnpG9Okt319WP7TDmddCiv2NReNVXA7e1Ng7c0R-qOhHljISn_AQZCsTrJJPOa4q3RQF2U3AabJkJbOWXYdzfbn1ZL3_Odp4t7LMLvBRMwa9_tb401XYuI1g', - publicKey: rsaPublicKey - }, - ps384: { - token: 'eyJhbGciOiJQUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6InBzMzg0dGVzdCJ9.LuBBEFHht0VjgaC9l8kp59dsYGxmxcs5L3nSHfv1doHzT1kj4vOxW9TbZqdJdx6hoEjgdB6RPt9jzRzbJ1X95suOJMLFVueaFQ6ZQ_3TO7W06pBRl_3Mo3atieXSDccFmbVGbyesk2fn5n-kqvoF0ngANHnOqEeHONaLLI-_x94M_EyhrhqLXFgJ08akon3p0oDe84KLGfr07gmb_7OKZx873FH4xVu_e_uRhgMFreRsIRN5WFT4kq2bJ_B_fpOAWnEy0ReIf-eKXKh0K2GIOf_vJY5KHKy2k8zGNOkvosLH0udRuevNkQpxH-w1WDOa8fNBOn4x7eos8zqv0wiVTw', - publicKey: rsaPublicKey - }, - ps512: { - token: 'eyJhbGciOiJQUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMiwidGVzdCI6InBzNTEydGVzdCJ9.QWj-Egqu3fPb7Ua-PCQ0dMJ4PxNDdAzbh-pYLtIp6y5wNaWsO0uED_j22b4cAsbeoHJbewsl78yxGVkOjqAL2AK4O7ZuJmVrkh5eMCVEaMnNPWqshaZAfFvWpEaFVe4fjwvm6yRF-C8rPu_jMCO8y0mJ88X_cqKHBZdDq5WhkIcoo7u60t4jucwgPVdMLA9elx9HyUCMxeBsfEi3F4iNjZ4UJxehCtsxpz19PB7IlJQq0xA5dIZA7uGb6jyjBcpS95mvfa1dkrw02KTEpBcw1FOnKqoliWIDoD3qI2-AnPe4YzkOkupIKN7HDKa-M6aT1Rnxvop-r_trhVTS2qCSZw', - publicKey: rsaPublicKey - }, -}; From 7bfe720508d2f7c80bd5baa7d8e27fb0321b89d6 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Mon, 27 Sep 2021 14:19:26 +0200 Subject: [PATCH 347/456] refactor: populate publicKey with a JWK when one is downloaded --- src/editor/public-key-download.js | 5 ++--- test/functional/editor.js | 4 ++-- test/unit/editor/public-key-download.js | 8 ++++---- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/src/editor/public-key-download.js b/src/editor/public-key-download.js index ac9fd52e..a43bd581 100644 --- a/src/editor/public-key-download.js +++ b/src/editor/public-key-download.js @@ -1,5 +1,4 @@ import { createRemoteJWKSet } from 'jose/jwks/remote' -import { EmbeddedJWK } from 'jose/jwk/embedded' import * as keyExport from 'jose/key/export' import { httpGet } from '../utils.js'; @@ -26,7 +25,7 @@ function getKeyFromX5Claims(claims) { } function getKeyFromJwkKeySetUrl(header, url) { - return createRemoteJWKSet(new URL(url))(header, {}).then((key) => keyExport.exportSPKI(key)) + return createRemoteJWKSet(new URL(url))(header, {}).then(keyExport.exportJWK).then((jwk) => JSON.stringify(jwk, null, 2)) } export function downloadPublicKeyIfPossible(decodedToken) { @@ -44,7 +43,7 @@ export function downloadPublicKeyIfPossible(decodedToken) { } else if(header.jku) { getKeyFromJwkKeySetUrl(header, header.jku).then(resolve, reject); } else if(header.jwk) { - EmbeddedJWK(header, {}).then((key) => keyExport.exportSPKI(key)).then(resolve, reject); + resolve(JSON.stringify(header.jwk, null, 2)) } else if(payload.iss) { const url = payload.iss + (payload.iss.substr(-1) === '/' ? '.well-known/openid-configuration' : '/.well-known/openid-configuration') diff --git a/test/functional/editor.js b/test/functional/editor.js index 84b9817d..39c6f8ae 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -578,7 +578,7 @@ describe('Editor', function() { const publicKey = await this.page.$eval('textarea[name="public-key"]', publicKeyElement => publicKeyElement.value); - expect(publicKey).to.include(defaultTokens.rs256.publicKey); + expect(jwks.keys[0]).to.contain(JSON.parse(publicKey)) }); it('jku', async function() { @@ -604,7 +604,7 @@ describe('Editor', function() { const publicKey = await this.page.$eval('textarea[name="public-key"]', publicKeyElement => publicKeyElement.value); - expect(publicKey).to.include(defaultTokens.rs256.publicKey); + expect(jwks.keys[0]).to.contain(JSON.parse(publicKey)) }); it('x5c', async function() { diff --git a/test/unit/editor/public-key-download.js b/test/unit/editor/public-key-download.js index 537e16ec..43148382 100644 --- a/test/unit/editor/public-key-download.js +++ b/test/unit/editor/public-key-download.js @@ -48,7 +48,7 @@ describe('Public key downloader', function() { }] }; - const keyAsPEM = `-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1GPz+Er5h7PCk4v3pSln\naLYNYrp4sVc6Tx7FVz9d8m4zIS2qzcTM/6dRbMgZ4hBdD35NpYzU4z+d8lN27+J/\njOzHnCiMdkY+w52dCofAkICh6ftkFlG9bFQyH8Jz5UtpVkZyy1dxCRz/sbRAzUdj\nUYsGvrKXg+3UYCL5SBCnt0ycrvr3iKX9k8IlMrFRB8lBJ6eQVzkzGsuivPaThXjV\nZ/OpY7W+XsDjut7cFgPKIc843tW4CNaDJ6j3afm+RFOok//xLQH5uA7HXS/yqfEc\nhvzXfYfMxJY2d+Eqw4xTurm3TT07RnwJuN9slDJUrTH9EKkJkjZ7dn7fZtGjGTpa\nDQIDAQAB\n-----END PUBLIC KEY-----\n`; + const keyAsJWK = JSON.stringify({ kty: jwks.keys[0].kty, n: jwks.keys[0].n, e: jwks.keys[0].e }, null, 2) it('Finds keys in iss + .well-known URL', function(done) { const decodedToken = _.defaultsDeep({}, decodedBaseToken, { @@ -74,7 +74,7 @@ describe('Public key downloader', function() { }).downloadPublicKeyIfPossible; downloadPublicKeyIfPossible(decodedToken) - .should.eventually.include(keyAsPEM) + .should.eventually.include(keyAsJWK) .then(() => { httpGetStub.should.have.been .calledWith(baseUrl + '.well-known/openid-configuration'); @@ -97,7 +97,7 @@ describe('Public key downloader', function() { }).downloadPublicKeyIfPossible; downloadPublicKeyIfPossible(decodedToken) - .should.eventually.include(keyAsPEM) + .should.eventually.include(JSON.stringify(jwks.keys[0], null, 2)) .then(() => { httpGetStub.should.have.callCount(0); }).should.notify(done); @@ -123,7 +123,7 @@ describe('Public key downloader', function() { }).downloadPublicKeyIfPossible; downloadPublicKeyIfPossible(decodedToken) - .should.eventually.include(keyAsPEM) + .should.eventually.include(keyAsJWK) .then(() => { httpGetStub.should.have.callCount(0); }) From 27f6c4aba9afba3f303409b80d96cb874c57af92 Mon Sep 17 00:00:00 2001 From: Daniel DeGroff Date: Tue, 28 Sep 2021 10:05:30 -0600 Subject: [PATCH 348/456] Update FusionAuth version --- views/website/libraries/3-Java.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/3-Java.json b/views/website/libraries/3-Java.json index 1237b7b1..a670cdc6 100644 --- a/views/website/libraries/3-Java.json +++ b/views/website/libraries/3-Java.json @@ -157,7 +157,7 @@ "authorName": "FusionAuth", "gitHubRepoPath": "fusionauth/fusionauth-jwt", "repoUrl": "https://github.com/fusionauth/fusionauth-jwt", - "installCommandHtml": "maven: io.fusionauth / fusionauth-jwt / 4.0.0" + "installCommandHtml": "maven: io.fusionauth / fusionauth-jwt / 5.0.0" }, { "minimumVersion": null, From 34984f12d9c135346fde3be29583ca40dfaa5a43 Mon Sep 17 00:00:00 2001 From: Sambego Date: Wed, 29 Sep 2021 09:33:01 +0200 Subject: [PATCH 349/456] Add buttons to the new libraries page --- stylus/website/index.styl | 28 +++++++++++++++++++++++++++- views/website/assets.pug | 12 ++++++------ views/website/index.pug | 5 +++-- 3 files changed, 36 insertions(+), 9 deletions(-) diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 5d9a288d..05599de6 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -479,7 +479,7 @@ body @media (min-width: 768px) height: 235px; - margin-top: 70px + margin: 8rem 0 padding: 65px 235px 65px 65px; box-shadow: 0 10px 20px 0 rgba(0,0,0,0.25) text-align: left; @@ -905,9 +905,14 @@ body .column margin-bottom 20px text-align center + &.libraries + margin: 0 0 20px 0; +breakpoint("tablet") margin-bottom 0 + &.libraries + margin: -2rem 0; + h2 font-size 30px color white @@ -915,6 +920,19 @@ body margin 0 font-weight normal + .libraries + background rgba(255, 255, 255, .05) + +breakpoint("tablet") + height 373px + + .libraries-container + padding: 2rem + + p + color white + font-size 20px + line-height 1.2 + .logotype img height 40px @@ -1023,6 +1041,14 @@ body color white border none + &.btn-ghost + background transparent + border 1px solid #D63AFF + color #D63AFF + + & + .btn + margin-left 2rem + .token margin-top 35px h5 diff --git a/views/website/assets.pug b/views/website/assets.pug index a70fd96b..a46f5134 100644 --- a/views/website/assets.pug +++ b/views/website/assets.pug @@ -1,6 +1,11 @@ section.sources .container .columns + .column.libraries + .libraries-container + h2 Looking for a JWT library? + p Head on over to our libraries page to find a JWT library in your favorite language. + a(href="http://github.com/libraries").btn.btn-lg See al libraries .column.badges h2 Badges .hold @@ -32,9 +37,4 @@ section.sources .text-hold a(href='http://jwt.io/img/logo-asset.svg', target='_blank' title='Download JWT logo') i.icon-budicon-722 - p http://jwt.io/img/logo-asset.svg - .column.tshirt - h2 Store - img(src='http://github.com/img/pic_tshirt.png' alt='JWT logo mark t-shirt') - a.buy(href='http://swag.auth0.com/', target='_blank') Buy T-Shirt - \ No newline at end of file + p http://jwt.io/img/logo-asset.svg \ No newline at end of file diff --git a/views/website/index.pug b/views/website/index.pug index b7b454e5..4cf52e74 100644 --- a/views/website/index.pug +++ b/views/website/index.pug @@ -13,11 +13,12 @@ block content p JWT.IO allows you to decode, verify and generate JWT. a.btn.btn-lg(href="http://github.com/introduction") Learn more about jwt - - include ebook.pug + a.btn.btn-lg.btn-ghost(href="http://github.com/libraries") See jwt libraries include token-editor.pug + include ebook.pug + include assets.pug include counter.pug From dcc527c85f7420d7ecd735eb766dbf3fdd878ada Mon Sep 17 00:00:00 2001 From: Sam Bellen Date: Wed, 29 Sep 2021 10:00:07 +0200 Subject: [PATCH 350/456] Remove duplicate require --- Gruntfile.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Gruntfile.js b/Gruntfile.js index f0a7316b..536d941f 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -5,7 +5,6 @@ module.exports = (grunt) => { grunt.loadNpmTasks("grunt-contrib-copy"); grunt.loadNpmTasks("grunt-contrib-stylus"); grunt.loadNpmTasks("grunt-contrib-pug"); - grunt.loadNpmTasks("grunt-contrib-pug"); grunt.loadNpmTasks("grunt-webpack"); grunt.loadNpmTasks("grunt-contrib-watch"); grunt.loadNpmTasks("grunt-contrib-clean"); @@ -278,4 +277,4 @@ module.exports = (grunt) => { grunt.registerTask("test", ["unit-tests", "functional-tests"]); grunt.registerTask("default", ["build-dev", "connect:website", "watch"]); -}; \ No newline at end of file +}; From dc8a49fdb195b08fa525f21a4dac8cf9486db1e1 Mon Sep 17 00:00:00 2001 From: Sambego Date: Wed, 29 Sep 2021 10:25:09 +0200 Subject: [PATCH 351/456] Update Auth0 brand identity --- img/website/ico_logo.svg | 27 +-------------------------- img/website/pic_logo_ft.svg | 16 +--------------- package-lock.json | 15 +++------------ stylus/website/index.styl | 13 +++++++++++-- views/website/counter.pug | 2 +- views/website/layout.pug | 2 +- views/website/navigation.pug | 2 +- 7 files changed, 19 insertions(+), 58 deletions(-) diff --git a/img/website/ico_logo.svg b/img/website/ico_logo.svg index e70f909f..bdd8e582 100644 --- a/img/website/ico_logo.svg +++ b/img/website/ico_logo.svg @@ -1,26 +1 @@ - - - - auth0-svg - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file + \ No newline at end of file diff --git a/img/website/pic_logo_ft.svg b/img/website/pic_logo_ft.svg index dd06255a..9eec2d65 100644 --- a/img/website/pic_logo_ft.svg +++ b/img/website/pic_logo_ft.svg @@ -1,15 +1 @@ - - - - logo-blue - Created with Sketch. - - - - - - - - - - \ No newline at end of file + \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index b21b2393..5c9e4459 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1753,7 +1753,6 @@ "esprima": "3.1.3", "first-chunk-stream": "2.0.0", "fluent-syntax": "0.7.0", - "fsevents": "2.0.1", "glob": "7.1.3", "is-mergeable-object": "1.1.0", "jed": "1.1.1", @@ -3118,10 +3117,7 @@ "integrity": "sha1-8VDw9nSKvdcq6uhPBEA74u8RN5c=", "dev": true, "dependencies": { - "dtrace-provider": "~0.8", - "moment": "^2.10.6", - "mv": "~2", - "safe-json-stringify": "~1" + "moment": "^2.10.6" }, "optionalDependencies": { "dtrace-provider": "~0.8", @@ -3321,7 +3317,6 @@ "anymatch": "^2.0.0", "async-each": "^1.0.1", "braces": "^2.3.2", - "fsevents": "^1.2.7", "glob-parent": "^3.1.0", "inherits": "^2.0.3", "is-binary-path": "^1.0.0", @@ -4748,8 +4743,7 @@ "esprima": "^4.0.1", "estraverse": "^4.2.0", "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" + "optionator": "^0.8.1" }, "optionalDependencies": { "source-map": "~0.6.1" @@ -12651,7 +12645,6 @@ "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", "dependencies": { "source-map": "~0.5.1", - "uglify-to-browserify": "~1.0.0", "yargs": "~3.10.0" }, "optionalDependencies": { @@ -13577,10 +13570,8 @@ "integrity": "sha512-aWAgTW4MoSJzZPAicljkO1hsi1oKj/RRq/OJQh2PKI2UKL04c2Bs+MBOB+BBABHTXJpf9mCwHN7ANCvYsvY2sg==", "dev": true, "dependencies": { - "chokidar": "^3.4.1", "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0", - "watchpack-chokidar2": "^2.0.0" + "neo-async": "^2.5.0" }, "optionalDependencies": { "chokidar": "^3.4.1", diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 05599de6..45eba285 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -268,6 +268,9 @@ body .supported display none + .logo-mobile + height 18px + &.fixed .brand .icon @@ -1007,6 +1010,9 @@ body padding 60px 0 font-size 26px + .logo + height 55px + img margin-bottom 35px @@ -1028,11 +1034,11 @@ body display inline-block margin-top 30px &.btn-success - background-color #eb5424 + background-color #635dff color white border-color transparent &:hover - background-color darken(#eb5424, 30%) + background-color #564ed1 color white .btn, a.btn @@ -1235,6 +1241,9 @@ footer img margin-left 5px + .logo + height 18px + .pull-request +breakpoint("tablet") text-align center diff --git a/views/website/counter.pug b/views/website/counter.pug index 915a1bac..8fdf5310 100644 --- a/views/website/counter.pug +++ b/views/website/counter.pug @@ -1,6 +1,6 @@ .tokens-created .container - img(src='http://github.com/img/pic_logo_ft.svg' alt='Auth0 logo') + img(src='http://github.com/img/pic_logo_ft.svg' alt='Auth0 logo').logo p JWT.io is brought to you by a(href='https://auth0.com/signup', target="_blank") Auth0 p Securely implement authentication with JWTs using Auth0 on any stack and any device in less than 10 minutes. diff --git a/views/website/layout.pug b/views/website/layout.pug index b2755238..7f29b422 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -63,7 +63,7 @@ html(lang='en') .column a(href='https://auth0.com/developers/', target="_blank") | Supported by - img(src='http://github.com/img/ico_logo.svg' alt='Supported by Auth0 - JWT.io Token Based Authentication') + img(src='http://github.com/img/ico_logo.svg' alt='Supported by Auth0 - JWT.io Token Based Authentication').logo .column.pull-request span Missing something? a(href='https://github.com/jsonwebtoken/jsonwebtoken.github.io/tree/master/views', target="_blank") Send a Pull Request diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 3e64c842..792e906e 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -22,4 +22,4 @@ nav.navbar.closed a.supported(href='https://auth0.com/?utm_source=jwtio&utm_campaign=craftedby', target="_blank") | Supported by - img(src='http://github.com/img/ico_logo.svg', alt='Supported by Auth0 - JWT.io Token Based Authentication') \ No newline at end of file + img(src='http://github.com/img/ico_logo.svg', alt='Supported by Auth0 - JWT.io Token Based Authentication').logo-mobile \ No newline at end of file From 299857de83c04e2e0a141011905fa9000122b998 Mon Sep 17 00:00:00 2001 From: Sambego Date: Wed, 29 Sep 2021 10:32:07 +0200 Subject: [PATCH 352/456] Remove scroll to debugger test, its now the main homepage section --- test/functional/editor.js | 1619 ++++++++++++++++++------------------- 1 file changed, 806 insertions(+), 813 deletions(-) diff --git a/test/functional/editor.js b/test/functional/editor.js index 39c6f8ae..3ec17b94 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -10,7 +10,7 @@ const _ = require('lodash'); const utils = require('./utils.js'); const defaultTokens = - require('esm')(module)('../../src/editor/default-tokens.js').default; + require('esm')(module)('../../src/editor/default-tokens.js').default; const jwks = require('./jwks.json'); const { isVisible, selectAll } = utils; @@ -24,1047 +24,1040 @@ const tokenProcessingWait = 300; const tokenEditorThrottleWait = 1200; describe('Editor', function() { - this.timeout(75000); + this.timeout(75000); - before(utils.launchBrowser); + before(utils.launchBrowser); - after(utils.closeBrowser); + after(utils.closeBrowser); - it('Displays editor when clicking on navbar', async function() { - await this.page.click('a[href="#debugger-io"]'); - // Wait for scroll - await this.page.waitFor(3000); - expect(await this.page.$eval('#debugger-io', isVisible)).to.be.true; - }); - - it('HS256 should be selected by default', async function() { - const selected = await this.page.$eval('#algorithm-select', select => { - return select.options[select.selectedIndex].value; - }); - - expect(selected).to.equal('HS256'); - }); - - it('Default selected token should say something ' + - 'about secret length', async function() { - const secret = this.page.$eval('input[name="secret"]', - secretInput => secretInput.value); - return expect(secret).to.eventually.include('256'); - }); - - it('Should select default tokens when no changes have ' + - 'been made', async function() { - try { - await this.page.select('#algorithm-select', 'HS256'); - - const algs = await this.page.$eval('#algorithm-select', select => { - return Array.prototype.map.call(select.options, opt => opt.value); - }); - - for(const alg of algs) { - await this.page.select('#algorithm-select', alg); - const token = await this.page.evaluate(() => { - return window.test.tokenEditor.getValue(); + it('HS256 should be selected by default', async function() { + const selected = await this.page.$eval('#algorithm-select', select => { + return select.options[select.selectedIndex].value; }); - expect(defaultTokens[alg.toLowerCase()].token).to.equal(token); - } - } finally { - await this.page.select('#algorithm-select', 'HS256'); - } - }); - - it('Should display a tooltip for a claim', async function() { - await this.page.select('#algorithm-select', 'HS384'); - - await this.page.mouse.move(0, 0); - - function tippyVisible(element) { - return element._tippy.state.visible; - } - - expect(await this.page.$eval('[data-tippy]', tippyVisible)). - to.be.false; - - const iatPos = await this.page.evaluate(() => { - return window.test.payloadEditor.charCoords({ - line: 4, - pos: 3 - }, 'window'); + expect(selected).to.equal('HS256'); }); - await this.page.mouse.move(iatPos.left, iatPos.top); - - // Wait for animation - await this.page.waitFor(2000); + it('Default selected token should say something ' + + 'about secret length', async function() { + const secret = this.page.$eval('input[name="secret"]', + secretInput => secretInput.value); + return expect(secret).to.eventually.include('256'); + }); - expect(await this.page.$eval('[data-tippy]', tippyVisible)) - .to.be.true; - }); + it('Should select default tokens when no changes have ' + + 'been made', async function() { + try { + await this.page.select('#algorithm-select', 'HS256'); + + const algs = await this.page.$eval('#algorithm-select', select => { + return Array.prototype.map.call(select.options, opt => opt.value); + }); + + for (const alg of algs) { + await this.page.select('#algorithm-select', alg); + const token = await this.page.evaluate(() => { + return window.test.tokenEditor.getValue(); + }); + + expect(defaultTokens[alg.toLowerCase()].token).to.equal(token); + } + } finally { + await this.page.select('#algorithm-select', 'HS256'); + } + }); - it('Displays a valid token by default', async function() { - const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && - status.textContent.indexOf('verified') !== -1; - }); + it('Should display a tooltip for a claim', async function() { + await this.page.select('#algorithm-select', 'HS384'); - expect(valid).to.be.true; - }); + await this.page.mouse.move(0, 0); - it('Shows invalid token when a valid token is edited ' + - 'in the left pane', async function() { - await this.page.evaluate(() => { - let token = window.test.tokenEditor.getValue(); - token += 'asdf23'; - window.test.tokenEditor.setValue(token); - }); - - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); + function tippyVisible(element) { + return element._tippy.state.visible; + } - const invalid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('invalid-token') && - status.textContent.indexOf('invalid') !== -1; - }); + expect(await this.page.$eval('[data-tippy]', tippyVisible)). + to.be.false; - expect(invalid).to.be.true; - }); + const iatPos = await this.page.evaluate(() => { + return window.test.payloadEditor.charCoords({ + line: 4, + pos: 3 + }, 'window'); + }); - it('Updates the token when the header is edited', async function() { - const oldToken = await this.page.evaluate(() => { - return window.test.tokenEditor.getValue() - }); + await this.page.mouse.move(iatPos.left, iatPos.top); - await this.page.click('.js-header'); - await selectAll.call(this); + // Wait for animation + await this.page.waitFor(2000); - const header = { - alg: 'HS256', - typ: 'JWT', - test: 'test' - }; - await this.page.keyboard.type(JSON.stringify(header, null, 2), { - delay: typingDelay + expect(await this.page.$eval('[data-tippy]', tippyVisible)) + .to.be.true; }); - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); - await this.page.waitFor(tokenEditorThrottleWait); + it('Displays a valid token by default', async function() { + const valid = await this.page.$eval('.validation-status', status => { + return status.classList.contains('valid-token') && + status.textContent.indexOf('verified') !== -1; + }); - const newToken = await this.page.evaluate(() => { - return window.test.tokenEditor.getValue(); + expect(valid).to.be.true; }); - expect(newToken).to.not.equal(oldToken); - - const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && - status.textContent.indexOf('verified') !== -1; - }); + it('Shows invalid token when a valid token is edited ' + + 'in the left pane', async function() { + await this.page.evaluate(() => { + let token = window.test.tokenEditor.getValue(); + token += 'asdf23'; + window.test.tokenEditor.setValue(token); + }); - expect(valid).to.be.true; - }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); - it('Updates the token when the payload is edited', async function() { - const oldToken = await this.page.evaluate(() => { - return window.test.tokenEditor.getValue() - }); + const invalid = await this.page.$eval('.validation-status', status => { + return status.classList.contains('invalid-token') && + status.textContent.indexOf('invalid') !== -1; + }); - await this.page.click('.js-payload'); - await selectAll.call(this); - - const payload = { - "sub": "1234567890", - "name": "John Doe", - "admin": true, - "iat": 1516239022, - "test": "test" - }; - await this.page.keyboard.type(JSON.stringify(payload, null, 2), { - delay: typingDelay - }); + expect(invalid).to.be.true; + }); - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); - await this.page.waitFor(tokenEditorThrottleWait); + it('Updates the token when the header is edited', async function() { + const oldToken = await this.page.evaluate(() => { + return window.test.tokenEditor.getValue() + }); - const newToken = await this.page.evaluate(() => { - return window.test.tokenEditor.getValue() - }); + await this.page.click('.js-header'); + await selectAll.call(this); - expect(newToken).to.not.equal(oldToken); + const header = { + alg: 'HS256', + typ: 'JWT', + test: 'test' + }; + await this.page.keyboard.type(JSON.stringify(header, null, 2), { + delay: typingDelay + }); - const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && - status.textContent.indexOf('verified') !== -1; - }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); - expect(valid).to.be.true; - }); + const newToken = await this.page.evaluate(() => { + return window.test.tokenEditor.getValue(); + }); - it('Selects algorithm when header is edited', async function() { - const selectedBefore = - await this.page.$eval('#algorithm-select', select => { - return select.options[select.selectedIndex].value; - }); + expect(newToken).to.not.equal(oldToken); - await this.page.click('.js-header'); - await selectAll.call(this); + const valid = await this.page.$eval('.validation-status', status => { + return status.classList.contains('valid-token') && + status.textContent.indexOf('verified') !== -1; + }); - const header = { - alg: 'HS384', - typ: 'JWT', - }; - await this.page.keyboard.type(JSON.stringify(header, null, 2), { - delay: typingDelay + expect(valid).to.be.true; }); - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); - await this.page.waitFor(tokenEditorThrottleWait); - - const selectedAfter = - await this.page.$eval('#algorithm-select', select => { - return select.options[select.selectedIndex].value; - }); - - expect(selectedBefore).to.not.equal(selectedAfter); - expect(selectedAfter).to.equal('HS384'); + it('Updates the token when the payload is edited', async function() { + const oldToken = await this.page.evaluate(() => { + return window.test.tokenEditor.getValue() + }); - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); - await this.page.waitFor(tokenEditorThrottleWait); + await this.page.click('.js-payload'); + await selectAll.call(this); - const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && - status.textContent.indexOf('verified') !== -1; - }); + const payload = { + "sub": "1234567890", + "name": "John Doe", + "admin": true, + "iat": 1516239022, + "test": "test" + }; + await this.page.keyboard.type(JSON.stringify(payload, null, 2), { + delay: typingDelay + }); - expect(valid).to.be.true; - }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); - it('Should never revert to a default token after a non-default token ' + - 'is generated', async function() { - await this.page.select('#algorithm-select', 'HS256'); + const newToken = await this.page.evaluate(() => { + return window.test.tokenEditor.getValue() + }); - await this.page.click('.js-payload'); - await selectAll.call(this); + expect(newToken).to.not.equal(oldToken); - const payload = { - sub: 'test' - }; - await this.page.keyboard.type(JSON.stringify(payload, null, 2), { - delay: typingDelay - }); + const valid = await this.page.$eval('.validation-status', status => { + return status.classList.contains('valid-token') && + status.textContent.indexOf('verified') !== -1; + }); - const algs = await this.page.$eval('#algorithm-select', select => { - return Array.prototype.map.call(select.options, opt => opt.value); + expect(valid).to.be.true; }); - for(const alg of algs) { - await this.page.select('#algorithm-select', alg); - } - - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); - - const payloadInEditor = await this.page.evaluate(() => { - return JSON.parse(window.test.payloadEditor.getValue()); - }); + it('Selects algorithm when header is edited', async function() { + const selectedBefore = + await this.page.$eval('#algorithm-select', select => { + return select.options[select.selectedIndex].value; + }); - expect(payload).to.deep.equal(payloadInEditor); - }); + await this.page.click('.js-header'); + await selectAll.call(this); - describe('HMAC', function() { - before(async function() { - await this.page.select('#algorithm-select', 'HS256'); - }); + const header = { + alg: 'HS384', + typ: 'JWT', + }; + await this.page.keyboard.type(JSON.stringify(header, null, 2), { + delay: typingDelay + }); - it('Updates the token when the secret changes', async function() { - const oldToken = await this.page.evaluate(() => { - return window.test.tokenEditor.getValue() - }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); - const secretInput = await this.page.$('input[name="secret"]'); + const selectedAfter = + await this.page.$eval('#algorithm-select', select => { + return select.options[select.selectedIndex].value; + }); - await secretInput.type('asdfasdf'); + expect(selectedBefore).to.not.equal(selectedAfter); + expect(selectedAfter).to.equal('HS384'); - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); - const newToken = await this.page.evaluate(() => { - return window.test.tokenEditor.getValue() - }); + const valid = await this.page.$eval('.validation-status', status => { + return status.classList.contains('valid-token') && + status.textContent.indexOf('verified') !== -1; + }); - expect(oldToken).to.not.equal(newToken); + expect(valid).to.be.true; }); - it('Updates the token when the Base64 checkbox changes', async function() { - const oldToken = await this.page.evaluate(() => { - return window.test.tokenEditor.getValue() - }); + it('Should never revert to a default token after a non-default token ' + + 'is generated', async function() { + await this.page.select('#algorithm-select', 'HS256'); - await this.page.click('#is-base64-encoded'); + await this.page.click('.js-payload'); + await selectAll.call(this); - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); + const payload = { + sub: 'test' + }; + await this.page.keyboard.type(JSON.stringify(payload, null, 2), { + delay: typingDelay + }); - let newToken = await this.page.evaluate(() => { - return window.test.tokenEditor.getValue() - }); + const algs = await this.page.$eval('#algorithm-select', select => { + return Array.prototype.map.call(select.options, opt => opt.value); + }); - expect(oldToken).to.not.equal(newToken); + for (const alg of algs) { + await this.page.select('#algorithm-select', alg); + } - await this.page.click('#is-base64-encoded'); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); + const payloadInEditor = await this.page.evaluate(() => { + return JSON.parse(window.test.payloadEditor.getValue()); + }); - newToken = await this.page.evaluate(() => { - return window.test.tokenEditor.getValue() - }); + expect(payload).to.deep.equal(payloadInEditor); + }); - expect(oldToken).to.equal(newToken); - }); + describe('HMAC', function() { + before(async function() { + await this.page.select('#algorithm-select', 'HS256'); + }); - describe('HS256/384/512', function() { - const algs = Object.keys(defaultTokens).filter(alg => alg.includes('hs')); + it('Updates the token when the secret changes', async function() { + const oldToken = await this.page.evaluate(() => { + return window.test.tokenEditor.getValue() + }); - for(const alg of algs) { - it(`Decodes ${alg.toUpperCase()} tokens`, async function() { - const secretInput = await this.page.$('input[name="secret"]'); - await secretInput.click(); - await selectAll.call(this); - await secretInput.type(defaultTokens[alg].secret); + const secretInput = await this.page.$('input[name="secret"]'); - await this.page.click('.js-input'); - await selectAll.call(this); - await this.page.keyboard.type(defaultTokens[alg].token); + await secretInput.type('asdfasdf'); - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); - await this.page.waitFor(tokenEditorThrottleWait); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); - const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && - status.textContent.indexOf('verified') !== -1; - }); + const newToken = await this.page.evaluate(() => { + return window.test.tokenEditor.getValue() + }); - expect(valid).to.be.true; + expect(oldToken).to.not.equal(newToken); }); - const bits = parseInt(alg.substr(2)); - it(`Considers less-than-${bits}-bit secrets weak`, - async function() { - let secret = _.pad('', (bits / 8) - 1, 'test'); + it('Updates the token when the Base64 checkbox changes', async function() { + const oldToken = await this.page.evaluate(() => { + return window.test.tokenEditor.getValue() + }); - const secretInput = await this.page.$('input[name="secret"]'); - await secretInput.click(); - await selectAll.call(this); - await secretInput.type(secret, { - delay: typingDelay - }); + await this.page.click('#is-base64-encoded'); - // Wait for animations - await this.page.waitFor(500); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); - let tooltipVisible = - await this.page.$eval('input[name="secret"]', input => { - return input._tippy.state.visible; + let newToken = await this.page.evaluate(() => { + return window.test.tokenEditor.getValue() }); - expect(tooltipVisible).to.be.true; + expect(oldToken).to.not.equal(newToken); - secret += 'test'; - await secretInput.click(); - await selectAll.call(this); - await secretInput.type(secret, { - delay: typingDelay - }); + await this.page.click('#is-base64-encoded'); - // Wait for animations - await this.page.waitFor(500); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); - tooltipVisible = - await this.page.$eval('input[name="secret"]', input => { - return input._tippy.state.visible; + newToken = await this.page.evaluate(() => { + return window.test.tokenEditor.getValue() }); - expect(tooltipVisible).to.be.false; + expect(oldToken).to.equal(newToken); }); - } - }); - - it('Signs tokens with an empty secret', async function() { - const secretInput = await this.page.$('input[name="secret"]'); - await secretInput.click(); - await selectAll.call(this); - await this.page.keyboard.press('Delete'); - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); - - const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && - status.textContent.indexOf('verified') !== -1; - }); - - expect(valid).to.be.true; - }); - }); - - describe('Public-key', function() { - describe('Decodes RS/ES/PS tokens', function() { - const algs = Object.keys(defaultTokens).filter(alg => !alg.includes('hs')); - - for(const alg of algs) { - for (const format of ['pem', 'jwk']) { - it(`${alg.toUpperCase()} using a ${format.toUpperCase()} key`, async function() { - await this.page.click('.js-input'); - await selectAll.call(this); - await this.page.keyboard.type(defaultTokens[alg].token); + describe('HS256/384/512', function() { + const algs = Object.keys(defaultTokens).filter(alg => alg.includes('hs')); + + for (const alg of algs) { + it(`Decodes ${alg.toUpperCase()} tokens`, async function() { + const secretInput = await this.page.$('input[name="secret"]'); + await secretInput.click(); + await selectAll.call(this); + await secretInput.type(defaultTokens[alg].secret); + + await this.page.click('.js-input'); + await selectAll.call(this); + await this.page.keyboard.type(defaultTokens[alg].token); + + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); + + const valid = await this.page.$eval('.validation-status', status => { + return status.classList.contains('valid-token') && + status.textContent.indexOf('verified') !== -1; + }); + + expect(valid).to.be.true; + }); + + const bits = parseInt(alg.substr(2)); + it(`Considers less-than-${bits}-bit secrets weak`, + async function() { + let secret = _.pad('', (bits / 8) - 1, 'test'); + + const secretInput = await this.page.$('input[name="secret"]'); + await secretInput.click(); + await selectAll.call(this); + await secretInput.type(secret, { + delay: typingDelay + }); + + // Wait for animations + await this.page.waitFor(500); + + let tooltipVisible = + await this.page.$eval('input[name="secret"]', input => { + return input._tippy.state.visible; + }); + + expect(tooltipVisible).to.be.true; + + secret += 'test'; + await secretInput.click(); + await selectAll.call(this); + await secretInput.type(secret, { + delay: typingDelay + }); + + // Wait for animations + await this.page.waitFor(500); + + tooltipVisible = + await this.page.$eval('input[name="secret"]', input => { + return input._tippy.state.visible; + }); + + expect(tooltipVisible).to.be.false; + }); + } + }); - const secretInput = await this.page.$('textarea[name="public-key"]'); + it('Signs tokens with an empty secret', async function() { + const secretInput = await this.page.$('input[name="secret"]'); await secretInput.click(); await selectAll.call(this); - - let publicKey = defaultTokens[alg].publicKey; - if (format === 'jwk') { - publicKey = JSON.stringify(defaultTokens[alg].jwk) - } - - await secretInput.type(publicKey); + await this.page.keyboard.press('Delete'); // Wait for token processing. await this.page.waitFor(tokenProcessingWait); - await this.page.waitFor(tokenEditorThrottleWait); const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && + return status.classList.contains('valid-token') && status.textContent.indexOf('verified') !== -1; }); expect(valid).to.be.true; - }); - } - } + }); }); - describe('Encodes RS/ES/PS tokens', function() { - const algs = Object.keys(defaultTokens).filter(alg => !alg.includes('hs')); + describe('Public-key', function() { + describe('Decodes RS/ES/PS tokens', function() { + const algs = Object.keys(defaultTokens).filter(alg => !alg.includes('hs')); - for(const alg of algs) { - for (const format of ['pem', 'jwk']) { - it(`${alg.toUpperCase()} using a ${format.toUpperCase()} key`, async function() { - await this.page.select('#algorithm-select', alg.toUpperCase()); + for (const alg of algs) { + for (const format of['pem', 'jwk']) { + it(`${alg.toUpperCase()} using a ${format.toUpperCase()} key`, async function() { + await this.page.click('.js-input'); + await selectAll.call(this); + await this.page.keyboard.type(defaultTokens[alg].token); - let publicKey = defaultTokens[alg].publicKey; - if (format === 'jwk') { - publicKey = JSON.stringify(defaultTokens[alg].jwk) - } + const secretInput = await this.page.$('textarea[name="public-key"]'); + await secretInput.click(); + await selectAll.call(this); - let privateKey = defaultTokens[alg].privateKey; - if (format === 'jwk') { - privateKey = JSON.stringify(defaultTokens[alg].jwk) - } + let publicKey = defaultTokens[alg].publicKey; + if (format === 'jwk') { + publicKey = JSON.stringify(defaultTokens[alg].jwk) + } - await this.page.click('textarea[name="public-key"]'); - await selectAll.call(this); - await this.page.keyboard.type(publicKey, { - delay: typingDelay - }); + await secretInput.type(publicKey); - await this.page.click('textarea[name="private-key"]'); - await selectAll.call(this); - await this.page.keyboard.type(privateKey, { - delay: typingDelay - }); - - await this.page.evaluate(token => { - window.test.tokenEditor.setValue(token); - }, defaultTokens[alg].token); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); - await this.page.select('#algorithm-select', alg.toUpperCase()); + const valid = await this.page.$eval('.validation-status', status => { + return status.classList.contains('valid-token') && + status.textContent.indexOf('verified') !== -1; + }); - await this.page.click('.js-header'); - await selectAll.call(this); - await this.page.keyboard.type(JSON.stringify({ - alg: alg.toUpperCase(), - typ: 'JWT' - }, null, 2), { - delay: typingDelay - }); - - await this.page.click('.js-payload'); - await selectAll.call(this); - await this.page.keyboard.type(JSON.stringify({ - sub: 'test' - }, null, 2), { - delay: typingDelay - }); - - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); - await this.page.waitFor(tokenEditorThrottleWait); - - const newToken = await this.page.evaluate(() => { - return window.test.tokenEditor.getValue(); - }); - - expect(newToken).to.not.be.empty; - - const valid = await this.page.$eval('.validation-status', - status => { - return status.classList.contains('valid-token') && - status.textContent.indexOf('verified') !== -1; - }); - - expect(valid).to.be.true; - }); - } - } - }); - - describe('Should download public-keys when possible', function() { - before(async function() { - this.app = express(); - - this.app.get('/.well-known/openid-configuration', (req, res) => { - res.set('Access-Control-Allow-Origin', '*'); - res.json({ - jwks_uri: 'http://localhost:3000/.well-known/jwks.json' - }); + expect(valid).to.be.true; + }); + } + } }); - this.app.get('/.well-known/jwks.json', (req, res) => { - res.set('Access-Control-Allow-Origin', '*'); - res.json(jwks); + describe('Encodes RS/ES/PS tokens', function() { + const algs = Object.keys(defaultTokens).filter(alg => !alg.includes('hs')); + + for (const alg of algs) { + for (const format of['pem', 'jwk']) { + it(`${alg.toUpperCase()} using a ${format.toUpperCase()} key`, async function() { + await this.page.select('#algorithm-select', alg.toUpperCase()); + + let publicKey = defaultTokens[alg].publicKey; + if (format === 'jwk') { + publicKey = JSON.stringify(defaultTokens[alg].jwk) + } + + let privateKey = defaultTokens[alg].privateKey; + if (format === 'jwk') { + privateKey = JSON.stringify(defaultTokens[alg].jwk) + } + + await this.page.click('textarea[name="public-key"]'); + await selectAll.call(this); + await this.page.keyboard.type(publicKey, { + delay: typingDelay + }); + + await this.page.click('textarea[name="private-key"]'); + await selectAll.call(this); + await this.page.keyboard.type(privateKey, { + delay: typingDelay + }); + + await this.page.evaluate(token => { + window.test.tokenEditor.setValue(token); + }, defaultTokens[alg].token); + + await this.page.select('#algorithm-select', alg.toUpperCase()); + + await this.page.click('.js-header'); + await selectAll.call(this); + await this.page.keyboard.type(JSON.stringify({ + alg: alg.toUpperCase(), + typ: 'JWT' + }, null, 2), { + delay: typingDelay + }); + + await this.page.click('.js-payload'); + await selectAll.call(this); + await this.page.keyboard.type(JSON.stringify({ + sub: 'test' + }, null, 2), { + delay: typingDelay + }); + + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); + + const newToken = await this.page.evaluate(() => { + return window.test.tokenEditor.getValue(); + }); + + expect(newToken).to.not.be.empty; + + const valid = await this.page.$eval('.validation-status', + status => { + return status.classList.contains('valid-token') && + status.textContent.indexOf('verified') !== -1; + }); + + expect(valid).to.be.true; + }); + } + } }); - this.server = this.app.listen(3000); + describe('Should download public-keys when possible', function() { + before(async function() { + this.app = express(); - await this.page.select('#algorithm-select', 'RS256'); - }); + this.app.get('/.well-known/openid-configuration', (req, res) => { + res.set('Access-Control-Allow-Origin', '*'); + res.json({ + jwks_uri: 'http://localhost:3000/.well-known/jwks.json' + }); + }); - beforeEach(async function() { - const publicKeyInput = await this.page.$('textarea[name="public-key"]'); - await publicKeyInput.click(); - await selectAll.call(this); - await this.page.keyboard.press('Delete'); - }); - - after(function() { - this.server.close(); - }); - - it('iss URL + .well-known', async function() { - const key = await importPKCS8(defaultTokens.rs256.privateKey, 'RS256'); - const token = await new CompactSign(Buffer.from(JSON.stringify({ - sub: 'test', - iss: 'http://localhost:3000/' - }))).setProtectedHeader({ - alg: 'RS256', - typ: 'JWT', - kid: '1' - }).sign(key); + this.app.get('/.well-known/jwks.json', (req, res) => { + res.set('Access-Control-Allow-Origin', '*'); + res.json(jwks); + }); - await this.page.click('.js-input'); - await selectAll.call(this); - await this.page.keyboard.type(token); + this.server = this.app.listen(3000); - await this.page.waitFor(2000); - await this.page.waitFor(tokenEditorThrottleWait); + await this.page.select('#algorithm-select', 'RS256'); + }); - const publicKey = await this.page.$eval('textarea[name="public-key"]', - publicKeyElement => publicKeyElement.value); + beforeEach(async function() { + const publicKeyInput = await this.page.$('textarea[name="public-key"]'); + await publicKeyInput.click(); + await selectAll.call(this); + await this.page.keyboard.press('Delete'); + }); - expect(jwks.keys[0]).to.contain(JSON.parse(publicKey)) - }); + after(function() { + this.server.close(); + }); - it('jku', async function() { - //this.timeout(20000); + it('iss URL + .well-known', async function() { + const key = await importPKCS8(defaultTokens.rs256.privateKey, 'RS256'); + const token = await new CompactSign(Buffer.from(JSON.stringify({ + sub: 'test', + iss: 'http://localhost:3000/' + }))).setProtectedHeader({ + alg: 'RS256', + typ: 'JWT', + kid: '1' + }).sign(key); - const key = await importPKCS8(defaultTokens.rs256.privateKey, 'RS256'); - const token = await new CompactSign(Buffer.from(JSON.stringify({ - sub: 'test' - }))).setProtectedHeader({ - alg: 'RS256', - typ: 'JWT', - kid: '1', - jku: 'http://localhost:3000/.well-known/jwks.json' - }).sign(key); + await this.page.click('.js-input'); + await selectAll.call(this); + await this.page.keyboard.type(token); - await this.page.click('.js-input'); - await selectAll.call(this); - await this.page.keyboard.type(token); + await this.page.waitFor(2000); + await this.page.waitFor(tokenEditorThrottleWait); - await this.page.waitFor(2000); - await this.page.waitFor(tokenEditorThrottleWait); + const publicKey = await this.page.$eval('textarea[name="public-key"]', + publicKeyElement => publicKeyElement.value); - const publicKey = await this.page.$eval('textarea[name="public-key"]', - publicKeyElement => publicKeyElement.value); + expect(jwks.keys[0]).to.contain(JSON.parse(publicKey)) + }); - expect(jwks.keys[0]).to.contain(JSON.parse(publicKey)) - }); + it('jku', async function() { + //this.timeout(20000); - it('x5c', async function() { - //this.timeout(35000); + const key = await importPKCS8(defaultTokens.rs256.privateKey, 'RS256'); + const token = await new CompactSign(Buffer.from(JSON.stringify({ + sub: 'test' + }))).setProtectedHeader({ + alg: 'RS256', + typ: 'JWT', + kid: '1', + jku: 'http://localhost:3000/.well-known/jwks.json' + }).sign(key); - const key = await importPKCS8(defaultTokens.rs256.privateKey, 'RS256'); - const token = await new CompactSign(Buffer.from(JSON.stringify({ - sub: 'test' - }))).setProtectedHeader({ - alg: 'RS256', - typ: 'JWT', - x5c: jwks.keys[0].x5c - }).sign(key); + await this.page.click('.js-input'); + await selectAll.call(this); + await this.page.keyboard.type(token); - await this.page.click('.js-input'); - await selectAll.call(this); - await this.page.keyboard.type(token); + await this.page.waitFor(2000); + await this.page.waitFor(tokenEditorThrottleWait); - await this.page.waitFor(2000); + const publicKey = await this.page.$eval('textarea[name="public-key"]', + publicKeyElement => publicKeyElement.value); - const publicKey = await this.page.$eval('textarea[name="public-key"]', - publicKeyElement => publicKeyElement.value); - - expect(publicKey).to.include('-----BEGIN CERTIFICATE-----\nMIIDBjCCAe4CCQDOaPo3zzlhlzANBgkqhkiG9w0BAQsFADBFMQswCQYDVQQGEwJV\nUzETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0\ncyBQdHkgTHRkMB4XDTE5MDYwNTEwMDg0OVoXDTIwMDYwNDEwMDg0OVowRTELMAkG\nA1UEBhMCVVMxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoMGEludGVybmV0\nIFdpZGdpdHMgUHR5IEx0ZDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB\nAJ88orNWY3zQdGwYChTEr75E7cJbwbGiau0ucAPpM3lTlaVVsJFnVYWuLN/FzP6W\nv8q+O2r+/s91U5rw0cgB3Gk/dsIURBaS7/XI+ZU3iUom8q/zK5v2LYwmVVoGjmCI\ncK18Ci6j6/9dYp1rAJHyMrbx1k8WWBHFy4AFxblLmkt7hfYBIjUMMxk1Nb9BapKk\nwa+AfJ1txwjeO11LtLfGNHvpX+LODsUGsFg+/Sff+Xd0ctL21dwJtRbRiYibzsEb\nCH1QoQ6WErU3B0wjKrb1m1ei9dQVpKcxl0luB7+N6mvhkmDg9kFOvDG+faEpNjgf\ngbTi6SaH5mxhBoL5sMgiPTMCAwEAATANBgkqhkiG9w0BAQsFAAOCAQEAU4Nx25sl\niX8gD10Oik+RpBpHmsuZBU6q3nqYQKMlVdKFVeuptdqNjnVZY0WSSYvAUdtZ1kCu\nkMxjhvPb+LVaCkfOfXEuSqyjN55C1vDLpCV0xMb3irltYaWRIeHkqlRxRmoS+569\nZ/qg+JqZnCuEc6CeLLkzhVq+zagJkJs3evpSmofrY4qzJ1s1rygqSUhyS5NoyGAX\nCHba+m+7qMuSC3yOEPfiuAh9h6D/RltGi1iQ9Yqi4DoKlW9mfKGXbDn8thkGNdc7\n6yffilC8B/7Q8d5Btox/fE9yNI4YVhUEo+MkvUMnT1KS9fbw0o6fTjSa0D2oaHSO\nyBSs097rzC1PIw==\n-----END CERTIFICATE-----'); - }); - }); + expect(jwks.keys[0]).to.contain(JSON.parse(publicKey)) + }); - it('Clears the token when the header is edited and there ' + - 'is no private key', async function() { - await this.page.select('#algorithm-select', 'RS256'); + it('x5c', async function() { + //this.timeout(35000); - const secretInput = await this.page.$('textarea[name="private-key"]'); - await secretInput.click(); - await selectAll.call(this); - await this.page.keyboard.press('Delete'); + const key = await importPKCS8(defaultTokens.rs256.privateKey, 'RS256'); + const token = await new CompactSign(Buffer.from(JSON.stringify({ + sub: 'test' + }))).setProtectedHeader({ + alg: 'RS256', + typ: 'JWT', + x5c: jwks.keys[0].x5c + }).sign(key); - await this.page.click('.js-header'); - await selectAll.call(this); + await this.page.click('.js-input'); + await selectAll.call(this); + await this.page.keyboard.type(token); - const header = { - alg: 'RS256', - typ: 'JWT', - test: 'test' - }; - await this.page.keyboard.type(JSON.stringify(header, null, 2), { - delay: typingDelay - }); + await this.page.waitFor(2000); - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); + const publicKey = await this.page.$eval('textarea[name="public-key"]', + publicKeyElement => publicKeyElement.value); - const token = await this.page.evaluate(() => { - return window.test.tokenEditor.getValue(); - }); + expect(publicKey).to.include('-----BEGIN CERTIFICATE-----\nMIIDBjCCAe4CCQDOaPo3zzlhlzANBgkqhkiG9w0BAQsFADBFMQswCQYDVQQGEwJV\nUzETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0\ncyBQdHkgTHRkMB4XDTE5MDYwNTEwMDg0OVoXDTIwMDYwNDEwMDg0OVowRTELMAkG\nA1UEBhMCVVMxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoMGEludGVybmV0\nIFdpZGdpdHMgUHR5IEx0ZDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB\nAJ88orNWY3zQdGwYChTEr75E7cJbwbGiau0ucAPpM3lTlaVVsJFnVYWuLN/FzP6W\nv8q+O2r+/s91U5rw0cgB3Gk/dsIURBaS7/XI+ZU3iUom8q/zK5v2LYwmVVoGjmCI\ncK18Ci6j6/9dYp1rAJHyMrbx1k8WWBHFy4AFxblLmkt7hfYBIjUMMxk1Nb9BapKk\nwa+AfJ1txwjeO11LtLfGNHvpX+LODsUGsFg+/Sff+Xd0ctL21dwJtRbRiYibzsEb\nCH1QoQ6WErU3B0wjKrb1m1ei9dQVpKcxl0luB7+N6mvhkmDg9kFOvDG+faEpNjgf\ngbTi6SaH5mxhBoL5sMgiPTMCAwEAATANBgkqhkiG9w0BAQsFAAOCAQEAU4Nx25sl\niX8gD10Oik+RpBpHmsuZBU6q3nqYQKMlVdKFVeuptdqNjnVZY0WSSYvAUdtZ1kCu\nkMxjhvPb+LVaCkfOfXEuSqyjN55C1vDLpCV0xMb3irltYaWRIeHkqlRxRmoS+569\nZ/qg+JqZnCuEc6CeLLkzhVq+zagJkJs3evpSmofrY4qzJ1s1rygqSUhyS5NoyGAX\nCHba+m+7qMuSC3yOEPfiuAh9h6D/RltGi1iQ9Yqi4DoKlW9mfKGXbDn8thkGNdc7\n6yffilC8B/7Q8d5Btox/fE9yNI4YVhUEo+MkvUMnT1KS9fbw0o6fTjSa0D2oaHSO\nyBSs097rzC1PIw==\n-----END CERTIFICATE-----'); + }); + }); - expect(token).to.be.empty; - }); + it('Clears the token when the header is edited and there ' + + 'is no private key', async function() { + await this.page.select('#algorithm-select', 'RS256'); - it('Clears the token when the payload is edited and there ' + - 'is no private key', async function() { - await this.page.select('#algorithm-select', 'RS256'); + const secretInput = await this.page.$('textarea[name="private-key"]'); + await secretInput.click(); + await selectAll.call(this); + await this.page.keyboard.press('Delete'); - const secretInput = await this.page.$('textarea[name="private-key"]'); - await secretInput.click(); - await selectAll.call(this); - await this.page.keyboard.press('Delete'); + await this.page.click('.js-header'); + await selectAll.call(this); - await this.page.click('.js-payload'); - await selectAll.call(this); + const header = { + alg: 'RS256', + typ: 'JWT', + test: 'test' + }; + await this.page.keyboard.type(JSON.stringify(header, null, 2), { + delay: typingDelay + }); - const payload = { - sub: 'test' - }; - await this.page.keyboard.type(JSON.stringify(payload, null, 2), { - delay: typingDelay - }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); + const token = await this.page.evaluate(() => { + return window.test.tokenEditor.getValue(); + }); - const token = await this.page.evaluate(() => { - return window.test.tokenEditor.getValue(); - }); + expect(token).to.be.empty; + }); - expect(token).to.be.empty; - }); + it('Clears the token when the payload is edited and there ' + + 'is no private key', async function() { + await this.page.select('#algorithm-select', 'RS256'); - it('Marks token as invalid when there is no public key', async function() { - //this.timeout(20000); - await this.page.waitFor(tokenEditorThrottleWait); - await this.page.select('#algorithm-select', 'RS256'); + const secretInput = await this.page.$('textarea[name="private-key"]'); + await secretInput.click(); + await selectAll.call(this); + await this.page.keyboard.press('Delete'); - await this.page.click('.js-input'); - await selectAll.call(this); - await this.page.keyboard.type(defaultTokens['rs256'].token); + await this.page.click('.js-payload'); + await selectAll.call(this); - const secretInput = await this.page.$('textarea[name="public-key"]'); - await secretInput.click(); - await selectAll.call(this); - await secretInput.type(defaultTokens['rs256'].publicKey); + const payload = { + sub: 'test' + }; + await this.page.keyboard.type(JSON.stringify(payload, null, 2), { + delay: typingDelay + }); - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); - await this.page.waitFor(tokenEditorThrottleWait); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); - const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && - status.textContent.indexOf('verified') !== -1; - }); + const token = await this.page.evaluate(() => { + return window.test.tokenEditor.getValue(); + }); - expect(valid).to.be.true; + expect(token).to.be.empty; + }); - await secretInput.click(); - await selectAll.call(this); - await this.page.keyboard.press('Delete'); + it('Marks token as invalid when there is no public key', async function() { + //this.timeout(20000); + await this.page.waitFor(tokenEditorThrottleWait); + await this.page.select('#algorithm-select', 'RS256'); - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); - await this.page.waitFor(tokenEditorThrottleWait); + await this.page.click('.js-input'); + await selectAll.call(this); + await this.page.keyboard.type(defaultTokens['rs256'].token); - const invalid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('invalid-token') && - status.textContent.indexOf('invalid') !== -1; - }); + const secretInput = await this.page.$('textarea[name="public-key"]'); + await secretInput.click(); + await selectAll.call(this); + await secretInput.type(defaultTokens['rs256'].publicKey); - expect(invalid).to.be.true; - }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); - it('Marks token as invalid when the public key is wrong', async function() { - //this.timeout(20000); + const valid = await this.page.$eval('.validation-status', status => { + return status.classList.contains('valid-token') && + status.textContent.indexOf('verified') !== -1; + }); - await this.page.select('#algorithm-select', 'RS256'); + expect(valid).to.be.true; - await this.page.click('.js-input'); - await selectAll.call(this); - await this.page.keyboard.type(defaultTokens['rs256'].token); + await secretInput.click(); + await selectAll.call(this); + await this.page.keyboard.press('Delete'); - const secretInput = await this.page.$('textarea[name="public-key"]'); - await secretInput.click(); - await selectAll.call(this); - await secretInput.type(defaultTokens['rs256'].publicKey); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); - await this.page.waitFor(tokenEditorThrottleWait); + const invalid = await this.page.$eval('.validation-status', status => { + return status.classList.contains('invalid-token') && + status.textContent.indexOf('invalid') !== -1; + }); - const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && - status.textContent.indexOf('verified') !== -1; - }); + expect(invalid).to.be.true; + }); - expect(valid).to.be.true; + it('Marks token as invalid when the public key is wrong', async function() { + //this.timeout(20000); - await secretInput.click(); - await this.page.keyboard.type('sdfasdf389972389', { - delay: typingDelay - }); + await this.page.select('#algorithm-select', 'RS256'); - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); + await this.page.click('.js-input'); + await selectAll.call(this); + await this.page.keyboard.type(defaultTokens['rs256'].token); - const invalid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('invalid-token') && - status.textContent.indexOf('invalid') !== -1; - }); + const secretInput = await this.page.$('textarea[name="public-key"]'); + await secretInput.click(); + await selectAll.call(this); + await secretInput.type(defaultTokens['rs256'].publicKey); - expect(invalid).to.be.true; - }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); + await this.page.waitFor(tokenEditorThrottleWait); - it('Marks token as valid when the public key is OK and private ' + - 'key is wrong', async function() { - //this.timeout(30000); + const valid = await this.page.$eval('.validation-status', status => { + return status.classList.contains('valid-token') && + status.textContent.indexOf('verified') !== -1; + }); - await this.page.select('#algorithm-select', 'RS256'); + expect(valid).to.be.true; - const secretInput = await this.page.$('textarea[name="public-key"]'); - await secretInput.click(); - await selectAll.call(this); - await secretInput.type(defaultTokens['rs256'].publicKey, { - delay: typingDelay - }); + await secretInput.click(); + await this.page.keyboard.type('sdfasdf389972389', { + delay: typingDelay + }); - const privateKeyInput = await this.page.$('textarea[name="private-key"]'); - await privateKeyInput.click(); - await selectAll.call(this); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); - const head = defaultTokens['rs256'].privateKey.slice(0, 20); - const tail = defaultTokens['rs256'].privateKey.slice(20); + const invalid = await this.page.$eval('.validation-status', status => { + return status.classList.contains('invalid-token') && + status.textContent.indexOf('invalid') !== -1; + }); - await privateKeyInput.type(`${head}sadfasdf${tail}`, { - delay: typingDelay - }); + expect(invalid).to.be.true; + }); - await this.page.click('.js-input'); - await selectAll.call(this); - await this.page.keyboard.type(defaultTokens['rs256'].token, { - delay: typingDelay - }); + it('Marks token as valid when the public key is OK and private ' + + 'key is wrong', async function() { + //this.timeout(30000); - await this.page.waitFor(1000); + await this.page.select('#algorithm-select', 'RS256'); - const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && - status.textContent.indexOf('verified') !== -1; - }); + const secretInput = await this.page.$('textarea[name="public-key"]'); + await secretInput.click(); + await selectAll.call(this); + await secretInput.type(defaultTokens['rs256'].publicKey, { + delay: typingDelay + }); - expect(valid).to.be.true; - }); + const privateKeyInput = await this.page.$('textarea[name="private-key"]'); + await privateKeyInput.click(); + await selectAll.call(this); - it('Marks token as valid when the public key is OK and private ' + - 'key is missing', async function() { - //this.timeout(30000); + const head = defaultTokens['rs256'].privateKey.slice(0, 20); + const tail = defaultTokens['rs256'].privateKey.slice(20); - await this.page.select('#algorithm-select', 'RS256'); + await privateKeyInput.type(`${head}sadfasdf${tail}`, { + delay: typingDelay + }); - const secretInput = await this.page.$('textarea[name="public-key"]'); - await secretInput.click(); - await selectAll.call(this); - await secretInput.type(defaultTokens['rs256'].publicKey); + await this.page.click('.js-input'); + await selectAll.call(this); + await this.page.keyboard.type(defaultTokens['rs256'].token, { + delay: typingDelay + }); - const privateKeyInput = await this.page.$('textarea[name="private-key"]'); - await privateKeyInput.click(); - await selectAll.call(this); - await this.page.keyboard.press('Delete'); + await this.page.waitFor(1000); - await this.page.click('.js-input'); - await selectAll.call(this); - await this.page.keyboard.type(defaultTokens['rs256'].token); + const valid = await this.page.$eval('.validation-status', status => { + return status.classList.contains('valid-token') && + status.textContent.indexOf('verified') !== -1; + }); - await this.page.waitFor(1000); + expect(valid).to.be.true; + }); - const valid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('valid-token') && - status.textContent.indexOf('verified') !== -1; - }); + it('Marks token as valid when the public key is OK and private ' + + 'key is missing', async function() { + //this.timeout(30000); - expect(valid).to.be.true; - }); - }); + await this.page.select('#algorithm-select', 'RS256'); - it('Updates the header when the token algorithm ' + - 'is changed', async function() { - await this.page.select('#algorithm-select', 'HS256'); + const secretInput = await this.page.$('textarea[name="public-key"]'); + await secretInput.click(); + await selectAll.call(this); + await secretInput.type(defaultTokens['rs256'].publicKey); - await this.page.click('.js-input'); - await selectAll.call(this); - await this.page.keyboard.type(defaultTokens.hs256.token); + const privateKeyInput = await this.page.$('textarea[name="private-key"]'); + await privateKeyInput.click(); + await selectAll.call(this); + await this.page.keyboard.press('Delete'); - await this.page.select('#algorithm-select', 'HS384'); + await this.page.click('.js-input'); + await selectAll.call(this); + await this.page.keyboard.type(defaultTokens['rs256'].token); - const header = await this.page.evaluate(() => { - return JSON.parse(window.test.headerEditor.getValue()); - }); + await this.page.waitFor(1000); - expect(header.alg).to.equal('HS384'); - }); + const valid = await this.page.$eval('.validation-status', status => { + return status.classList.contains('valid-token') && + status.textContent.indexOf('verified') !== -1; + }); - it('Marks token as invalid when "alg" is "none"', async function() { - //this.timeout(20000); + expect(valid).to.be.true; + }); + }); - await this.page.click('.js-input'); - await selectAll.call(this); - await this.page.keyboard.type('eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.'); + it('Updates the header when the token algorithm ' + + 'is changed', async function() { + await this.page.select('#algorithm-select', 'HS256'); - // Wait for token processing. - await this.page.waitFor(tokenProcessingWait); + await this.page.click('.js-input'); + await selectAll.call(this); + await this.page.keyboard.type(defaultTokens.hs256.token); - const invalid = await this.page.$eval('.validation-status', status => { - return status.classList.contains('invalid-token') && - status.textContent.indexOf('invalid') !== -1; - }); + await this.page.select('#algorithm-select', 'HS384'); - expect(invalid).to.be.true; - }); + const header = await this.page.evaluate(() => { + return JSON.parse(window.test.headerEditor.getValue()); + }); - it('Does NOT save the last edited token', async function() { - await this.page.select('#algorithm-select', 'HS256'); + expect(header.alg).to.equal('HS384'); + }); - const secretInput = await this.page.$('input[name="secret"]'); - await secretInput.click(); - await selectAll.call(this); - await secretInput.type('secret-test', { - delay: typingDelay - }); + it('Marks token as invalid when "alg" is "none"', async function() { + //this.timeout(20000); - await this.page.click('.js-payload'); - await selectAll.call(this); + await this.page.click('.js-input'); + await selectAll.call(this); + await this.page.keyboard.type('eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.'); - const payload = { - sub: 'test' - }; - await this.page.keyboard.type(JSON.stringify(payload, null, 2), { - delay: typingDelay - }); + // Wait for token processing. + await this.page.waitFor(tokenProcessingWait); - await this.page.reload(); + const invalid = await this.page.$eval('.validation-status', status => { + return status.classList.contains('invalid-token') && + status.textContent.indexOf('invalid') !== -1; + }); - const storedPayload = await this.page.evaluate(() => { - return JSON.parse(window.test.payloadEditor.getValue()); + expect(invalid).to.be.true; }); - expect(storedPayload).to.not.deep.equal(payload); - }); + it('Does NOT save the last edited token', async function() { + await this.page.select('#algorithm-select', 'HS256'); - describe('JWT share button', function() { - it('Copies an HMAC token to the clipboard (no secret)', async function() { - await this.page.select('#algorithm-select', 'HS256'); - - const secretInput = await this.page.$('input[name="secret"]'); - await secretInput.click(); - await selectAll.call(this); - await secretInput.type('secret-test', { - delay: typingDelay - }); + const secretInput = await this.page.$('input[name="secret"]'); + await secretInput.click(); + await selectAll.call(this); + await secretInput.type('secret-test', { + delay: typingDelay + }); - await this.page.click('.js-payload'); - await selectAll.call(this); + await this.page.click('.js-payload'); + await selectAll.call(this); - const payload = { - sub: 'test' - }; - await this.page.keyboard.type(JSON.stringify(payload, null, 2), { - delay: typingDelay - }); + const payload = { + sub: 'test' + }; + await this.page.keyboard.type(JSON.stringify(payload, null, 2), { + delay: typingDelay + }); - await this.page.waitFor(tokenEditorThrottleWait); + await this.page.reload(); - const shareJwtButton = await this.page.$('.website-share button'); - await shareJwtButton.click(); + const storedPayload = await this.page.evaluate(() => { + return JSON.parse(window.test.payloadEditor.getValue()); + }); - const srcToken = await this.page.evaluate(() => - window.test.tokenEditor.getValue()); + expect(storedPayload).to.not.deep.equal(payload); + }); - // We cannot read the clipboard in headless Chrome, so we have a special - // harness in the code that stores this value. See: - // https://github.com/GoogleChrome/puppeteer/issues/2147 - const copiedUrl = await this.page.evaluate(() => - window.test.shareJwtCopiedUrl); + describe('JWT share button', function() { + it('Copies an HMAC token to the clipboard (no secret)', async function() { + await this.page.select('#algorithm-select', 'HS256'); - const newPage = await this.browser.newPage(); - await newPage.goto( - copiedUrl.replace('https://jwt.io/', 'http://localhost:8000/')); + const secretInput = await this.page.$('input[name="secret"]'); + await secretInput.click(); + await selectAll.call(this); + await secretInput.type('secret-test', { + delay: typingDelay + }); - const destToken = await newPage.evaluate(() => - window.test.tokenEditor.getValue()); - const destSecret = await newPage.$eval('input[name="secret"]', input => - input.value); + await this.page.click('.js-payload'); + await selectAll.call(this); - expect(srcToken).to.equal(destToken); - expect(destSecret).to.not.equal('secret-test'); - }); + const payload = { + sub: 'test' + }; + await this.page.keyboard.type(JSON.stringify(payload, null, 2), { + delay: typingDelay + }); - it('Copies an RSA token to the clipboard (with public-key)', - async function() { - //this.timeout(30000); + await this.page.waitFor(tokenEditorThrottleWait); - await this.page.select('#algorithm-select', 'RS256'); + const shareJwtButton = await this.page.$('.website-share button'); + await shareJwtButton.click(); - await this.page.click('.js-input'); - await selectAll.call(this); - await this.page.keyboard.type(defaultTokens['rs256'].token, { - delay: typingDelay - }); + const srcToken = await this.page.evaluate(() => + window.test.tokenEditor.getValue()); - const pubKeyInput = await this.page.$('textarea[name="public-key"]'); - await pubKeyInput.click(); - await selectAll.call(this); - await pubKeyInput.type(defaultTokens['rs256'].publicKey, { - delay: typingDelay - }); + // We cannot read the clipboard in headless Chrome, so we have a special + // harness in the code that stores this value. See: + // https://github.com/GoogleChrome/puppeteer/issues/2147 + const copiedUrl = await this.page.evaluate(() => + window.test.shareJwtCopiedUrl); - const privateKeyInput = - await this.page.$('textarea[name="private-key"]'); - await privateKeyInput.click(); - await selectAll.call(this); - await privateKeyInput.type(defaultTokens['rs256'].privateKey, { - delay: typingDelay - }); + const newPage = await this.browser.newPage(); + await newPage.goto( + copiedUrl.replace('https://jwt.io/', 'http://localhost:8000/')); - await this.page.click('.js-payload'); - await selectAll.call(this); + const destToken = await newPage.evaluate(() => + window.test.tokenEditor.getValue()); + const destSecret = await newPage.$eval('input[name="secret"]', input => + input.value); - const payload = { - sub: 'test' - }; - await this.page.keyboard.type(JSON.stringify(payload, null, 2), { - delay: typingDelay + expect(srcToken).to.equal(destToken); + expect(destSecret).to.not.equal('secret-test'); }); - await this.page.waitFor(tokenEditorThrottleWait); + it('Copies an RSA token to the clipboard (with public-key)', + async function() { + //this.timeout(30000); + + await this.page.select('#algorithm-select', 'RS256'); + + await this.page.click('.js-input'); + await selectAll.call(this); + await this.page.keyboard.type(defaultTokens['rs256'].token, { + delay: typingDelay + }); + + const pubKeyInput = await this.page.$('textarea[name="public-key"]'); + await pubKeyInput.click(); + await selectAll.call(this); + await pubKeyInput.type(defaultTokens['rs256'].publicKey, { + delay: typingDelay + }); + + const privateKeyInput = + await this.page.$('textarea[name="private-key"]'); + await privateKeyInput.click(); + await selectAll.call(this); + await privateKeyInput.type(defaultTokens['rs256'].privateKey, { + delay: typingDelay + }); + + await this.page.click('.js-payload'); + await selectAll.call(this); + + const payload = { + sub: 'test' + }; + await this.page.keyboard.type(JSON.stringify(payload, null, 2), { + delay: typingDelay + }); + + await this.page.waitFor(tokenEditorThrottleWait); + + const shareJwtButton = await this.page.$('.website-share button'); + await shareJwtButton.click(); + + const srcToken = await this.page.evaluate(() => + window.test.tokenEditor.getValue()); + + // We cannot read the clipboard in headless Chrome, so we have a + // special harness in the code that stores this value. See: + // https://github.com/GoogleChrome/puppeteer/issues/2147 + const copiedUrl = await this.page.evaluate(() => + window.test.shareJwtCopiedUrl); + + const newPage = await this.browser.newPage(); + await newPage.goto( + copiedUrl.replace('https://jwt.io/', 'http://localhost:8000/')); + + const destToken = await newPage.evaluate(() => + window.test.tokenEditor.getValue()); + const destPubKey = await newPage.$eval('textarea[name="public-key"]', + input => input.value); + + expect(srcToken).to.equal(destToken); + expect(destPubKey).to.equal(defaultTokens['rs256'].publicKey); + } + ); + }); - const shareJwtButton = await this.page.$('.website-share button'); - await shareJwtButton.click(); + describe('Parses tokens from window.location.href', () => { + const token = defaultTokens.hs384.token; - const srcToken = await this.page.evaluate(() => - window.test.tokenEditor.getValue()); + ['token', 'value', 'id_token', 'access_token'].forEach((key) => { - // We cannot read the clipboard in headless Chrome, so we have a - // special harness in the code that stores this value. See: - // https://github.com/GoogleChrome/puppeteer/issues/2147 - const copiedUrl = await this.page.evaluate(() => - window.test.shareJwtCopiedUrl); + [ + `/?${key}=${token}`, + `/#${key}=${token}`, + `/?foo=bar&${key}=${token}`, + `/#foo=bar&${key}=${token}` + ].forEach((searchStr, i) => { + //this.timeout(20000); - const newPage = await this.browser.newPage(); - await newPage.goto( - copiedUrl.replace('https://jwt.io/', 'http://localhost:8000/')); + it(`Should parse ${key} from window.location.href [${i}]`, + async function() { + const page = await this.browser.newPage(); - const destToken = await newPage.evaluate(() => - window.test.tokenEditor.getValue()); - const destPubKey = await newPage.$eval('textarea[name="public-key"]', - input => input.value); + await page.goto(`http://localhost:8000${searchStr}`); - expect(srcToken).to.equal(destToken); - expect(destPubKey).to.equal(defaultTokens['rs256'].publicKey); - } - ); - }); + expect(await page.evaluate(() => { + return window.test.tokenEditor.getValue(); + })).to.equal(token); - describe('Parses tokens from window.location.href', () => { - const token = defaultTokens.hs384.token; + await page.close(); + }); + }); - ['token', 'value', 'id_token', 'access_token'].forEach((key) => { + }); - [ - `/?${key}=${token}`, - `/#${key}=${token}`, - `/?foo=bar&${key}=${token}`, - `/#foo=bar&${key}=${token}` - ].forEach((searchStr, i) => { - //this.timeout(20000); + it('Parses shared token', async function() { + //this.timeout(20000); - it(`Should parse ${key} from window.location.href [${i}]`, - async function () { const page = await this.browser.newPage(); - await page.goto(`http://localhost:8000${searchStr}`); + await page.goto(`http://localhost:8000/#debugger-io?token=${token}`); expect(await page.evaluate(() => { - return window.test.tokenEditor.getValue(); + return window.test.tokenEditor.getValue(); })).to.equal(token); await page.close(); - }); - }); - - }); - - it('Parses shared token', async function() { - //this.timeout(20000); - - const page = await this.browser.newPage(); - - await page.goto(`http://localhost:8000/#debugger-io?token=${token}`); - - expect(await page.evaluate(() => { - return window.test.tokenEditor.getValue(); - })).to.equal(token); + }); - await page.close(); }); - - }); -}); +}); \ No newline at end of file From d61774cf3360f2a59b87f3c19214405760d275a9 Mon Sep 17 00:00:00 2001 From: Sambego Date: Wed, 29 Sep 2021 11:08:07 +0200 Subject: [PATCH 353/456] Fix scrollto editor --- test/functional/editor.js | 7 +++++++ views/website/navigation.pug | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/test/functional/editor.js b/test/functional/editor.js index 3ec17b94..3ea11623 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -30,6 +30,13 @@ describe('Editor', function() { after(utils.closeBrowser); + it('Displays editor when clicking on navbar', async function() { + await this.page.click('a[href="http://github.com/#debugger-io"]'); + // Wait for scroll + await this.page.waitFor(3000); + expect(await this.page.$eval('#debugger-io', isVisible)).to.be.true; + }); + it('HS256 should be selected by default', async function() { const selected = await this.page.$eval('#algorithm-select', select => { return select.options[select.selectedIndex].value; diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 792e906e..46f2cc01 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -9,7 +9,7 @@ nav.navbar.closed img(src='http://github.com/img/logo.svg' alt='JWT logo').logo nav.menu - a(href='http://github.com/') Debugger + a(href='http://github.com/#debugger-io').scrollto Debugger a(href='http://github.com/libraries') Libraries a(href='http://github.com/introduction') Introduction a(href='https://community.auth0.com/c/identity/jwt', target='_blank') Ask From 997e44121e56595af5217a32fed745e9facf09d4 Mon Sep 17 00:00:00 2001 From: Sambego Date: Wed, 29 Sep 2021 14:42:56 +0200 Subject: [PATCH 354/456] Fix libraries integration tests --- Gruntfile.js | 3 +- test/functional/libraries.js | 294 +++++++++++++++++------------------ 2 files changed, 147 insertions(+), 150 deletions(-) diff --git a/Gruntfile.js b/Gruntfile.js index 536d941f..c6d22bae 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -128,6 +128,7 @@ module.exports = (grunt) => { files: { "dist/website/index.html": "views/website/index.pug", "dist/website/introduction/index.html": "views/website/introduction.pug", + "dist/website/libraries/index.html": "views/website/libraries.pug", }, }, extension: { @@ -277,4 +278,4 @@ module.exports = (grunt) => { grunt.registerTask("test", ["unit-tests", "functional-tests"]); grunt.registerTask("default", ["build-dev", "connect:website", "watch"]); -}; +}; \ No newline at end of file diff --git a/test/functional/libraries.js b/test/functional/libraries.js index 2176c945..927ca748 100644 --- a/test/functional/libraries.js +++ b/test/functional/libraries.js @@ -12,165 +12,161 @@ chai.use(chaiAsPromised); chai.use(chaiArrays); const expect = chai.expect; -describe('Libraries', function() { - before(utils.launchBrowser); - - after(utils.closeBrowser); - - it('Displays libraries when clicking on navbar', async function() { - await this.page.click('a[href="#libraries-io"]'); - // Wait for scroll - await this.page.waitFor(3000); - expect(await this.page.$eval('#libraries-io', isVisible)).to.be.true; - }); - - it('Displays a sorted library filter', async function() { - const libraries = await this.page.$eval('#libraries-select', select => { - const result = []; - - Array.prototype.forEach.call(select.children, element => { - result.push(element.value); - }); - - return result; +describe.only('Libraries', function() { + before(utils.launchBrowser) + before(async function() { + await this.page.goto(`http://localhost:8000/libraries`); }); - expect(libraries).to.be.sorted; - }); + after(utils.closeBrowser); - it('Should all have a valid logo', async function() { - const imgs = await this.page.$$eval('.panel-heading img', imgs => { - return Array.prototype.map.call(imgs, img => img.src); - }); + it('Displays a sorted library filter', async function() { + const libraries = await this.page.$eval('#libraries-select', select => { + const result = []; - const uniqueImgs = new Set(imgs); - - const promises = []; - for(src of uniqueImgs) { - promises.push(request(src)); - } - - return expect(Promise.all(promises)).to.be.fulfilled; - }); - - it('Hides and displays libraries using filters', async function() { - await this.page.select('#libraries-select', '.php'); - // Wait for animation - await this.page.waitFor(2000); - - expect(await this.page.$eval('.php', isVisible)).to.be.true; - expect(await this.page.$eval('.net', isVisible)).to.be.false; - expect(await this.page.$eval('.python', isVisible)).to.be.false; - - await this.page.waitForSelector('.net', { - hidden: true - }); - await this.page.waitForSelector('.python', { - hidden: true - }); + Array.prototype.forEach.call(select.children, element => { + result.push(element.value); + }); - await this.page.select('#libraries-select', '*'); - // Wait for animation - await this.page.waitFor(2000); + return result; + }); - await this.page.waitForSelector('.net', { - visible: true + expect(libraries).to.be.sorted; }); - await this.page.waitForSelector('.php', { - visible: true - }); - await this.page.waitForSelector('.python', { - visible: true - }); - }); - - it('Shows a repo link for each library', async function() { - expect(await this.page.$$eval('.repository a', elements => { - return Array.prototype.every.call(elements, e => { - return !!e.href; - }); - })).to.be.true; - }); - - // skipped since we're pulling these on the server now - it.skip('Has a data-repo attribute for star counts if repo ' + - 'is in GitHub', async function() { - const repos = await this.page.$$eval('.panel-wrap', bodies => { - const result = []; - for(let i = 0; i < bodies.length; ++i) { - const spanStars = bodies[i].querySelector('span.stars'); - const repoUrl = bodies[i].querySelector('.repository a').href; - - if(repoUrl.indexOf('github') !== -1) { - result.push({ - url: repoUrl, - dataRepo: spanStars ? spanStars.getAttribute('data-repo') : null - }); + + it('Should all have a valid logo', async function() { + const imgs = await this.page.$$eval('.panel-heading img', imgs => { + return Array.prototype.map.call(imgs, img => img.src); + }); + + const uniqueImgs = new Set(imgs); + + const promises = []; + for (src of uniqueImgs) { + promises.push(request(src)); } - } - return result; + return expect(Promise.all(promises)).to.be.fulfilled; }); - for(const repo of repos) { - expect(repo.dataRepo, repo.url).to.exist.and.not.be.empty; - } - }); - - it('Displays libraries stacked on top of each other ' + - 'for small screens', async function() { - try { - await this.page.setViewport({ - width: 375, - height: 1080 - }); - - const libraries = await this.page.$$('article.accordion'); - - let last = await libraries[0].boundingBox(); - const result = await Promise.all(libraries.slice(1).map(async element => { - const box = await element.boundingBox(); - const result = box.x === last.x && box.y > last.y; - last = box; - return result; - })); - - expect(result.every(value => value)).to.be.true; - } finally { - await this.page.setViewport({ - width: 1920, - height: 1080 - }); - } - }); - - it('Sets the right classes when the vulnerability is and ' + - 'is not displayed ', async function() { - expect(await this.page.$$eval('.panel-wrap', elements => { - function getLibraryName(panelWrapElement) { - return panelWrapElement.parentNode - .querySelector('h3') - .firstChild - .textContent; - } - - const result = []; - - Array.prototype.forEach.call(elements, el => { - const versionPresent = !!el.querySelector('.version'); - const panelBodyElement = el.querySelector('.panel-body'); - const mversionPresent = panelBodyElement.classList.contains('mversion'); - - if((versionPresent && mversionPresent) || - (!versionPresent && !mversionPresent)) { - // All good - return; - } + it('Hides and displays libraries using filters', async function() { + await this.page.select('#libraries-select', '.php'); + // Wait for animation + await this.page.waitFor(2000); + + expect(await this.page.$eval('.php', isVisible)).to.be.true; + expect(await this.page.$eval('.net', isVisible)).to.be.false; + expect(await this.page.$eval('.python', isVisible)).to.be.false; + + await this.page.waitForSelector('.net', { + hidden: true + }); + await this.page.waitForSelector('.python', { + hidden: true + }); + + await this.page.select('#libraries-select', '*'); + // Wait for animation + await this.page.waitFor(2000); + + await this.page.waitForSelector('.net', { + visible: true + }); + await this.page.waitForSelector('.php', { + visible: true + }); + await this.page.waitForSelector('.python', { + visible: true + }); + }); - result.push(getLibraryName(el)); - }); + it('Shows a repo link for each library', async function() { + expect(await this.page.$$eval('.repository a', elements => { + return Array.prototype.every.call(elements, e => { + return !!e.href; + }); + })).to.be.true; + }); - return result; - })).to.be.empty; - }); -}); + // skipped since we're pulling these on the server now + it.skip('Has a data-repo attribute for star counts if repo ' + + 'is in GitHub', async function() { + const repos = await this.page.$$eval('.panel-wrap', bodies => { + const result = []; + for (let i = 0; i < bodies.length; ++i) { + const spanStars = bodies[i].querySelector('span.stars'); + const repoUrl = bodies[i].querySelector('.repository a').href; + + if (repoUrl.indexOf('github') !== -1) { + result.push({ + url: repoUrl, + dataRepo: spanStars ? spanStars.getAttribute('data-repo') : null + }); + } + } + + return result; + }); + + for (const repo of repos) { + expect(repo.dataRepo, repo.url).to.exist.and.not.be.empty; + } + }); + + it('Displays libraries stacked on top of each other ' + + 'for small screens', async function() { + try { + await this.page.setViewport({ + width: 375, + height: 1080 + }); + + const libraries = await this.page.$$('article.accordion'); + + let last = await libraries[0].boundingBox(); + const result = await Promise.all(libraries.slice(1).map(async element => { + const box = await element.boundingBox(); + const result = box.x === last.x && box.y > last.y; + last = box; + return result; + })); + + expect(result.every(value => value)).to.be.true; + } finally { + await this.page.setViewport({ + width: 1920, + height: 1080 + }); + } + }); + + it('Sets the right classes when the vulnerability is and ' + + 'is not displayed ', async function() { + expect(await this.page.$$eval('.panel-wrap', elements => { + function getLibraryName(panelWrapElement) { + return panelWrapElement.parentNode + .querySelector('h3') + .firstChild + .textContent; + } + + const result = []; + + Array.prototype.forEach.call(elements, el => { + const versionPresent = !!el.querySelector('.version'); + const panelBodyElement = el.querySelector('.panel-body'); + const mversionPresent = panelBodyElement.classList.contains('mversion'); + + if ((versionPresent && mversionPresent) || + (!versionPresent && !mversionPresent)) { + // All good + return; + } + + result.push(getLibraryName(el)); + }); + + return result; + })).to.be.empty; + }); +}); \ No newline at end of file From 9a88a2abe6630cc8c62931a95b7d924d7714bf16 Mon Sep 17 00:00:00 2001 From: Sambego Date: Wed, 29 Sep 2021 14:43:24 +0200 Subject: [PATCH 355/456] Remove stray "only" --- test/functional/libraries.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/functional/libraries.js b/test/functional/libraries.js index 927ca748..41117903 100644 --- a/test/functional/libraries.js +++ b/test/functional/libraries.js @@ -12,7 +12,7 @@ chai.use(chaiAsPromised); chai.use(chaiArrays); const expect = chai.expect; -describe.only('Libraries', function() { +describe('Libraries', function() { before(utils.launchBrowser) before(async function() { await this.page.goto(`http://localhost:8000/libraries`); From 48759f938fdad7533e8412851abac8cbaaaa554b Mon Sep 17 00:00:00 2001 From: Sam Bellen Date: Wed, 29 Sep 2021 19:09:56 +0200 Subject: [PATCH 356/456] Fix typo --- views/website/assets.pug | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/views/website/assets.pug b/views/website/assets.pug index a46f5134..4593a84a 100644 --- a/views/website/assets.pug +++ b/views/website/assets.pug @@ -5,7 +5,7 @@ section.sources .libraries-container h2 Looking for a JWT library? p Head on over to our libraries page to find a JWT library in your favorite language. - a(href="http://github.com/libraries").btn.btn-lg See al libraries + a(href="http://github.com/libraries").btn.btn-lg See all libraries .column.badges h2 Badges .hold @@ -37,4 +37,4 @@ section.sources .text-hold a(href='http://jwt.io/img/logo-asset.svg', target='_blank' title='Download JWT logo') i.icon-budicon-722 - p http://jwt.io/img/logo-asset.svg \ No newline at end of file + p http://jwt.io/img/logo-asset.svg From d881cc415e4a44c093e4325b00ab90a169562660 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Thu, 30 Sep 2021 12:40:52 +0200 Subject: [PATCH 357/456] feat: preselect a language on libraries page --- src/website/index.js | 12 ++++++---- src/website/libraries/libraries.js | 38 +++++++++++++++++++++++++++++- test/functional/libraries.js | 16 ++++++++++++- test/unit/libraries.js | 20 +++++++--------- 4 files changed, 68 insertions(+), 18 deletions(-) diff --git a/src/website/index.js b/src/website/index.js index 87762a3b..2b75d2f6 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -16,8 +16,10 @@ import queryString from "querystring"; /* For initialization, look at the end of this file */ function parseLocationQuery() { - const locSearch = queryString.parse(document.location.search.substr(1)); - const locHash = queryString.parse(document.location.hash.substr(1)); + const source = { + ...queryString.parse(document.location.search.substr(1)), + ...queryString.parse(document.location.hash.substr(1)) + } const keys = [ "id_token", @@ -27,11 +29,11 @@ function parseLocationQuery() { "debugger-io?token" ]; for (const key of keys) { - const token = locSearch[key] || locHash[key]; + const token = source[key]; if (token) { - if (locSearch.publicKey || locHash.publicKey) { - publicKeyTextArea.value = locSearch.publicKey || locHash.publicKey; + if (source.publicKey) { + publicKeyTextArea.value = source.publicKey; } setTokenEditorValue(token); diff --git a/src/website/libraries/libraries.js b/src/website/libraries/libraries.js index 205e63f6..a275cbc8 100644 --- a/src/website/libraries/libraries.js +++ b/src/website/libraries/libraries.js @@ -1,8 +1,10 @@ import { librariesElement, librariesSelect } from "./dom-elements.js"; +import queryString from "querystring"; import Isotope from "isotope-layout"; const librariesGrid = new Isotope(librariesElement, { + initLayout: false, layoutMode: "fitRows", itemSelector: "article", percentPosition: true, @@ -11,10 +13,44 @@ const librariesGrid = new Isotope(librariesElement, { }, }); +function setQueryStringParameter(name, value) { + if (value) { + const params = new URLSearchParams(window.location.search); + params.set(name, value); + window.history.replaceState({}, '', decodeURIComponent(`${window.location.pathname}?${params}`)); + } else { + window.history.replaceState({}, '', decodeURIComponent(window.location.pathname)); + } +} + export function setupLibraries() { librariesSelect.addEventListener("change", (event) => { librariesGrid.arrange({ filter: event.target.value, }); + if (event.target.value === '*') { + setQueryStringParameter('language', '') + } else { + setQueryStringParameter('language', document.querySelector(`#libraries-select > option[value="${event.target.value}"]`).innerHTML) + } }); -} \ No newline at end of file + + const { language: preselect } = { + ...queryString.parse(document.location.search.substr(1)), + ...queryString.parse(document.location.hash.substr(1)) + } + + let select; + + if (preselect) { + try { + select = document.querySelector(`#libraries-select > option[value=".${preselect}"]`) + || [...document.querySelectorAll('#libraries-select > option')].find((el) => preselect === el.innerHTML) + } catch (err) {} + } + + select || (select = document.querySelector('#libraries-select > option[value="*"]')) + + librariesGrid.arrange({ filter: select.value }); + select.selected = 'selected'; +} diff --git a/test/functional/libraries.js b/test/functional/libraries.js index 41117903..1f9931cc 100644 --- a/test/functional/libraries.js +++ b/test/functional/libraries.js @@ -169,4 +169,18 @@ describe('Libraries', function() { return result; })).to.be.empty; }); -}); \ No newline at end of file + + it('Can pre-select a language with a name', async function () { + await this.page.goto(`http://localhost:8000/libraries?language=Node.js`); + expect(await this.page.$eval('.net', isVisible)).to.be.false; + expect(await this.page.$eval('.php', isVisible)).to.be.false; + expect(await this.page.$eval('.node', isVisible)).to.be.true; + }); + + it('Can pre-select a language with a class', async function () { + await this.page.goto(`http://localhost:8000/libraries?language=node`); + expect(await this.page.$eval('.net', isVisible)).to.be.false; + expect(await this.page.$eval('.php', isVisible)).to.be.false; + expect(await this.page.$eval('.node', isVisible)).to.be.true; + }); +}); diff --git a/test/unit/libraries.js b/test/unit/libraries.js index ba8e809c..3efe9041 100644 --- a/test/unit/libraries.js +++ b/test/unit/libraries.js @@ -17,21 +17,19 @@ describe('Libraries', function() { it('Each language has a unique name', function() { const names = new Set(); - - for(const lang of languages) { - names.has(lang.name).should.be.false; - names.add(lang.name); - } + languages + .map(({ name }) => name) + .forEach(Set.prototype.add.bind(names)) + names.size.should.equal(languages.length); }); it('uniqueClass is unique for each language', function() { const classes = new Set(); - - for(const lang of languages) { - classes.has(lang.uniqueClass).should.be.false; - classes.add(lang.uniqueClass); - } - }); + languages + .map(({ uniqueClass }) => uniqueClass) + .forEach(Set.prototype.add.bind(classes)) + classes.size.should.equal(languages.length); + }); it('Have a correct schema', function() { for(const lang of languages) { From 6366c1436d08a128b09947dce845e4bd13d5e75d Mon Sep 17 00:00:00 2001 From: Sam Bellen Date: Thu, 30 Sep 2021 14:36:24 +0200 Subject: [PATCH 358/456] Update sitemap --- sitemap.xml | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/sitemap.xml b/sitemap.xml index c5993ed7..30f9e2db 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -2,12 +2,17 @@ https://jwt.io/ - 2020-07-02T07:37:12+00:00 + 2021-09-30T12:00:00+00:00 1.00 + + https://jwt.io/libraries/ + 2021-09-30T12:00:00+00:00 + 0.80 + https://jwt.io/introduction/ - 2020-07-02T07:37:12+00:00 + 2021-09-30T12:00:00+00:00 0.80 - \ No newline at end of file + From c23cb059b81bd106cfa95e40259b1dd7f93762b3 Mon Sep 17 00:00:00 2001 From: Otto Kruse Date: Fri, 8 Oct 2021 09:51:13 +0200 Subject: [PATCH 359/456] Add mention of NodeJS library aws-jwt-verify --- views/website/libraries/2-Node.js.json | 34 ++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/views/website/libraries/2-Node.js.json b/views/website/libraries/2-Node.js.json index fbbe4d26..64c3548a 100644 --- a/views/website/libraries/2-Node.js.json +++ b/views/website/libraries/2-Node.js.json @@ -70,6 +70,40 @@ "gitHubRepoPath": "panva/jose", "repoUrl": "https://github.com/panva/jose", "installCommandHtml": "npm install jose" + }, + { + "minimumVersion": null, + "support": { + "sign": false, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "typ": true, + "hs256": false, + "hs384": false, + "hs512": false, + "rs256": true, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false, + "eddsa": false, + "es256k": false + }, + "authorUrl": "https://github.com/orgs/awslabs", + "authorName": "AWS", + "gitHubRepoPath": "awslabs/aws-jwt-verify", + "repoUrl": "https://github.com/awslabs/aws-jwt-verify", + "installCommandHtml": "npm install aws-jwt-verify" } ] } From a87bc1f96c0ad95b52883cc764680a31acabe0f6 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Fri, 15 Oct 2021 09:31:08 +0200 Subject: [PATCH 360/456] bump jose --- package-lock.json | 14 +++++++------- package.json | 2 +- src/editor/jwt.js | 18 ++++++++---------- src/editor/public-key-download.js | 5 ++--- test/functional/editor.js | 15 +++++++-------- webpack.common.js | 12 +----------- webpack.website-unit-tests.js | 10 ---------- 7 files changed, 26 insertions(+), 50 deletions(-) diff --git a/package-lock.json b/package-lock.json index a74c023a..2a9e8b80 100644 --- a/package-lock.json +++ b/package-lock.json @@ -51,7 +51,7 @@ "highlight.js": "^10.4.1", "inject-loader": "^3.0.1", "isotope-layout": "^3.0.6", - "jose": "^3.19.0", + "jose": "^4.0.2", "jquery": "^3.4.1", "lodash": "^4.17.13", "loglevel": "^1.6.2", @@ -8690,9 +8690,9 @@ "dev": true }, "node_modules/jose": { - "version": "3.19.0", - "resolved": "https://registry.npmjs.org/jose/-/jose-3.19.0.tgz", - "integrity": "sha512-G5imz/7oSe8Ohg4EMEhGhMhN+yzACMw7NC7ZrEYSoJekQXHPf+TPQNc/XJkYRm6TFWIbf3HA4OHZhdRv8KsskA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/jose/-/jose-4.0.2.tgz", + "integrity": "sha512-H/JNQr4WFijHfHo8UsXwXKl20MJVD30noaWRF/R4p4kQtoldMRCmg8DY3x48FeMUGWRLwJ4eXg6mazKlQlCmdA==", "dev": true, "funding": { "url": "https://github.com/sponsors/panva" @@ -23939,9 +23939,9 @@ "dev": true }, "jose": { - "version": "3.19.0", - "resolved": "https://registry.npmjs.org/jose/-/jose-3.19.0.tgz", - "integrity": "sha512-G5imz/7oSe8Ohg4EMEhGhMhN+yzACMw7NC7ZrEYSoJekQXHPf+TPQNc/XJkYRm6TFWIbf3HA4OHZhdRv8KsskA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/jose/-/jose-4.0.2.tgz", + "integrity": "sha512-H/JNQr4WFijHfHo8UsXwXKl20MJVD30noaWRF/R4p4kQtoldMRCmg8DY3x48FeMUGWRLwJ4eXg6mazKlQlCmdA==", "dev": true }, "jquery": { diff --git a/package.json b/package.json index a5d531a1..dc8723e3 100644 --- a/package.json +++ b/package.json @@ -49,7 +49,7 @@ "highlight.js": "^10.4.1", "inject-loader": "^3.0.1", "isotope-layout": "^3.0.6", - "jose": "^3.19.0", + "jose": "^4.0.2", "jquery": "^3.4.1", "lodash": "^4.17.13", "loglevel": "^1.6.2", diff --git a/src/editor/jwt.js b/src/editor/jwt.js index 83f4bb15..884e7c3a 100644 --- a/src/editor/jwt.js +++ b/src/editor/jwt.js @@ -2,9 +2,7 @@ import b64u from 'base64url'; import any from 'promise.any'; import strings from '../strings'; import log from 'loglevel'; -import * as keyImport from 'jose/key/import' -import CompactSign from 'jose/jws/compact/sign' -import compactVerify from 'jose/jws/compact/verify' +import * as jose from 'jose' import { pki } from 'node-forge'; function symmetricSecret(key, alg, base64Secret) { @@ -37,10 +35,10 @@ function getJoseKey(header, key, base64Secret, type) { key = pki.privateKeyInfoToPem(pki.wrapRsaPrivateKey(pki.privateKeyToAsn1(pki.privateKeyFromPem(key)))) } return any([ - keyImport.importPKCS8(key, header.alg), + jose.importPKCS8(key, header.alg), Promise.resolve().then(() => JSON.parse(key)).then(rawPrivate).then((jwk) => { if (!('d' in jwk)) throw new Error('not a private JWK') - return keyImport.importJWK(jwk, header.alg) + return jose.importJWK(jwk, header.alg) }) ]) case types.PUBLIC: @@ -48,10 +46,10 @@ function getJoseKey(header, key, base64Secret, type) { key = pki.publicKeyToPem(pki.publicKeyFromPem(key)) } return any([ - keyImport.importSPKI(key, header.alg), - keyImport.importX509(key, header.alg), + jose.importSPKI(key, header.alg), + jose.importX509(key, header.alg), Promise.resolve().then(() => JSON.parse(key)).then(rawPublic).then((jwk) => { - return keyImport.importJWK(jwk, header.alg) + return jose.importJWK(jwk, header.alg) }) ]) default: @@ -73,7 +71,7 @@ export function sign(header, payload = JSON.stringify(payload); } - return new CompactSign(new TextEncoder().encode(payload)) + return new jose.CompactSign(new TextEncoder().encode(payload)) .setProtectedHeader(header) .sign(key); } @@ -93,7 +91,7 @@ export function verify(jwt, secretOrPublicKeyString, base64Secret = false) { return getJoseKey(decoded.header, secretOrPublicKeyString, base64Secret, types.PUBLIC).then( key => { - return compactVerify(jwt, key) + return jose.compactVerify(jwt, key) .then(() => ({ validSignature: true, validBase64: jwt.split('.').reduce((valid, s) => valid = valid && isValidBase64String(s), true) diff --git a/src/editor/public-key-download.js b/src/editor/public-key-download.js index a43bd581..9cf8b549 100644 --- a/src/editor/public-key-download.js +++ b/src/editor/public-key-download.js @@ -1,5 +1,4 @@ -import { createRemoteJWKSet } from 'jose/jwks/remote' -import * as keyExport from 'jose/key/export' +import * as jose from 'jose' import { httpGet } from '../utils.js'; @@ -25,7 +24,7 @@ function getKeyFromX5Claims(claims) { } function getKeyFromJwkKeySetUrl(header, url) { - return createRemoteJWKSet(new URL(url))(header, {}).then(keyExport.exportJWK).then((jwk) => JSON.stringify(jwk, null, 2)) + return jose.createRemoteJWKSet(new URL(url))(header, {}).then(jose.exportJWK).then((jwk) => JSON.stringify(jwk, null, 2)) } export function downloadPublicKeyIfPossible(decodedToken) { diff --git a/test/functional/editor.js b/test/functional/editor.js index 3ea11623..c8cca45c 100644 --- a/test/functional/editor.js +++ b/test/functional/editor.js @@ -3,8 +3,7 @@ const chaiAsPromised = require('chai-as-promised'); const chaiArrays = require('chai-arrays'); const express = require('express'); -const { importPKCS8 } = require('jose/key/import') -const { CompactSign } = require('jose/jws/compact/sign') +const jose = require('jose'); const _ = require('lodash'); @@ -558,8 +557,8 @@ describe('Editor', function() { }); it('iss URL + .well-known', async function() { - const key = await importPKCS8(defaultTokens.rs256.privateKey, 'RS256'); - const token = await new CompactSign(Buffer.from(JSON.stringify({ + const key = await jose.importPKCS8(defaultTokens.rs256.privateKey, 'RS256'); + const token = await new jose.CompactSign(Buffer.from(JSON.stringify({ sub: 'test', iss: 'http://localhost:3000/' }))).setProtectedHeader({ @@ -584,8 +583,8 @@ describe('Editor', function() { it('jku', async function() { //this.timeout(20000); - const key = await importPKCS8(defaultTokens.rs256.privateKey, 'RS256'); - const token = await new CompactSign(Buffer.from(JSON.stringify({ + const key = await jose.importPKCS8(defaultTokens.rs256.privateKey, 'RS256'); + const token = await new jose.CompactSign(Buffer.from(JSON.stringify({ sub: 'test' }))).setProtectedHeader({ alg: 'RS256', @@ -610,8 +609,8 @@ describe('Editor', function() { it('x5c', async function() { //this.timeout(35000); - const key = await importPKCS8(defaultTokens.rs256.privateKey, 'RS256'); - const token = await new CompactSign(Buffer.from(JSON.stringify({ + const key = await jose.importPKCS8(defaultTokens.rs256.privateKey, 'RS256'); + const token = await new jose.CompactSign(Buffer.from(JSON.stringify({ sub: 'test' }))).setProtectedHeader({ alg: 'RS256', diff --git a/webpack.common.js b/webpack.common.js index f837d22b..d6351ea0 100644 --- a/webpack.common.js +++ b/webpack.common.js @@ -32,15 +32,5 @@ module.exports = { $: "jquery", jQuery: "jquery", }), - ], - resolve: { - alias: { - 'jose/key/import': 'jose/dist/browser/key/import', - 'jose/key/export': 'jose/dist/browser/key/export', - 'jose/jws/compact/sign': 'jose/dist/browser/jws/compact/sign', - 'jose/jws/compact/verify': 'jose/dist/browser/jws/compact/verify', - 'jose/jwks/remote': 'jose/dist/browser/jwks/remote', - 'jose/jwk/embedded': 'jose/dist/browser/jwk/embedded', - } - } + ] }; diff --git a/webpack.website-unit-tests.js b/webpack.website-unit-tests.js index 55d54796..91ac6e30 100644 --- a/webpack.website-unit-tests.js +++ b/webpack.website-unit-tests.js @@ -41,15 +41,5 @@ module.exports = merge(common, { } } }] - }, - resolve: { - alias: { - 'jose/key/import': 'jose/dist/node/cjs/key/import', - 'jose/key/export': 'jose/dist/node/cjs/key/export', - 'jose/jws/compact/sign': 'jose/dist/node/cjs/jws/compact/sign', - 'jose/jws/compact/verify': 'jose/dist/node/cjs/jws/compact/verify', - 'jose/jwks/remote': 'jose/dist/node/cjs/jwks/remote', - 'jose/jwk/embedded': 'jose/dist/node/cjs/jwk/embedded', - } } }); From 2cd745cf4ebc4bd08fd71add2c383cf41c1b0009 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Mon, 18 Oct 2021 10:29:31 +0200 Subject: [PATCH 361/456] chore: bump jose to v4.0.3 --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 2a9e8b80..9687045c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -51,7 +51,7 @@ "highlight.js": "^10.4.1", "inject-loader": "^3.0.1", "isotope-layout": "^3.0.6", - "jose": "^4.0.2", + "jose": "^4.0.3", "jquery": "^3.4.1", "lodash": "^4.17.13", "loglevel": "^1.6.2", @@ -8690,9 +8690,9 @@ "dev": true }, "node_modules/jose": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/jose/-/jose-4.0.2.tgz", - "integrity": "sha512-H/JNQr4WFijHfHo8UsXwXKl20MJVD30noaWRF/R4p4kQtoldMRCmg8DY3x48FeMUGWRLwJ4eXg6mazKlQlCmdA==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/jose/-/jose-4.0.3.tgz", + "integrity": "sha512-g/4UdY9yZai+XMwBgqSHLTNE5vwKDqqdoM46C3kx7kLGr95Dwnv5/0pfDozrqrESDZrSpU11VkF0ZqnR3xq4NA==", "dev": true, "funding": { "url": "https://github.com/sponsors/panva" @@ -23939,9 +23939,9 @@ "dev": true }, "jose": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/jose/-/jose-4.0.2.tgz", - "integrity": "sha512-H/JNQr4WFijHfHo8UsXwXKl20MJVD30noaWRF/R4p4kQtoldMRCmg8DY3x48FeMUGWRLwJ4eXg6mazKlQlCmdA==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/jose/-/jose-4.0.3.tgz", + "integrity": "sha512-g/4UdY9yZai+XMwBgqSHLTNE5vwKDqqdoM46C3kx7kLGr95Dwnv5/0pfDozrqrESDZrSpU11VkF0ZqnR3xq4NA==", "dev": true }, "jquery": { diff --git a/package.json b/package.json index dc8723e3..956cd88f 100644 --- a/package.json +++ b/package.json @@ -49,7 +49,7 @@ "highlight.js": "^10.4.1", "inject-loader": "^3.0.1", "isotope-layout": "^3.0.6", - "jose": "^4.0.2", + "jose": "^4.0.3", "jquery": "^3.4.1", "lodash": "^4.17.13", "loglevel": "^1.6.2", From b2406d4a918d13b7361ea89517e668e48f3dd16a Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Mon, 18 Oct 2021 11:55:15 +0200 Subject: [PATCH 362/456] fix: validate signatures regardless of JWT payloads --- src/editor/jwt.js | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/editor/jwt.js b/src/editor/jwt.js index 884e7c3a..c1937b4a 100644 --- a/src/editor/jwt.js +++ b/src/editor/jwt.js @@ -138,19 +138,15 @@ export function decode(jwt) { if (!isValidBase64String(split[1])) { result.warnings.push(strings.warnings.payloadBase64Invalid); } - result.payload = JSON.parse(b64u.decode(split[1])); - } catch (e) { - result.errors = true; - } + result.payload = b64u.decode(split[1]); + } catch (e) {} try { if (!isValidJSON(b64u.decode(split[1]))) { result.warnings.push(strings.warnings.payloadInvalidJSON); - result.payload = b64u.decode(split[1]) } - } catch (e) { - result.errors = true; - } + result.payload = JSON.parse(b64u.decode(split[1])) + } catch (e) {} return result; } From 24ec1be2e300a7563ed2d2e178ffb2e7d9e1b5d7 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Mon, 18 Oct 2021 12:15:30 +0200 Subject: [PATCH 363/456] fix: remove kid from default tokens --- src/editor/default-tokens.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/editor/default-tokens.js b/src/editor/default-tokens.js index 88a6d862..c2cc8e7c 100644 --- a/src/editor/default-tokens.js +++ b/src/editor/default-tokens.js @@ -158,13 +158,13 @@ export default { publicKey: ecPublicKey256 }, es384: { - token: 'eyJhbGciOiJFUzM4NCIsInR5cCI6IkpXVCIsImtpZCI6ImlUcVhYSTB6YkFuSkNLRGFvYmZoa00xZi02ck1TcFRmeVpNUnBfMnRLSTgifQ.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.cJOP_w-hBqnyTsBm3T6lOE5WpcHaAkLuQGAs1QO-lg2eWs8yyGW8p9WagGjxgvx7h9X72H7pXmXqej3GdlVbFmhuzj45A9SXDOAHZ7bJXwM1VidcPi7ZcrsMSCtP1hiN', + token: 'eyJhbGciOiJFUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.VUPWQZuClnkFbaEKCsPy7CZVMh5wxbCSpaAWFLpnTe9J0--PzHNeTFNXCrVHysAa3eFbuzD8_bLSsgTKC8SzHxRVSj5eN86vBPo_1fNfE7SHTYhWowjY4E_wuiC13yoj', privateKey: ecPrivateKey384, jwk: ecJwk384, publicKey: ecPublicKey384 }, es512: { - token: 'eyJhbGciOiJFUzUxMiIsInR5cCI6IkpXVCIsImtpZCI6InhaRGZacHJ5NFA5dlpQWnlHMmZOQlJqLTdMejVvbVZkbTd0SG9DZ1NOZlkifQ.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.AP_CIMClixc5-BFflmjyh_bRrkloEvwzn8IaWJFfMz13X76PGWF0XFuhjJUjp7EYnSAgtjJ-7iJG4IP7w3zGTBk_AUdmvRCiWp5YAe8S_Hcs8e3gkeYoOxiXFZlSSAx0GfwW1cZ0r67mwGtso1I3VXGkSjH5J0Rk6809bn25GoGRjOPu', + token: 'eyJhbGciOiJFUzUxMiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.AbVUinMiT3J_03je8WTOIl-VdggzvoFgnOsdouAs-DLOtQzau9valrq-S6pETyi9Q18HH-EuwX49Q7m3KC0GuNBJAc9Tksulgsdq8GqwIqZqDKmG7hNmDzaQG1Dpdezn2qzv-otf3ZZe-qNOXUMRImGekfQFIuH_MjD2e8RZyww6lbZk', privateKey: ecPrivateKey521, jwk: ecJwk521, publicKey: ecPublicKey521 From 089ae8d14737c598e07cc1bcac600663246cc2cd Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Mon, 18 Oct 2021 14:19:59 +0200 Subject: [PATCH 364/456] chore: bump jose to v4.1.0 --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 9687045c..e94a2397 100644 --- a/package-lock.json +++ b/package-lock.json @@ -51,7 +51,7 @@ "highlight.js": "^10.4.1", "inject-loader": "^3.0.1", "isotope-layout": "^3.0.6", - "jose": "^4.0.3", + "jose": "^4.1.0", "jquery": "^3.4.1", "lodash": "^4.17.13", "loglevel": "^1.6.2", @@ -8690,9 +8690,9 @@ "dev": true }, "node_modules/jose": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/jose/-/jose-4.0.3.tgz", - "integrity": "sha512-g/4UdY9yZai+XMwBgqSHLTNE5vwKDqqdoM46C3kx7kLGr95Dwnv5/0pfDozrqrESDZrSpU11VkF0ZqnR3xq4NA==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/jose/-/jose-4.1.0.tgz", + "integrity": "sha512-Hqx2vuNlo5sDe+ZWvOXAExWXk31mXgxMuUkUjEIeGNU4KFPZHO8hOnljhb25eoK4g+fth+7tU+k+AA+p/eZtYw==", "dev": true, "funding": { "url": "https://github.com/sponsors/panva" @@ -23939,9 +23939,9 @@ "dev": true }, "jose": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/jose/-/jose-4.0.3.tgz", - "integrity": "sha512-g/4UdY9yZai+XMwBgqSHLTNE5vwKDqqdoM46C3kx7kLGr95Dwnv5/0pfDozrqrESDZrSpU11VkF0ZqnR3xq4NA==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/jose/-/jose-4.1.0.tgz", + "integrity": "sha512-Hqx2vuNlo5sDe+ZWvOXAExWXk31mXgxMuUkUjEIeGNU4KFPZHO8hOnljhb25eoK4g+fth+7tU+k+AA+p/eZtYw==", "dev": true }, "jquery": { diff --git a/package.json b/package.json index 956cd88f..a848a316 100644 --- a/package.json +++ b/package.json @@ -49,7 +49,7 @@ "highlight.js": "^10.4.1", "inject-loader": "^3.0.1", "isotope-layout": "^3.0.6", - "jose": "^4.0.3", + "jose": "^4.1.0", "jquery": "^3.4.1", "lodash": "^4.17.13", "loglevel": "^1.6.2", From 83cc93ccf9da3cc48fcdd120e66982af770c612d Mon Sep 17 00:00:00 2001 From: Sambego Date: Mon, 8 Nov 2021 10:16:09 +0100 Subject: [PATCH 365/456] Replace TrustArc cookie consent with OneTrust --- server.js | 10 +++++-- src/cookie-consent.js | 65 ++++++++++++++++++++++++++++++++++++++++ views/website/layout.pug | 19 ++---------- webpack.website-dev.js | 3 +- 4 files changed, 77 insertions(+), 20 deletions(-) create mode 100644 src/cookie-consent.js diff --git a/server.js b/server.js index 92c4ae77..8f4148fc 100644 --- a/server.js +++ b/server.js @@ -1,6 +1,7 @@ const express = require("express"); const enforce = require("express-sslify"); const languages = require("./libraries.json"); +const dotenv = require("dotenv").config(); const app = express(); @@ -17,7 +18,10 @@ if (process.env.NODE_ENV === "production") { ); } -// app.use(fetchGithubStars); +app.use((req, res, next) => { + res.locals.COOKIE_CONSENT_DOMAIN_ID = process.env.COOKIE_CONSENT_DOMAIN_ID; + next(); +}); app.use(express.static("dist/website")); app.get("/", function(req, res) { res.render("index"); @@ -28,7 +32,9 @@ app.get("/introduction", function(req, res) { }); app.get("/libraries", function(req, res) { - res.render("libraries", { languages: languages }); + res.render("libraries", { + languages: languages + }); }); // Fallback for the homepage JWT handbook CTA A/B experiment we ran diff --git a/src/cookie-consent.js b/src/cookie-consent.js new file mode 100644 index 00000000..32fdb795 --- /dev/null +++ b/src/cookie-consent.js @@ -0,0 +1,65 @@ +const COOKIE_CONSENT_NECESSARY = 1; +const COOKIE_CONSENT_PERFORMANCE = 2; +const COOKIE_CONSENT_FUNCTIONAL = 3; +const COOKIE_CONSENT_ADVERTISING = 4; + +function addScripts(lvl) { + //Reject all + if (!lvl) { + return; + } + + // Necessary + if (lvl.includes(COOKIE_CONSENT_NECESSARY)) { + // GTM + (function(w, d, s, l, i) { + w[l] = w[l] || []; + w[l].push({ + 'gtm.start': new Date().getTime(), + event: 'gtm.js' + }); + var f = d.getElementsByTagName(s)[0], + j = d.createElement(s), + dl = l != 'dataLayer' ? '&l=' + l : ''; + j.async = true; + j.src = + '//www.googletagmanager.com/gtm.js?id=' + i + dl; + f.parentNode.insertBefore(j, f); + })(window, document, 'script', 'dataLayer', 'GTM-W7FRLJ'); + } + + // Functional + if (lvl.includes(COOKIE_CONSENT_FUNCTIONAL)) { + (function(d, s, id) { + var js, fjs = d.getElementsByTagName(s)[0], + p = /^http:/.test(d.location) ? 'http' : 'https'; + if (!d.getElementById(id)) { + js = d.createElement(s); + js.id = id; + js.src = p + '://platform.twitter.com/widgets.js'; + fjs.parentNode.insertBefore(js, fjs); + } + })(document, 'script', 'twitter-wjs'); + } +} + +// Add required scripts without waiting for the user consent +addScripts(window.OnetrustActiveGroups); + +// Poll for the consent being onscreen. +const POLL_MAX = 10; +const POLL_INTERVAL = 200; +let tries = 0; +const poll = window.setInterval(() => { + if (tries >= POLL_MAX) { + addScripts(window.OnetrustActiveGroups) + return window.clearInterval(poll); + } + + if (document.getElementById("onetrust-accept-btn-handler")) { + window.OneTrust.OnConsentChanged(() => addScripts(window.OnetrustActiveGroups)); + return window.clearInterval(poll); + } else { + tries++; + } +}, POLL_INTERVAL); \ No newline at end of file diff --git a/views/website/layout.pug b/views/website/layout.pug index d3bafa9e..9dce2aca 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -38,20 +38,10 @@ html(lang='en') // Chrome extension link, required for inline installs link(rel="chrome-webstore-item", href="https://chrome.google.com/webstore/detail/ppmmlchacdbknfphdeafcbmklcghghmd") - // Google Tag Manager - script. - (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': - new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], - j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= - '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); - })(window,document,'script','dataLayer','GTM-W7FRLJ'); - // End Google Tag Manager - body // Google Tag Manager (noscript) noscript iframe(src='https://www.googletagmanager.com/ns.html?id=GTM-W7FRLJ', height='0', width='0', style='display:none;visibility:hidden') - // End Google Tag Manager (noscript) include ./navigation.pug @@ -72,11 +62,6 @@ html(lang='en') .column.social-counter a.twitter-follow-button(href='https://twitter.com/auth0', data-show-count='true') Follow @auth0 - script. - !function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs'); - if process.env.NODE_ENV === "production" - div - div(id="consent_blackbar") - div(id="teconsent" style="position: absolute; bottom: -100px;") - script(async="async" src="http://consent.trustarc.com/notice?domain=auth0banner.com&c=teconsent&js=nj¬iceType=bb&text=true" crossOrigin) + script(src="https://cdn.cookielaw.org/scripttemplates/otSDKStub.js", type="text/javascript", charset="UTF-8", data-domain-script=COOKIE_CONSENT_DOMAIN_ID, id="consent-script") + script(src="http://github.com/js/cookie-consent.js") \ No newline at end of file diff --git a/webpack.website-dev.js b/webpack.website-dev.js index 39b34901..89c49372 100644 --- a/webpack.website-dev.js +++ b/webpack.website-dev.js @@ -8,7 +8,8 @@ module.exports = merge(common, { entry: { index: './src/website/index.js', introduction: './src/website/introduction/index.js', - libraries: './src/website/libraries/index.js' + libraries: './src/website/libraries/index.js', + "cookie-consent": './src/cookie-consent.js' }, output: { filename: '[name].js', From 3330c35d9ca9c082c84de7e3ff20866e2cf29807 Mon Sep 17 00:00:00 2001 From: nefilim Date: Tue, 16 Nov 2021 14:35:14 -0700 Subject: [PATCH 366/456] add nefilim/kjwt --- views/website/libraries/29-Kotlin.json | 32 ++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/views/website/libraries/29-Kotlin.json b/views/website/libraries/29-Kotlin.json index 5c708451..eaca02c9 100644 --- a/views/website/libraries/29-Kotlin.json +++ b/views/website/libraries/29-Kotlin.json @@ -34,6 +34,38 @@ "gitHubRepoPath": "PhilJay/JWT", "repoUrl": "https://github.com/PhilJay/JWT", "installCommandHtml": "maven: com.github.PhilJay / JWT / 1.1.5" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": false, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es256k": true, + "es384": true, + "es512": true, + "ps256": false, + "ps384": false, + "ps512": false + }, + "authorUrl": "https://github.com/nefilim", + "authorName": "nefilim", + "gitHubRepoPath": "nefilim/kJWT", + "repoUrl": "https://github.com/nefilim/kJWT", + "installCommandHtml": "maven: com.github.nefilim / kJWT / 0.1.5" } ] } From 80b3b4153846f66504b57b220d5cfb9a8771467e Mon Sep 17 00:00:00 2001 From: nefilim Date: Tue, 16 Nov 2021 14:40:29 -0700 Subject: [PATCH 367/456] update min version --- views/website/libraries/29-Kotlin.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/29-Kotlin.json b/views/website/libraries/29-Kotlin.json index eaca02c9..429566e6 100644 --- a/views/website/libraries/29-Kotlin.json +++ b/views/website/libraries/29-Kotlin.json @@ -36,7 +36,7 @@ "installCommandHtml": "maven: com.github.PhilJay / JWT / 1.1.5" }, { - "minimumVersion": null, + "minimumVersion": "0.1.5", "support": { "sign": true, "verify": true, From 7e8721bd6da089786c2d108e06e2ecd553e376f2 Mon Sep 17 00:00:00 2001 From: Peter vR Date: Thu, 2 Dec 2021 08:21:57 -0700 Subject: [PATCH 368/456] Update 29-Kotlin.json --- views/website/libraries/29-Kotlin.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/views/website/libraries/29-Kotlin.json b/views/website/libraries/29-Kotlin.json index 429566e6..a88b255c 100644 --- a/views/website/libraries/29-Kotlin.json +++ b/views/website/libraries/29-Kotlin.json @@ -36,7 +36,7 @@ "installCommandHtml": "maven: com.github.PhilJay / JWT / 1.1.5" }, { - "minimumVersion": "0.1.5", + "minimumVersion": "0.2.0", "support": { "sign": true, "verify": true, @@ -65,7 +65,7 @@ "authorName": "nefilim", "gitHubRepoPath": "nefilim/kJWT", "repoUrl": "https://github.com/nefilim/kJWT", - "installCommandHtml": "maven: com.github.nefilim / kJWT / 0.1.5" + "installCommandHtml": "maven GAV: com.github.nefilim:kjwt-core:0.2.0" } ] } From 33185336b40353c177be8ceb41201d5cc36d8708 Mon Sep 17 00:00:00 2001 From: Peter vR Date: Thu, 2 Dec 2021 08:32:00 -0700 Subject: [PATCH 369/456] fix maven GAV --- views/website/libraries/29-Kotlin.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/views/website/libraries/29-Kotlin.json b/views/website/libraries/29-Kotlin.json index a88b255c..aa3e661b 100644 --- a/views/website/libraries/29-Kotlin.json +++ b/views/website/libraries/29-Kotlin.json @@ -45,7 +45,7 @@ "aud": true, "exp": true, "nbf": true, - "iat": false, + "iat": true, "jti": false, "hs256": true, "hs384": true, @@ -65,7 +65,7 @@ "authorName": "nefilim", "gitHubRepoPath": "nefilim/kJWT", "repoUrl": "https://github.com/nefilim/kJWT", - "installCommandHtml": "maven GAV: com.github.nefilim:kjwt-core:0.2.0" + "installCommandHtml": "maven GAV: io.github.nefilim.kjwt:kjwt-core:0.2.0" } ] } From 153a8c43bbc3023843a4ca29ff2c2488e77dac7a Mon Sep 17 00:00:00 2001 From: nefilim Date: Sat, 4 Dec 2021 13:01:39 -0700 Subject: [PATCH 370/456] redact minimum version, never supported none algorithm --- views/website/libraries/29-Kotlin.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/views/website/libraries/29-Kotlin.json b/views/website/libraries/29-Kotlin.json index aa3e661b..6ca835b2 100644 --- a/views/website/libraries/29-Kotlin.json +++ b/views/website/libraries/29-Kotlin.json @@ -36,7 +36,7 @@ "installCommandHtml": "maven: com.github.PhilJay / JWT / 1.1.5" }, { - "minimumVersion": "0.2.0", + "minimumVersion": null, "support": { "sign": true, "verify": true, @@ -65,7 +65,7 @@ "authorName": "nefilim", "gitHubRepoPath": "nefilim/kJWT", "repoUrl": "https://github.com/nefilim/kJWT", - "installCommandHtml": "maven GAV: io.github.nefilim.kjwt:kjwt-core:0.2.0" + "installCommandHtml": "maven GAV: io.github.nefilim.kjwt:kjwt-core:0.3.0" } ] } From d4a6445499fdb5d1c9eb824b883b43d87815d21a Mon Sep 17 00:00:00 2001 From: leelalagudu Date: Thu, 13 Jan 2022 13:08:42 +0000 Subject: [PATCH 371/456] Updated alg support for aws-jwt-verify --- views/website/libraries/2-Node.js.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/views/website/libraries/2-Node.js.json b/views/website/libraries/2-Node.js.json index 64c3548a..fddc5aa7 100644 --- a/views/website/libraries/2-Node.js.json +++ b/views/website/libraries/2-Node.js.json @@ -88,8 +88,8 @@ "hs384": false, "hs512": false, "rs256": true, - "rs384": false, - "rs512": false, + "rs384": true, + "rs512": true, "es256": false, "es384": false, "es512": false, From c0947f66fd4d6c55601339e9a27c83076c26742b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 13 Jan 2022 23:02:15 +0000 Subject: [PATCH 372/456] Bump node-forge from 0.10.0 to 1.0.0 Bumps [node-forge](https://github.com/digitalbazaar/forge) from 0.10.0 to 1.0.0. - [Release notes](https://github.com/digitalbazaar/forge/releases) - [Changelog](https://github.com/digitalbazaar/forge/blob/main/CHANGELOG.md) - [Commits](https://github.com/digitalbazaar/forge/compare/0.10.0...v1.0.0) --- updated-dependencies: - dependency-name: node-forge dependency-type: direct:development ... Signed-off-by: dependabot[bot] --- package-lock.json | 16 ++++++++-------- package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index e94a2397..3a3e9401 100644 --- a/package-lock.json +++ b/package-lock.json @@ -57,7 +57,7 @@ "loglevel": "^1.6.2", "mocha": "^5.2.0", "nock": "^13.1.3", - "node-forge": "^0.10.0", + "node-forge": "^1.0.0", "promise.any": "^0.1.1", "puppeteer": "^1.17.0", "request-promise-native": "^1.0.7", @@ -10381,12 +10381,12 @@ } }, "node_modules/node-forge": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", - "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.0.0.tgz", + "integrity": "sha512-ShkiiAlzSsgH1IwGlA0jybk9vQTIOLyJ9nBd0JTuP+nzADJFLY0NoDijM2zvD/JaezooGu3G2p2FNxOAK6459g==", "dev": true, "engines": { - "node": ">= 6.0.0" + "node": ">= 6.13.0" } }, "node_modules/node-libs-browser": { @@ -25366,9 +25366,9 @@ "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" }, "node-forge": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", - "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.0.0.tgz", + "integrity": "sha512-ShkiiAlzSsgH1IwGlA0jybk9vQTIOLyJ9nBd0JTuP+nzADJFLY0NoDijM2zvD/JaezooGu3G2p2FNxOAK6459g==", "dev": true }, "node-libs-browser": { diff --git a/package.json b/package.json index a848a316..d9d76a05 100644 --- a/package.json +++ b/package.json @@ -55,7 +55,7 @@ "loglevel": "^1.6.2", "mocha": "^5.2.0", "nock": "^13.1.3", - "node-forge": "^0.10.0", + "node-forge": "^1.0.0", "promise.any": "^0.1.1", "puppeteer": "^1.17.0", "request-promise-native": "^1.0.7", From 01ac0ae3a3fe318605a6df85b4cf43c17aea85e0 Mon Sep 17 00:00:00 2001 From: florcaputti Date: Thu, 13 Jan 2022 16:15:11 -0300 Subject: [PATCH 373/456] Add privacy links --- stylus/website/index.styl | 5 +++++ views/website/layout.pug | 6 ++++++ 2 files changed, 11 insertions(+) diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 45eba285..265ac70f 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -1244,6 +1244,11 @@ footer .logo height 18px + .privacy-links + margin-bottom 16px + span + padding 0 6px + .pull-request +breakpoint("tablet") text-align center diff --git a/views/website/layout.pug b/views/website/layout.pug index 9dce2aca..ac7a7fed 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -51,6 +51,12 @@ html(lang='en') .container .columns .column + div.privacy-links + a(href='https://auth0.com/privacy/', target="_blank") + | Privacy + span • + a(href='https://auth0.com/web-terms', target="_blank") + | Terms of Service a(href='https://auth0.com/developers/', target="_blank") | Supported by img(src='http://github.com/img/ico_logo.svg' alt='Supported by Auth0 - JWT.io Token Based Authentication').logo From 9dc3ea511cc4b0b65098cc93a31389b6b97b8bc0 Mon Sep 17 00:00:00 2001 From: Jonathan Horn Date: Fri, 11 Feb 2022 10:57:29 +0100 Subject: [PATCH 374/456] Fix default header for PS512 --- src/editor/default-tokens.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/editor/default-tokens.js b/src/editor/default-tokens.js index c2cc8e7c..033364d6 100644 --- a/src/editor/default-tokens.js +++ b/src/editor/default-tokens.js @@ -182,7 +182,7 @@ export default { publicKey: rsaPublicKey }, ps512: { - token: 'eyJhbGciOiJQUzM4NCIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.W0vasx0Lxmn3hkfi3RjJSLDSZnZbqDRZy6fau8wvIm_sdtTCiSJAjMSO1eR8YbnUF_MD10JYwR5unI8JO_qB8uSrW5vg4OPCDuPSQQu0Pnf9Q2Cy3WqSK166lgidlwAqyijgPFp5ggOnJM20IY4F8W6HOqcGeXcRzsaM2DIBEnku32TM7Xb-aCJYdKtawEfvD1zEwE1of02BoGva3sf_RhijMZpOA3yIG3FCDll-3M1rILP9Bi4FPz_uOAbJkKvUirAdaMX-KNaw6T_0nnBwHaFc8M9GGVZV6bT4uaOQ1U0Ezi4SAcBWW8kkPKZNorpRC5EtO_X6uvIVazj5EHERuw', + token: 'eyJhbGciOiJQUzUxMiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.W0vasx0Lxmn3hkfi3RjJSLDSZnZbqDRZy6fau8wvIm_sdtTCiSJAjMSO1eR8YbnUF_MD10JYwR5unI8JO_qB8uSrW5vg4OPCDuPSQQu0Pnf9Q2Cy3WqSK166lgidlwAqyijgPFp5ggOnJM20IY4F8W6HOqcGeXcRzsaM2DIBEnku32TM7Xb-aCJYdKtawEfvD1zEwE1of02BoGva3sf_RhijMZpOA3yIG3FCDll-3M1rILP9Bi4FPz_uOAbJkKvUirAdaMX-KNaw6T_0nnBwHaFc8M9GGVZV6bT4uaOQ1U0Ezi4SAcBWW8kkPKZNorpRC5EtO_X6uvIVazj5EHERuw', privateKey: rsaPrivateKey, jwk: rsaJwk, publicKey: rsaPublicKey From d941c42ed0f17e9e22e18796f0dc86e0fc8f804a Mon Sep 17 00:00:00 2001 From: Sam Bellen Date: Fri, 11 Feb 2022 13:03:34 +0100 Subject: [PATCH 375/456] Fix PS512 signature --- src/editor/default-tokens.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/editor/default-tokens.js b/src/editor/default-tokens.js index 033364d6..3d05e6c2 100644 --- a/src/editor/default-tokens.js +++ b/src/editor/default-tokens.js @@ -182,7 +182,7 @@ export default { publicKey: rsaPublicKey }, ps512: { - token: 'eyJhbGciOiJQUzUxMiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.W0vasx0Lxmn3hkfi3RjJSLDSZnZbqDRZy6fau8wvIm_sdtTCiSJAjMSO1eR8YbnUF_MD10JYwR5unI8JO_qB8uSrW5vg4OPCDuPSQQu0Pnf9Q2Cy3WqSK166lgidlwAqyijgPFp5ggOnJM20IY4F8W6HOqcGeXcRzsaM2DIBEnku32TM7Xb-aCJYdKtawEfvD1zEwE1of02BoGva3sf_RhijMZpOA3yIG3FCDll-3M1rILP9Bi4FPz_uOAbJkKvUirAdaMX-KNaw6T_0nnBwHaFc8M9GGVZV6bT4uaOQ1U0Ezi4SAcBWW8kkPKZNorpRC5EtO_X6uvIVazj5EHERuw', + token: 'eyJhbGciOiJQUzUxMiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.J5W09-rNx0pt5_HBiydR-vOluS6oD-RpYNa8PVWwMcBDQSXiw6-EPW8iSsalXPspGj3ouQjAnOP_4-zrlUUlvUIt2T79XyNeiKuooyIFvka3Y5NnGiOUBHWvWcWp4RcQFMBrZkHtJM23sB5D7Wxjx0-HFeNk-Y3UJgeJVhg5NaWXypLkC4y0ADrUBfGAxhvGdRdULZivfvzuVtv6AzW6NRuEE6DM9xpoWX_4here-yvLS2YPiBTZ8xbB3axdM99LhES-n52lVkiX5AWg2JJkEROZzLMpaacA_xlbUz_zbIaOaoqk8gB5oO7kI6sZej3QAdGigQy-hXiRnW_L98d4GQ', privateKey: rsaPrivateKey, jwk: rsaJwk, publicKey: rsaPublicKey From 6e87aa4ea34be23e8bd1bc505123515e57482715 Mon Sep 17 00:00:00 2001 From: Maria Ines Parnisari Date: Wed, 9 Mar 2022 15:48:20 -0800 Subject: [PATCH 376/456] Reference FGA in the introduction --- views/website/md/introduction.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/views/website/md/introduction.md b/views/website/md/introduction.md index fe2143fa..4b2d0fa2 100755 --- a/views/website/md/introduction.md +++ b/views/website/md/introduction.md @@ -105,6 +105,8 @@ Authorization: Bearer This can be, in certain cases, a stateless authorization mechanism. The server's protected routes will check for a valid JWT in the `Authorization` header, and if it's present, the user will be allowed to access protected resources. If the JWT contains the necessary data, the need to query the database for certain operations may be reduced, though this may not always be the case. +Note that if you send JWT tokens through HTTP headers, you should try to prevent them from getting too big. Some servers don't accept more than 8 KB in headers. If you are trying to embed too much information in a JWT token, like by including all the user's permissions, you may need an alternative solution, like [Auth0 Fine-Grained Authorization](https://auth0.com/developers/lab/fine-grained-authorization). + If the token is sent in the `Authorization` header, Cross-Origin Resource Sharing (CORS) won't be an issue as it doesn't use cookies. The following diagram shows how a JWT is obtained and used to access APIs or resources: From 4d8d5ba0140df3c3b73b07bd068129c164909657 Mon Sep 17 00:00:00 2001 From: Maria Ines Parnisari Date: Wed, 9 Mar 2022 16:04:03 -0800 Subject: [PATCH 377/456] remove deprecated go library --- views/website/libraries/9-Go.json | 31 ------------------------------- 1 file changed, 31 deletions(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index 5d1852c6..ac602548 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -315,37 +315,6 @@ "repoUrl": "https://github.com/pascaldekloe/jwt", "installCommandHtml": "go get github.com/pascaldekloe/jwt" }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": false, - "hs512": true, - "rs256": false, - "rs384": false, - "rs512": false, - "es256": false, - "es384": false, - "es512": false, - "ps256": false, - "ps384": false, - "ps512": false - }, - "authorUrl": "https://gitlab.com/rucuriousyet", - "authorName": "Seth Moeckel", - "gitHubRepoPath": null, - "repoUrl": "https://gitlab.com/rucuriousyet/jwt", - "installCommandHtml": "go get gitlab.com/rucuriousyet/jwt" - }, { "minimumVersion": null, "support": { From d0b2e33c76c4aba5561a3501c2753d8951c07f94 Mon Sep 17 00:00:00 2001 From: Maria Ines Parnisari Date: Thu, 10 Mar 2022 09:45:24 -0800 Subject: [PATCH 378/456] fix: FGA link --- views/website/md/introduction.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/md/introduction.md b/views/website/md/introduction.md index 4b2d0fa2..81304b3c 100755 --- a/views/website/md/introduction.md +++ b/views/website/md/introduction.md @@ -105,7 +105,7 @@ Authorization: Bearer This can be, in certain cases, a stateless authorization mechanism. The server's protected routes will check for a valid JWT in the `Authorization` header, and if it's present, the user will be allowed to access protected resources. If the JWT contains the necessary data, the need to query the database for certain operations may be reduced, though this may not always be the case. -Note that if you send JWT tokens through HTTP headers, you should try to prevent them from getting too big. Some servers don't accept more than 8 KB in headers. If you are trying to embed too much information in a JWT token, like by including all the user's permissions, you may need an alternative solution, like [Auth0 Fine-Grained Authorization](https://auth0.com/developers/lab/fine-grained-authorization). +Note that if you send JWT tokens through HTTP headers, you should try to prevent them from getting too big. Some servers don't accept more than 8 KB in headers. If you are trying to embed too much information in a JWT token, like by including all the user's permissions, you may need an alternative solution, like [Auth0 Fine-Grained Authorization](https://fga.dev). If the token is sent in the `Authorization` header, Cross-Origin Resource Sharing (CORS) won't be an issue as it doesn't use cookies. From a2588580d243fb79a3ce3f077ee0addd7f676bd4 Mon Sep 17 00:00:00 2001 From: Matteo Baccan Date: Sat, 12 Mar 2022 00:45:48 +0100 Subject: [PATCH 379/456] Harbour JWT Class --- img/website/34.webp | Bin 0 -> 4524 bytes views/website/libraries/34-Harbour.json | 42 ++++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 img/website/34.webp create mode 100644 views/website/libraries/34-Harbour.json diff --git a/img/website/34.webp b/img/website/34.webp new file mode 100644 index 0000000000000000000000000000000000000000..93d165faf3ebbcb1338a578db861104e28458747 GIT binary patch literal 4524 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 KWH{8U4z*hGx#2MY literal 0 HcmV?d00001 diff --git a/views/website/libraries/34-Harbour.json b/views/website/libraries/34-Harbour.json new file mode 100644 index 00000000..16226385 --- /dev/null +++ b/views/website/libraries/34-Harbour.json @@ -0,0 +1,42 @@ +{ + "name": "Harbour", + "uniqueClass": "jwt", + "image": "/img/34.webp", + "bgColor": "rgb(227, 28, 35)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "typ": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": false, + "rs384": false, + "rs512": false, + "es256": false, + "es384": false, + "es512": false, + "ps256": false, + "ps384": false, + "ps512": false, + "eddsa": false, + "es256k": false + }, + "authorUrl": "https://github.com/matteobaccan", + "authorName": "Matteo Baccan", + "gitHubRepoPath": "matteobaccan/HarbourJwt", + "repoUrl": "https://github.com/matteobaccan/HarbourJwt", + "installCommandHtml": "see https://github.com/matteobaccan/HarbourJwt" + } + ] +} From a04ca647716b1b7eaf53c3b638023d5c9ca9c9fc Mon Sep 17 00:00:00 2001 From: Matteo Baccan Date: Mon, 14 Mar 2022 11:51:05 +0100 Subject: [PATCH 380/456] Changed harbour icon to a round version --- img/website/34.png | Bin 0 -> 9713 bytes img/website/34.webp | Bin 4524 -> 0 bytes views/website/libraries/34-Harbour.json | 2 +- 3 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 img/website/34.png delete mode 100644 img/website/34.webp diff --git a/img/website/34.png b/img/website/34.png new file mode 100644 index 0000000000000000000000000000000000000000..f1fe6ae03e51f637d85ccccfc66b7c9173622650 GIT binary patch literal 9713 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 literal 0 HcmV?d00001 diff --git a/img/website/34.webp b/img/website/34.webp deleted file mode 100644 index 93d165faf3ebbcb1338a578db861104e28458747..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4524 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 KWH{8U4z*hGx#2MY diff --git a/views/website/libraries/34-Harbour.json b/views/website/libraries/34-Harbour.json index 16226385..eeb33968 100644 --- a/views/website/libraries/34-Harbour.json +++ b/views/website/libraries/34-Harbour.json @@ -1,7 +1,7 @@ { "name": "Harbour", "uniqueClass": "jwt", - "image": "/img/34.webp", + "image": "/img/34.png", "bgColor": "rgb(227, 28, 35)", "libs": [ { From 66f8b9f11d6da596c0750bf697fc938929525990 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Fri, 18 Mar 2022 10:53:06 +0100 Subject: [PATCH 381/456] enable ES512 in current webkit --- src/editor/utils.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/editor/utils.js b/src/editor/utils.js index 60121485..01238530 100644 --- a/src/editor/utils.js +++ b/src/editor/utils.js @@ -35,13 +35,15 @@ export function getSelectedAlgorithm() { return selected.value; } -export function isWebkit() { - return browser.engine.name === 'WebKit'; +export function p521Supported() { + return browser.engine.name !== 'WebKit' || + (browser.browser.name === 'Safari' && parseInt(browser.browser.version, 10) >= 15) || + (browser.os.name === 'iOS' && parseInt(browser.os.version, 10) >= 15); } export function disableUnsupportedAlgorithms() { // TODO: test supported algorithms in runtime - if(isWebkit()) { + if(p521Supported() === false) { algorithmEs512.disabled = true; } } From 26e8480502fd8c7491306835687bac2b2f0fbb79 Mon Sep 17 00:00:00 2001 From: Tom Lindelius Date: Sun, 20 Mar 2022 14:38:42 +0100 Subject: [PATCH 382/456] Remove deprecated PHP library --- views/website/libraries/24-PHP.json | 31 ----------------------------- 1 file changed, 31 deletions(-) diff --git a/views/website/libraries/24-PHP.json b/views/website/libraries/24-PHP.json index 67f03986..777a53de 100644 --- a/views/website/libraries/24-PHP.json +++ b/views/website/libraries/24-PHP.json @@ -222,37 +222,6 @@ "repoUrl": "https://github.com/vaibhavpandeyvpz/jweety", "installCommandHtml": "composer require vaibhavpandeyvpz/jweety" }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": false, - "es384": false, - "es512": false, - "ps256": false, - "ps384": false, - "ps512": false - }, - "authorUrl": "https://github.com/lindelius", - "authorName": "Tom Lindelius", - "gitHubRepoPath": "lindelius/php-jwt", - "repoUrl": "https://github.com/lindelius/php-jwt", - "installCommandHtml": "composer require lindelius/php-jwt" - }, { "minimumVersion": null, "support": { From 491ef2c27d73a503c6402203fc2a0f06fe824fc8 Mon Sep 17 00:00:00 2001 From: Alan Nelson Date: Mon, 9 May 2022 14:35:44 -0500 Subject: [PATCH 383/456] Update 24-PHP.json Update supported signatures for firebase/php-jwt --- views/website/libraries/24-PHP.json | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/views/website/libraries/24-PHP.json b/views/website/libraries/24-PHP.json index 777a53de..24607857 100644 --- a/views/website/libraries/24-PHP.json +++ b/views/website/libraries/24-PHP.json @@ -23,11 +23,13 @@ "rs384": true, "rs512": true, "es256": true, - "es384": false, + "es384": true, "es512": false, "ps256": false, "ps384": false, - "ps512": false + "ps512": false, + "eddsa": true, + "es256k": false }, "authorUrl": "https://github.com/firebase", "authorName": "Firebase", From 68b627cdd0be2ff80d81113cd2f4de4c1293cef7 Mon Sep 17 00:00:00 2001 From: Florent Morselli Date: Sat, 14 May 2022 10:15:22 +0200 Subject: [PATCH 384/456] Archived project "spomky-labs/jose" removed Hi @Sambego The library "spomky-labs/jose" I created years ago is deprecated and does not receive any update since December 2020. The repository has been archived. We are in 2022; it is now time to remove it from the list of available libraries. Regards. --- views/website/libraries/24-PHP.json | 32 ----------------------------- 1 file changed, 32 deletions(-) diff --git a/views/website/libraries/24-PHP.json b/views/website/libraries/24-PHP.json index 777a53de..9b025033 100644 --- a/views/website/libraries/24-PHP.json +++ b/views/website/libraries/24-PHP.json @@ -98,38 +98,6 @@ "repoUrl": "https://github.com/emarref/jwt", "installCommandHtml": "composer require emarref/jwt" }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": true, - "sub": true, - "aud": true, - "exp": true, - "nbf": true, - "iat": true, - "jti": true, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true, - "ps256": true, - "ps384": true, - "ps512": true, - "es256k": false - }, - "authorUrl": "https://github.com/Spomky-Labs/jose", - "authorName": "Spomky", - "gitHubRepoPath": "Spomky-Labs/jose", - "repoUrl": "https://github.com/Spomky-Labs/jose", - "installCommandHtml": "composer require spomky-labs/jose" - }, { "minimumVersion": null, "support": { From 540a21db716cfb88541db8bd93accd79bb0001d5 Mon Sep 17 00:00:00 2001 From: Jeremy Kuhn Date: Tue, 9 Aug 2022 17:19:39 +0200 Subject: [PATCH 385/456] Update 3-Java.json Hello, I've just released implementations of JOSE RFCs in an Inverno framework module. The library is quite complete and can actually be used independently from the framework so I thought this might interest some people. I'm not sure about the process to get it registered on jwt.io or whether this is even possible which is why I've made this PR. Please let me know if more is needed (e.g. tests or other...). Regards --- views/website/libraries/3-Java.json | 33 +++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/views/website/libraries/3-Java.json b/views/website/libraries/3-Java.json index a670cdc6..3f328bad 100644 --- a/views/website/libraries/3-Java.json +++ b/views/website/libraries/3-Java.json @@ -186,6 +186,39 @@ "gitHubRepoPath": "vert-x3/vertx-auth", "repoUrl": "https://github.com/vert-x3/vertx-auth", "installCommandHtml": "maven: io.vertx / vertx-auth-jwt / 3.5.1" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es256k": true, + "es384": true, + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true, + "EdDSA": true + }, + "authorUrl": "https://github.com/inverno-io", + "authorName": "Inverno Framework", + "gitHubRepoPath": "inverno-io/inverno-mods/tree/master/inverno-security-jose", + "repoUrl": "https://github.com/inverno-io/inverno-mods/tree/master/inverno-security-jose", + "installCommandHtml": "maven: io.inverno.mod / inverno-security-jose / 1.5.1" } ] } From c2e7d5d8d50e78c35318d4874eb22e5fc470db5a Mon Sep 17 00:00:00 2001 From: Jeremy Kuhn Date: Wed, 10 Aug 2022 10:23:23 +0200 Subject: [PATCH 386/456] Update 3-Java.json --- views/website/libraries/3-Java.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/3-Java.json b/views/website/libraries/3-Java.json index 3f328bad..763fe798 100644 --- a/views/website/libraries/3-Java.json +++ b/views/website/libraries/3-Java.json @@ -218,7 +218,7 @@ "authorName": "Inverno Framework", "gitHubRepoPath": "inverno-io/inverno-mods/tree/master/inverno-security-jose", "repoUrl": "https://github.com/inverno-io/inverno-mods/tree/master/inverno-security-jose", - "installCommandHtml": "maven: io.inverno.mod / inverno-security-jose / 1.5.1" + "installCommandHtml": "maven: io.inverno.mod / inverno-security-jose / 1.5.2" } ] } From 39cbed3bd9c7b7e9aba53a9f78c84131d2583404 Mon Sep 17 00:00:00 2001 From: Hsiaoming Yang Date: Sat, 27 Aug 2022 14:27:49 +0900 Subject: [PATCH 387/456] Add ES256K and EdDSA for Authlib --- views/website/libraries/1-Python.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/1-Python.json b/views/website/libraries/1-Python.json index 4da66b7f..4667ebc4 100644 --- a/views/website/libraries/1-Python.json +++ b/views/website/libraries/1-Python.json @@ -125,7 +125,9 @@ "es512": true, "ps256": true, "ps384": true, - "ps512": true + "ps512": true, + "eddsa": true, + "es256k": true }, "authorUrl": "https://github.com/lepture", "authorName": "Hsiaoming Yang", From 72f72615e120abbd8a9844d0485bde4acb03e663 Mon Sep 17 00:00:00 2001 From: Brian Campbell <71398439+bc-pi@users.noreply.github.com> Date: Thu, 1 Sep 2022 09:43:58 -0600 Subject: [PATCH 388/456] updates for jose4j (typ, ES256K, and version) --- views/website/libraries/3-Java.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/3-Java.json b/views/website/libraries/3-Java.json index 763fe798..343950d0 100644 --- a/views/website/libraries/3-Java.json +++ b/views/website/libraries/3-Java.json @@ -47,6 +47,7 @@ "nbf": true, "iat": true, "jti": true, + "typ": true, "hs256": true, "hs384": true, "hs512": true, @@ -56,6 +57,7 @@ "es256": true, "es384": true, "es512": true, + "es256k": true, "ps256": true, "ps384": true, "ps512": true @@ -64,7 +66,7 @@ "authorName": "Brian Campbell", "gitHubRepoPath": null, "repoUrl": "https://bitbucket.org/b_c/jose4j", - "installCommandHtml": "maven: org.bitbucket.b_c / jose4j / 0.6.3" + "installCommandHtml": "maven: org.bitbucket.b_c / jose4j / 0.8.0" }, { "minimumVersion": null, From 2887da9d52905def2999e78d9f089e9c8cb7380c Mon Sep 17 00:00:00 2001 From: belcortes Date: Mon, 19 Sep 2022 13:06:28 -0700 Subject: [PATCH 389/456] Replacing auth0 logo --- img/website/pic_logo_ft.svg | 5 ++++- stylus/website/index.styl | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/img/website/pic_logo_ft.svg b/img/website/pic_logo_ft.svg index 9eec2d65..f29ae85d 100644 --- a/img/website/pic_logo_ft.svg +++ b/img/website/pic_logo_ft.svg @@ -1 +1,4 @@ - \ No newline at end of file + + + + \ No newline at end of file diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 265ac70f..fc43a6d4 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -228,7 +228,7 @@ body top -1px img - height 24px + height 30px .by-text color white From 7093446727407dbdca8e66b87d58a967e1876926 Mon Sep 17 00:00:00 2001 From: belcortes Date: Tue, 20 Sep 2022 08:08:15 -0700 Subject: [PATCH 390/456] Making it slightly bigger --- stylus/website/index.styl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stylus/website/index.styl b/stylus/website/index.styl index fc43a6d4..bae83b0a 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -228,7 +228,7 @@ body top -1px img - height 30px + height 35px .by-text color white From 7a427c5804ea45018e90d70a92c33bd7758d2d69 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Wed, 28 Sep 2022 12:29:25 +0200 Subject: [PATCH 391/456] Update 33-Deno.json --- views/website/libraries/33-Deno.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/33-Deno.json b/views/website/libraries/33-Deno.json index 039a5b3d..51463288 100644 --- a/views/website/libraries/33-Deno.json +++ b/views/website/libraries/33-Deno.json @@ -29,7 +29,7 @@ "ps256": true, "ps384": true, "ps512": true, - "eddsa": false, + "eddsa": true, "es256k": false }, "authorUrl": "https://github.com/panva", From 9cf842893ef60a465f742b872f030c5c3f9eb352 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Thu, 29 Sep 2022 08:04:08 +0200 Subject: [PATCH 392/456] Update 33-Deno.json --- views/website/libraries/33-Deno.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/33-Deno.json b/views/website/libraries/33-Deno.json index 51463288..039a5b3d 100644 --- a/views/website/libraries/33-Deno.json +++ b/views/website/libraries/33-Deno.json @@ -29,7 +29,7 @@ "ps256": true, "ps384": true, "ps512": true, - "eddsa": true, + "eddsa": false, "es256k": false }, "authorUrl": "https://github.com/panva", From 0686d3755f3ab001e43cd279cfde32b144fa9245 Mon Sep 17 00:00:00 2001 From: Brian Campbell <71398439+bc-pi@users.noreply.github.com> Date: Wed, 5 Oct 2022 14:47:05 -0600 Subject: [PATCH 393/456] updates for jose4j supporting EdDSA in v0.9.0 --- views/website/libraries/3-Java.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/views/website/libraries/3-Java.json b/views/website/libraries/3-Java.json index 343950d0..1079bd99 100644 --- a/views/website/libraries/3-Java.json +++ b/views/website/libraries/3-Java.json @@ -60,13 +60,14 @@ "es256k": true, "ps256": true, "ps384": true, - "ps512": true + "ps512": true, + "EdDSA": true }, "authorUrl": "https://twitter.com/__b_c", "authorName": "Brian Campbell", "gitHubRepoPath": null, "repoUrl": "https://bitbucket.org/b_c/jose4j", - "installCommandHtml": "maven: org.bitbucket.b_c / jose4j / 0.8.0" + "installCommandHtml": "maven: org.bitbucket.b_c / jose4j / 0.9.0" }, { "minimumVersion": null, From fc75128a6f80ac8fb531a195e3e1a0ec7d78d2cf Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Thu, 6 Oct 2022 23:03:45 +0200 Subject: [PATCH 394/456] update deno, eddsa is finally in usable state --- views/website/libraries/33-Deno.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/33-Deno.json b/views/website/libraries/33-Deno.json index 039a5b3d..51463288 100644 --- a/views/website/libraries/33-Deno.json +++ b/views/website/libraries/33-Deno.json @@ -29,7 +29,7 @@ "ps256": true, "ps384": true, "ps512": true, - "eddsa": false, + "eddsa": true, "es256k": false }, "authorUrl": "https://github.com/panva", From 4dd0aa79c9f2bea75d552548cfbba87e2e645b6e Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Sun, 6 Nov 2022 14:14:58 +0100 Subject: [PATCH 395/456] add bun --- img/website/35.svg | 1 + stylus/website/index.styl | 4 +++ views/website/libraries/35-Bun.json | 42 +++++++++++++++++++++++++++++ 3 files changed, 47 insertions(+) create mode 100644 img/website/35.svg create mode 100644 views/website/libraries/35-Bun.json diff --git a/img/website/35.svg b/img/website/35.svg new file mode 100644 index 00000000..7ef15001 --- /dev/null +++ b/img/website/35.svg @@ -0,0 +1 @@ +Bun Logo \ No newline at end of file diff --git a/stylus/website/index.styl b/stylus/website/index.styl index bae83b0a..5218d084 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -1326,3 +1326,7 @@ footer .jwt-playground .algorithm-code .tab-content .input:hover .editor-warning display: none; + +.bun h3 { + color: rgb(0,0,0)!important; +} diff --git a/views/website/libraries/35-Bun.json b/views/website/libraries/35-Bun.json new file mode 100644 index 00000000..db23c7d0 --- /dev/null +++ b/views/website/libraries/35-Bun.json @@ -0,0 +1,42 @@ +{ + "name": "Bun", + "uniqueClass": "bun", + "image": "/img/35.svg", + "bgColor": "rgb(251, 240, 223)", + "libs": [ + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "typ": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true, + "ps256": true, + "ps384": true, + "ps512": true, + "eddsa": false, + "es256k": false + }, + "authorUrl": "https://github.com/panva", + "authorName": "Filip Skokan", + "gitHubRepoPath": "panva/jose", + "repoUrl": "https://github.com/panva/jose", + "installCommandHtml": "bun add jose" + } + ] +} From ef8993f871da831b879ccb29f4cb92f4f4dbc1ee Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Wed, 9 Nov 2022 16:33:22 +0100 Subject: [PATCH 396/456] chore: bump deps --- package-lock.json | 15916 +++++++++++++++++++++++++++----------------- package.json | 4 +- 2 files changed, 9648 insertions(+), 6272 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3a3e9401..3d2092ac 100644 --- a/package-lock.json +++ b/package-lock.json @@ -49,9 +49,9 @@ "grunt-mocha-test": "^0.13.3", "grunt-webpack": "^3.1.3", "highlight.js": "^10.4.1", - "inject-loader": "^3.0.1", + "inject-loader": "^4.0.1", "isotope-layout": "^3.0.6", - "jose": "^4.1.0", + "jose": "^4.11.0", "jquery": "^3.4.1", "lodash": "^4.17.13", "loglevel": "^1.6.2", @@ -74,340 +74,449 @@ "xhr-mock": "^2.4.1" } }, + "node_modules/@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/@babel/code-frame": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", - "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", "dev": true, "dependencies": { - "@babel/highlight": "^7.10.4" + "@babel/highlight": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/compat-data": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.11.0.tgz", - "integrity": "sha512-TPSvJfv73ng0pfnEOh17bYMPQbI95+nGWc71Ss4vZdRBHTDqmM9Z8ZV4rYz8Ks7sfzc95n30k6ODIq5UGnXcYQ==", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.1.tgz", + "integrity": "sha512-EWZ4mE2diW3QALKvDMiXnbZpRvlj+nayZ112nK93SnhqOtpdsbVD4W+2tEoT3YNBAG9RBR0ISY758ZkOgsn6pQ==", "dev": true, - "dependencies": { - "browserslist": "^4.12.0", - "invariant": "^2.2.4", - "semver": "^5.5.0" + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.11.1.tgz", - "integrity": "sha512-XqF7F6FWQdKGGWAzGELL+aCO1p+lRY5Tj5/tbT3St1G8NaH70jhhDIKknIZaDans0OQBG5wRAldROLHSt44BgQ==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.11.0", - "@babel/helper-module-transforms": "^7.11.0", - "@babel/helpers": "^7.10.4", - "@babel/parser": "^7.11.1", - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.11.0", - "@babel/types": "^7.11.0", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.2.tgz", + "integrity": "sha512-w7DbG8DtMrJcFOi4VrLm+8QM4az8Mo+PuLBKLp2zrYRCow8W/f9xiXm5sN53C8HksCyDQwCKha9JiDoIyPjT2g==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.2", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-module-transforms": "^7.20.2", + "@babel/helpers": "^7.20.1", + "@babel/parser": "^7.20.2", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.2", "convert-source-map": "^1.7.0", "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", - "json5": "^2.1.2", - "lodash": "^4.17.19", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" }, "engines": { "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" } }, - "node_modules/@babel/core/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "node_modules/@babel/generator": { + "version": "7.20.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.4.tgz", + "integrity": "sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==", "dev": true, "dependencies": { - "ms": "^2.1.1" + "@babel/types": "^7.20.2", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@babel/core/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/@babel/generator": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.11.0.tgz", - "integrity": "sha512-fEm3Uzw7Mc9Xi//qU20cBKatTfs2aOtKqmvy/Vm7RkJEGFQ4xc9myCfbXxqK//ZS8MR/ciOHw6meGASJuKmDfQ==", + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", "dev": true, "dependencies": { - "@babel/types": "^7.11.0", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" } }, "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.10.4.tgz", - "integrity": "sha512-XQlqKQP4vXFB7BN8fEEerrmYvHp3fK/rBkRFz9jaJbzK0B1DSfej9Kc7ZzE8Z/OnId1jpJdNAZ3BFQjWG68rcA==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", + "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", "dev": true, "dependencies": { - "@babel/types": "^7.10.4" + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.10.4.tgz", - "integrity": "sha512-L0zGlFrGWZK4PbT8AszSfLTM5sDU1+Az/En9VrdT8/LmEiJt4zXt+Jve9DCAnQcbqDhCI+29y/L93mrDzddCcg==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", + "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", "dev": true, "dependencies": { - "@babel/helper-explode-assignable-expression": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/helper-explode-assignable-expression": "^7.18.6", + "@babel/types": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.10.4.tgz", - "integrity": "sha512-a3rYhlsGV0UHNDvrtOXBg8/OpfV0OKTkxKPzIplS1zpx7CygDcWWxckxZeDd3gzPzC4kUT0A4nVFDK0wGMh4MQ==", + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz", + "integrity": "sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.10.4", - "browserslist": "^4.12.0", - "invariant": "^2.2.4", - "levenary": "^1.1.1", - "semver": "^5.5.0" + "@babel/compat-data": "^7.20.0", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.10.5.tgz", - "integrity": "sha512-0nkdeijB7VlZoLT3r/mY3bUkw3T8WG/hNw+FATs/6+pG2039IJWjTYL0VTISqsNHMUTEnwbVnc89WIJX9Qed0A==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.20.2.tgz", + "integrity": "sha512-k22GoYRAHPYr9I+Gvy2ZQlAe5mGy8BqWst2wRt8cwIufWTxrsVshhIBvYNqC80N0GSFWTsqRVexOtfzlgOEDvA==", "dev": true, "dependencies": { - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-member-expression-to-functions": "^7.10.5", - "@babel/helper-optimise-call-expression": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.10.4" + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-member-expression-to-functions": "^7.18.9", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-replace-supers": "^7.19.1", + "@babel/helper-split-export-declaration": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.10.4.tgz", - "integrity": "sha512-2/hu58IEPKeoLF45DBwx3XFqsbCXmkdAay4spVr2x0jYgRxrSNp+ePwvSsy9g6YSaNDcKIQVPXk1Ov8S2edk2g==", + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.19.0.tgz", + "integrity": "sha512-htnV+mHX32DF81amCDrwIDr8nrp1PTm+3wfBN9/v8QJOLEioOCOG7qNyq0nHeFiWbT3Eb7gsPwEmV64UCQ1jzw==", "dev": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.10.4", - "@babel/helper-regex": "^7.10.4", - "regexpu-core": "^4.7.0" + "@babel/helper-annotate-as-pure": "^7.18.6", + "regexpu-core": "^5.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-define-map": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.10.5.tgz", - "integrity": "sha512-fMw4kgFB720aQFXSVaXr79pjjcW5puTCM16+rECJ/plGS+zByelE8l9nCpV1GibxTnFVmUuYG9U8wYfQHdzOEQ==", + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", + "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", "dev": true, "dependencies": { - "@babel/helper-function-name": "^7.10.4", - "@babel/types": "^7.10.5", - "lodash": "^4.17.19" + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0-0" } }, - "node_modules/@babel/helper-explode-assignable-expression": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.10.4.tgz", - "integrity": "sha512-4K71RyRQNPRrR85sr5QY4X3VwG4wtVoXZB9+L3r1Gp38DhELyHCtovqydRi7c1Ovb17eRGiQ/FD5s8JdU0Uy5A==", + "node_modules/@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", "dev": true, - "dependencies": { - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@babel/helper-function-name": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz", - "integrity": "sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ==", + "node_modules/@babel/helper-explode-assignable-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", + "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", "dev": true, "dependencies": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@babel/helper-get-function-arity": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz", - "integrity": "sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A==", + "node_modules/@babel/helper-function-name": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", + "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", "dev": true, "dependencies": { - "@babel/types": "^7.10.4" + "@babel/template": "^7.18.10", + "@babel/types": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/helper-hoist-variables": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.10.4.tgz", - "integrity": "sha512-wljroF5PgCk2juF69kanHVs6vrLwIPNp6DLD+Lrl3hoQ3PpPPikaDRNFA+0t81NOoMt2DL6WW/mdU8k4k6ZzuA==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", "dev": true, "dependencies": { - "@babel/types": "^7.10.4" + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.11.0.tgz", - "integrity": "sha512-JbFlKHFntRV5qKw3YC0CvQnDZ4XMwgzzBbld7Ly4Mj4cbFy3KywcR8NtNctRToMWJOVvLINJv525Gd6wwVEx/Q==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz", + "integrity": "sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg==", "dev": true, "dependencies": { - "@babel/types": "^7.11.0" + "@babel/types": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-imports": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.10.4.tgz", - "integrity": "sha512-nEQJHqYavI217oD9+s5MUBzk6x1IlvoS9WTPfgG43CbMEeStE0v+r+TucWdx8KFGowPGvyOkDT9+7DHedIDnVw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", "dev": true, "dependencies": { - "@babel/types": "^7.10.4" + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.11.0.tgz", - "integrity": "sha512-02EVu8COMuTRO1TAzdMtpBPbe6aQ1w/8fePD2YgQmxZU4gpNWaL9gK3Jp7dxlkUlUCJOTaSeA+Hrm1BRQwqIhg==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz", + "integrity": "sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA==", "dev": true, "dependencies": { - "@babel/helper-module-imports": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4", - "@babel/helper-simple-access": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/template": "^7.10.4", - "@babel/types": "^7.11.0", - "lodash": "^4.17.19" + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.4.tgz", - "integrity": "sha512-n3UGKY4VXwXThEiKrgRAoVPBMqeoPgHVqiHZOanAJCG9nQUL2pLRQirUzl0ioKclHGpGqRgIOkgcIJaIWLpygg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", + "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", "dev": true, "dependencies": { - "@babel/types": "^7.10.4" + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", - "dev": true - }, - "node_modules/@babel/helper-regex": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.10.5.tgz", - "integrity": "sha512-68kdUAzDrljqBrio7DYAEgCoJHxppJOERHOgOrDN7WjOzP0ZQ1LsSDRXcemzVZaLvjaJsJEESb6qt+znNuENDg==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", "dev": true, - "dependencies": { - "lodash": "^4.17.19" + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/helper-remap-async-to-generator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.10.4.tgz", - "integrity": "sha512-86Lsr6NNw3qTNl+TBcF1oRZMaVzJtbWTyTko+CQL/tvNvcGYEFKbLXDPxtW0HKk3McNOk4KzY55itGWCAGK5tg==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", + "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", "dev": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.10.4", - "@babel/helper-wrap-function": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-wrap-function": "^7.18.9", + "@babel/types": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, "node_modules/@babel/helper-replace-supers": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.10.4.tgz", - "integrity": "sha512-sPxZfFXocEymYTdVK1UNmFPBN+Hv5mJkLPsYWwGBxZAxaWfFu+xqp7b6qWD0yjNuNL2VKc6L5M18tOXUP7NU0A==", + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.19.1.tgz", + "integrity": "sha512-T7ahH7wV0Hfs46SFh5Jz3s0B6+o8g3c+7TMxu7xKfmHikg7EAZ3I2Qk9LFhjxXq8sL7UkP5JflezNwoZa8WvWw==", "dev": true, "dependencies": { - "@babel/helper-member-expression-to-functions": "^7.10.4", - "@babel/helper-optimise-call-expression": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-member-expression-to-functions": "^7.18.9", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/traverse": "^7.19.1", + "@babel/types": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/helper-simple-access": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.10.4.tgz", - "integrity": "sha512-0fMy72ej/VEvF8ULmX6yb5MtHG4uH4Dbd6I/aHDb/JVg0bbivwt9Wg+h3uMvX+QSFtwr5MeItvazbrc4jtRAXw==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", "dev": true, "dependencies": { - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/types": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.11.0.tgz", - "integrity": "sha512-0XIdiQln4Elglgjbwo9wuJpL/K7AGCY26kmEt0+pRP0TAj4jjyNq1MjoRvikrTVqKcx4Gysxt4cXvVFXP/JO2Q==", + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", + "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", "dev": true, "dependencies": { - "@babel/types": "^7.11.0" + "@babel/types": "^7.20.0" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/helper-split-export-declaration": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.11.0.tgz", - "integrity": "sha512-74Vejvp6mHkGE+m+k5vHY93FX2cAtrw1zXrZXRlG4l410Nm9PxfEiVTn1PjDPV5SnmieiueY4AFg2xqhNFuuZg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", "dev": true, "dependencies": { - "@babel/types": "^7.11.0" + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "dev": true, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz", - "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==", - "dev": true + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", + "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } }, "node_modules/@babel/helper-wrap-function": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.10.4.tgz", - "integrity": "sha512-6py45WvEF0MhiLrdxtRjKjufwLL1/ob2qDJgg5JgNdojBAZSAKnAjkyOCNug6n+OBl4VW76XjvgSFTdaMcW0Ug==", + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.19.0.tgz", + "integrity": "sha512-txX8aN8CZyYGTwcLhlk87KRqncAzhh5TpQamZUa0/u3an36NtDpUP6bQgBCBcLeBs09R/OwQu3OjK0k/HwfNDg==", "dev": true, "dependencies": { - "@babel/helper-function-name": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/helper-function-name": "^7.19.0", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.19.0", + "@babel/types": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.10.4.tgz", - "integrity": "sha512-L2gX/XeUONeEbI78dXSrJzGdz4GQ+ZTA/aazfUsFaWjSe95kiCuOZ5HsXvkiw3iwF+mFHSRUfJU8t6YavocdXA==", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.1.tgz", + "integrity": "sha512-J77mUVaDTUJFZ5BpP6mMn6OIl3rEWymk2ZxDBQJUG3P+PbmyMcF3bYWvz0ma69Af1oobDqT/iAsvzhB58xhQUg==", "dev": true, "dependencies": { - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.0" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", - "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", + "@babel/helper-validator-identifier": "^7.18.6", "chalk": "^2.0.0", "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.11.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", + "version": "7.20.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.3.tgz", + "integrity": "sha512-OP/s5a94frIPXwjzEcv5S/tpQfc6XhxYUnmWpgdqMWGgYCuErA3SzozaRAMQgSZWKeTJxht9aWAkUY+0UzvOFg==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -416,140 +525,285 @@ "node": ">=6.0.0" } }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", + "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.18.9.tgz", + "integrity": "sha512-AHrP9jadvH7qlOj6PINbgSuphjQUAK7AOT7DPjBo9EHoLhQTnnK5u45e1Hd4DbSQEO9nqPWtQ89r+XEOWFScKg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", + "@babel/plugin-proposal-optional-chaining": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, "node_modules/@babel/plugin-proposal-async-generator-functions": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.10.5.tgz", - "integrity": "sha512-cNMCVezQbrRGvXJwm9fu/1sJj9bHdGAgKodZdLqOQIpfoH3raqmRPBM17+lh7CzhiKRRBrGtZL9WcjxSoGYUSg==", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.1.tgz", + "integrity": "sha512-Gh5rchzSwE4kC+o/6T8waD0WHEQIsDmjltY8WnWRXHUdH8axZhuH86Ov9M72YhJfDrZseQwuuWaaIT/TmePp3g==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-remap-async-to-generator": "^7.10.4", - "@babel/plugin-syntax-async-generators": "^7.8.0" + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-class-properties": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.10.4.tgz", - "integrity": "sha512-vhwkEROxzcHGNu2mzUC0OFFNXdZ4M23ib8aRRcJSsW8BZK9pQMD7QB7csl97NBbgGZO7ZyHUyKDnxzOaP4IrCg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", "dev": true, "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-static-block": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.6.tgz", + "integrity": "sha512-+I3oIiNxrCpup3Gi8n5IGMwj0gOCAjcJUSQEcotNnCCPMEnixawOQ+KeJPlgfjzx+FKQ1QSyZOWe7wmoJp7vhw==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" } }, "node_modules/@babel/plugin-proposal-dynamic-import": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.10.4.tgz", - "integrity": "sha512-up6oID1LeidOOASNXgv/CFbgBqTuKJ0cJjz6An5tWD+NVBNlp3VNSBxv2ZdU7SYl3NxJC7agAQDApZusV6uFwQ==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", + "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-dynamic-import": "^7.8.0" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-export-namespace-from": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.10.4.tgz", - "integrity": "sha512-aNdf0LY6/3WXkhh0Fdb6Zk9j1NMD8ovj3F6r0+3j837Pn1S1PdNtcwJ5EG9WkVPNHPxyJDaxMaAOVq4eki0qbg==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", + "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-plugin-utils": "^7.18.9", "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-json-strings": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.10.4.tgz", - "integrity": "sha512-fCL7QF0Jo83uy1K0P2YXrfX11tj3lkpN7l4dMv9Y9VkowkhkQDwFHFd8IiwyK5MZjE8UpbgokkgtcReH88Abaw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", + "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-json-strings": "^7.8.0" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.11.0.tgz", - "integrity": "sha512-/f8p4z+Auz0Uaf+i8Ekf1iM7wUNLcViFUGiPxKeXvxTSl63B875YPiVdUDdem7hREcI0E0kSpEhS8tF5RphK7Q==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.18.9.tgz", + "integrity": "sha512-128YbMpjCrP35IOExw2Fq+x55LMP42DzhOhX2aNNIdI9avSWl2PI0yuBWarr3RYpZBSPtabfadkH2yeRiMD61Q==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-plugin-utils": "^7.18.9", "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.10.4.tgz", - "integrity": "sha512-wq5n1M3ZUlHl9sqT2ok1T2/MTt6AXE0e1Lz4WzWBr95LsAZ5qDXe4KnFuauYyEyLiohvXFMdbsOTMyLZs91Zlw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", + "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.10.4.tgz", - "integrity": "sha512-73/G7QoRoeNkLZFxsoCCvlg4ezE4eM+57PnOqgaPOozd5myfj7p0muD1mRVJvbUWbOzD+q3No2bWbaKy+DJ8DA==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", + "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-plugin-utils": "^7.18.6", "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-object-rest-spread": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.11.0.tgz", - "integrity": "sha512-wzch41N4yztwoRw0ak+37wxwJM2oiIiy6huGCoqkvSTA9acYWcPfn9Y4aJqmFFJ70KTJUu29f3DQ43uJ9HXzEA==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.2.tgz", + "integrity": "sha512-Ks6uej9WFK+fvIMesSqbAto5dD8Dz4VuuFvGJFKgIGSkJuRGcrwGECPA1fDgQK3/DbExBJpEkTeYeB8geIFCSQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-transform-parameters": "^7.10.4" + "@babel/compat-data": "^7.20.1", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-optional-catch-binding": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.10.4.tgz", - "integrity": "sha512-LflT6nPh+GK2MnFiKDyLiqSqVHkQnVf7hdoAvyTnnKj9xB3docGRsdPuxp6qqqW19ifK3xgc9U5/FwrSaCNX5g==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", + "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-optional-chaining": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.11.0.tgz", - "integrity": "sha512-v9fZIu3Y8562RRwhm1BbMRxtqZNFmFA2EG+pT2diuU8PT3H6T/KXoZ54KgYisfOFZHV6PfvAiBIZ9Rcz+/JCxA==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.18.9.tgz", + "integrity": "sha512-v5nwt4IqBXihxGsW2QmCWMDS3B3bzGIk/EQVZz2ei7f3NJl8NzAJVvUmpDW5q1CRNY+Beb/k58UAH1Km1N411w==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-skip-transparent-expression-wrappers": "^7.11.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.0" + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-private-methods": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.10.4.tgz", - "integrity": "sha512-wh5GJleuI8k3emgTg5KkJK6kHNsGEr0uBTDBuQUBJwckk9xs1ez79ioheEVVxMLyPscB0LfkbVHslQqIzWV6Bw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", + "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", "dev": true, "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.18.6.tgz", + "integrity": "sha512-9Rysx7FOctvT5ouj5JODjAFAkgGoudQuLPamZb0v1TGLpapdNaftzifU8NTWQm0IRjqoYypdrSmyWgkocDQ8Dw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-proposal-unicode-property-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.10.4.tgz", - "integrity": "sha512-H+3fOgPnEXFL9zGYtKQe4IDOPKYlZdF1kqFDQRRb8PK4B8af1vAGK04tF5iQAAsui+mHNBQSAtd2/ndEDe9wuA==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", "dev": true, "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-async-generators": { @@ -559,15 +813,36 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.10.4.tgz", - "integrity": "sha512-GCSBF7iUle6rNugfURwNmCGG3Z/2+opxAMLs1nND4bhEG5PuxTIggDBoeYYSujAlLtsupzOHYJQgPS3pivwXIA==", + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-dynamic-import": { @@ -577,6 +852,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-export-namespace-from": { @@ -586,6 +864,24 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", + "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-json-strings": { @@ -595,6 +891,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-logical-assignment-operators": { @@ -604,6 +903,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { @@ -613,6 +915,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-numeric-separator": { @@ -622,6 +927,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-object-rest-spread": { @@ -631,6 +939,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-optional-catch-binding": { @@ -640,6 +951,9 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-optional-chaining": { @@ -649,336 +963,552 @@ "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.10.4.tgz", - "integrity": "sha512-ni1brg4lXEmWyafKr0ccFWkJG0CeMt4WV1oyeBW6EFObF4oOHclbkj5cARxAPQyAQ2UTuplJyK4nfkXIMMFvsQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-arrow-functions": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.10.4.tgz", - "integrity": "sha512-9J/oD1jV0ZCBcgnoFWFq1vJd4msoKb/TCpGNFyyLt0zABdcvgK3aYikZ8HjzB14c26bc7E3Q1yugpwGy2aTPNA==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz", + "integrity": "sha512-9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.10.4.tgz", - "integrity": "sha512-F6nREOan7J5UXTLsDsZG3DXmZSVofr2tGNwfdrVwkDWHfQckbQXnXSPfD7iO+c/2HGqycwyLST3DnZ16n+cBJQ==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz", + "integrity": "sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag==", "dev": true, "dependencies": { - "@babel/helper-module-imports": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-remap-async-to-generator": "^7.10.4" + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-remap-async-to-generator": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-block-scoped-functions": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.10.4.tgz", - "integrity": "sha512-WzXDarQXYYfjaV1szJvN3AD7rZgZzC1JtjJZ8dMHUyiK8mxPRahynp14zzNjU3VkPqPsO38CzxiWO1c9ARZ8JA==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", + "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-block-scoping": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.11.1.tgz", - "integrity": "sha512-00dYeDE0EVEHuuM+26+0w/SCL0BH2Qy7LwHuI4Hi4MH5gkC8/AqMN5uWFJIsoXZrAphiMm1iXzBw6L2T+eA0ew==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.20.2.tgz", + "integrity": "sha512-y5V15+04ry69OV2wULmwhEA6jwSWXO1TwAtIwiPXcvHcoOQUqpyMVd2bDsQJMW8AurjulIyUV8kDqtjSwHy1uQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-classes": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.10.4.tgz", - "integrity": "sha512-2oZ9qLjt161dn1ZE0Ms66xBncQH4In8Sqw1YWgBUZuGVJJS5c0OFZXL6dP2MRHrkU/eKhWg8CzFJhRQl50rQxA==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.10.4", - "@babel/helper-define-map": "^7.10.4", - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-optimise-call-expression": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.10.4", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.20.2.tgz", + "integrity": "sha512-9rbPp0lCVVoagvtEyQKSo5L8oo0nQS/iif+lwlAz29MccX2642vWDlSZK+2T2buxbopotId2ld7zZAzRfz9j1g==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-replace-supers": "^7.19.1", + "@babel/helper-split-export-declaration": "^7.18.6", "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.10.4.tgz", - "integrity": "sha512-JFwVDXcP/hM/TbyzGq3l/XWGut7p46Z3QvqFMXTfk6/09m7xZHJUN9xHfsv7vqqD4YnfI5ueYdSJtXqqBLyjBw==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.18.9.tgz", + "integrity": "sha512-+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-destructuring": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.10.4.tgz", - "integrity": "sha512-+WmfvyfsyF603iPa6825mq6Qrb7uLjTOsa3XOFzlYcYDHSS4QmpOWOL0NNBY5qMbvrcf3tq0Cw+v4lxswOBpgA==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.2.tgz", + "integrity": "sha512-mENM+ZHrvEgxLTBXUiQ621rRXZes3KWUv6NdQlrnr1TkWVw+hUjQBZuP2X32qKlrlG2BzgR95gkuCRSkJl8vIw==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-dotall-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.10.4.tgz", - "integrity": "sha512-ZEAVvUTCMlMFAbASYSVQoxIbHm2OkG2MseW6bV2JjIygOjdVv8tuxrCTzj1+Rynh7ODb8GivUy7dzEXzEhuPaA==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", + "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", "dev": true, "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-duplicate-keys": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.10.4.tgz", - "integrity": "sha512-GL0/fJnmgMclHiBTTWXNlYjYsA7rDrtsazHG6mglaGSTh0KsrW04qml+Bbz9FL0LcJIRwBWL5ZqlNHKTkU3xAA==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", + "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-exponentiation-operator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.10.4.tgz", - "integrity": "sha512-S5HgLVgkBcRdyQAHbKj+7KyuWx8C6t5oETmUuwz1pt3WTWJhsUV0WIIXuVvfXMxl/QQyHKlSCNNtaIamG8fysw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", + "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", "dev": true, "dependencies": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-for-of": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.10.4.tgz", - "integrity": "sha512-ItdQfAzu9AlEqmusA/65TqJ79eRcgGmpPPFvBnGILXZH975G0LNjP1yjHvGgfuCxqrPPueXOPe+FsvxmxKiHHQ==", + "version": "7.18.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz", + "integrity": "sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-function-name": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.10.4.tgz", - "integrity": "sha512-OcDCq2y5+E0dVD5MagT5X+yTRbcvFjDI2ZVAottGH6tzqjx/LKpgkUepu3hp/u4tZBzxxpNGwLsAvGBvQ2mJzg==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", + "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", "dev": true, "dependencies": { - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-function-name": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-literals": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.10.4.tgz", - "integrity": "sha512-Xd/dFSTEVuUWnyZiMu76/InZxLTYilOSr1UlHV+p115Z/Le2Fi1KXkJUYz0b42DfndostYlPub3m8ZTQlMaiqQ==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", + "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-member-expression-literals": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.10.4.tgz", - "integrity": "sha512-0bFOvPyAoTBhtcJLr9VcwZqKmSjFml1iVxvPL0ReomGU53CX53HsM4h2SzckNdkQcHox1bpAqzxBI1Y09LlBSw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", + "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-modules-amd": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.10.5.tgz", - "integrity": "sha512-elm5uruNio7CTLFItVC/rIzKLfQ17+fX7EVz5W0TMgIHFo1zY0Ozzx+lgwhL4plzl8OzVn6Qasx5DeEFyoNiRw==", + "version": "7.19.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.19.6.tgz", + "integrity": "sha512-uG3od2mXvAtIFQIh0xrpLH6r5fpSQN04gIVovl+ODLdUMANokxQLZnPBHcjmv3GxRjnqwLuHvppjjcelqUFZvg==", "dev": true, "dependencies": { - "@babel/helper-module-transforms": "^7.10.5", - "@babel/helper-plugin-utils": "^7.10.4", - "babel-plugin-dynamic-import-node": "^2.3.3" + "@babel/helper-module-transforms": "^7.19.6", + "@babel/helper-plugin-utils": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.10.4.tgz", - "integrity": "sha512-Xj7Uq5o80HDLlW64rVfDBhao6OX89HKUmb+9vWYaLXBZOma4gA6tw4Ni1O5qVDoZWUV0fxMYA0aYzOawz0l+1w==", + "version": "7.19.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.19.6.tgz", + "integrity": "sha512-8PIa1ym4XRTKuSsOUXqDG0YaOlEuTVvHMe5JCfgBMOtHvJKw/4NGovEGN33viISshG/rZNVrACiBmPQLvWN8xQ==", "dev": true, "dependencies": { - "@babel/helper-module-transforms": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-simple-access": "^7.10.4", - "babel-plugin-dynamic-import-node": "^2.3.3" + "@babel/helper-module-transforms": "^7.19.6", + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/helper-simple-access": "^7.19.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.10.5.tgz", - "integrity": "sha512-f4RLO/OL14/FP1AEbcsWMzpbUz6tssRaeQg11RH1BP/XnPpRoVwgeYViMFacnkaw4k4wjRSjn3ip1Uw9TaXuMw==", + "version": "7.19.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.19.6.tgz", + "integrity": "sha512-fqGLBepcc3kErfR9R3DnVpURmckXP7gj7bAlrTQyBxrigFqszZCkFkcoxzCp2v32XmwXLvbw+8Yq9/b+QqksjQ==", "dev": true, "dependencies": { - "@babel/helper-hoist-variables": "^7.10.4", - "@babel/helper-module-transforms": "^7.10.5", - "@babel/helper-plugin-utils": "^7.10.4", - "babel-plugin-dynamic-import-node": "^2.3.3" + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-module-transforms": "^7.19.6", + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/helper-validator-identifier": "^7.19.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-modules-umd": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.10.4.tgz", - "integrity": "sha512-mohW5q3uAEt8T45YT7Qc5ws6mWgJAaL/8BfWD9Dodo1A3RKWli8wTS+WiQ/knF+tXlPirW/1/MqzzGfCExKECA==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", + "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", "dev": true, "dependencies": { - "@babel/helper-module-transforms": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-module-transforms": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.10.4.tgz", - "integrity": "sha512-V6LuOnD31kTkxQPhKiVYzYC/Jgdq53irJC/xBSmqcNcqFGV+PER4l6rU5SH2Vl7bH9mLDHcc0+l9HUOe4RNGKA==", + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.19.1.tgz", + "integrity": "sha512-oWk9l9WItWBQYS4FgXD4Uyy5kq898lvkXpXQxoJEY1RnvPk4R/Dvu2ebXU9q8lP+rlMwUQTFf2Ok6d78ODa0kw==", "dev": true, "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.10.4" + "@babel/helper-create-regexp-features-plugin": "^7.19.0", + "@babel/helper-plugin-utils": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, "node_modules/@babel/plugin-transform-new-target": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.10.4.tgz", - "integrity": "sha512-YXwWUDAH/J6dlfwqlWsztI2Puz1NtUAubXhOPLQ5gjR/qmQ5U96DY4FQO8At33JN4XPBhrjB8I4eMmLROjjLjw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", + "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-object-super": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.10.4.tgz", - "integrity": "sha512-5iTw0JkdRdJvr7sY0vHqTpnruUpTea32JHmq/atIWqsnNussbRzjEDyWep8UNztt1B5IusBYg8Irb0bLbiEBCQ==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", + "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-replace-supers": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-parameters": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.10.5.tgz", - "integrity": "sha512-xPHwUj5RdFV8l1wuYiu5S9fqWGM2DrYc24TMvUiRrPVm+SM3XeqU9BcokQX/kEUe+p2RBwy+yoiR1w/Blq6ubw==", + "version": "7.20.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.3.tgz", + "integrity": "sha512-oZg/Fpx0YDrj13KsLyO8I/CX3Zdw7z0O9qOd95SqcoIzuqy/WTGWvePeHAnZCN54SfdyjHcb1S30gc8zlzlHcA==", "dev": true, "dependencies": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-property-literals": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.10.4.tgz", - "integrity": "sha512-ofsAcKiUxQ8TY4sScgsGeR2vJIsfrzqvFb9GvJ5UdXDzl+MyYCaBj/FGzXuv7qE0aJcjWMILny1epqelnFlz8g==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", + "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-regenerator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.10.4.tgz", - "integrity": "sha512-3thAHwtor39A7C04XucbMg17RcZ3Qppfxr22wYzZNcVIkPHfpM9J0SO8zuCV6SZa265kxBJSrfKTvDCYqBFXGw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.6.tgz", + "integrity": "sha512-poqRI2+qiSdeldcz4wTSTXBRryoq3Gc70ye7m7UD5Ww0nE29IXqMl6r7Nd15WBgRd74vloEMlShtH6CKxVzfmQ==", "dev": true, "dependencies": { - "regenerator-transform": "^0.14.2" + "@babel/helper-plugin-utils": "^7.18.6", + "regenerator-transform": "^0.15.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-reserved-words": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.10.4.tgz", - "integrity": "sha512-hGsw1O6Rew1fkFbDImZIEqA8GoidwTAilwCyWqLBM9f+e/u/sQMQu7uX6dyokfOayRuuVfKOW4O7HvaBWM+JlQ==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", + "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-shorthand-properties": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.10.4.tgz", - "integrity": "sha512-AC2K/t7o07KeTIxMoHneyX90v3zkm5cjHJEokrPEAGEy3UCp8sLKfnfOIGdZ194fyN4wfX/zZUWT9trJZ0qc+Q==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", + "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-spread": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.11.0.tgz", - "integrity": "sha512-UwQYGOqIdQJe4aWNyS7noqAnN2VbaczPLiEtln+zPowRNlD+79w3oi2TWfYe0eZgd+gjZCbsydN7lzWysDt+gw==", + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.19.0.tgz", + "integrity": "sha512-RsuMk7j6n+r752EtzyScnWkQyuJdli6LdO5Klv8Yx0OfPVTcQkIUfS8clx5e9yHXzlnhOZF3CbQ8C2uP5j074w==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-skip-transparent-expression-wrappers": "^7.11.0" + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-sticky-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.10.4.tgz", - "integrity": "sha512-Ddy3QZfIbEV0VYcVtFDCjeE4xwVTJWTmUtorAJkn6u/92Z/nWJNV+mILyqHKrUxXYKA2EoCilgoPePymKL4DvQ==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", + "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-regex": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-template-literals": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.10.5.tgz", - "integrity": "sha512-V/lnPGIb+KT12OQikDvgSuesRX14ck5FfJXt6+tXhdkJ+Vsd0lDCVtF6jcB4rNClYFzaB2jusZ+lNISDk2mMMw==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", + "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", "dev": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-typeof-symbol": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.10.4.tgz", - "integrity": "sha512-QqNgYwuuW0y0H+kUE/GWSR45t/ccRhe14Fs/4ZRouNNQsyd4o3PG4OtHiIrepbM2WKUBDAXKCAK/Lk4VhzTaGA==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", + "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-unicode-escapes": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.10.4.tgz", - "integrity": "sha512-y5XJ9waMti2J+e7ij20e+aH+fho7Wb7W8rNuu72aKRwCHFqQdhkdU2lo3uZ9tQuboEJcUFayXdARhcxLQ3+6Fg==", + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", + "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-unicode-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.10.4.tgz", - "integrity": "sha512-wNfsc4s8N2qnIwpO/WP2ZiSyjfpTamT2C9V9FDH/Ljub9zw6P3SjkXcFmc0RQUt96k2fmIvtla2MMjgTwIAC+A==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", + "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", "dev": true, "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/polyfill": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.10.4.tgz", - "integrity": "sha512-8BYcnVqQ5kMD2HXoHInBH7H1b/uP3KdnwCYXOqFnXqguOyuu443WXusbIUbWEfY3Z0Txk0M1uG/8YuAMhNl6zg==", + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.12.1.tgz", + "integrity": "sha512-X0pi0V6gxLi6lFZpGmeNa4zxtwEmCs42isWLNjZZDE0Y8yVfgu0T2OAHlzBbdYlqbW/YXVvoBHpATEM+goCj8g==", + "deprecated": "🚨 This package has been deprecated in favor of separate inclusion of a polyfill and regenerator-runtime (when needed). See the @babel/polyfill docs (https://babeljs.io/docs/en/babel-polyfill) for more information.", "dev": true, "dependencies": { "core-js": "^2.6.5", @@ -986,85 +1516,98 @@ } }, "node_modules/@babel/preset-env": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.11.0.tgz", - "integrity": "sha512-2u1/k7rG/gTh02dylX2kL3S0IJNF+J6bfDSp4DI2Ma8QN6Y9x9pmAax59fsCk6QUQG0yqH47yJWA+u1I1LccAg==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.11.0", - "@babel/helper-compilation-targets": "^7.10.4", - "@babel/helper-module-imports": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-proposal-async-generator-functions": "^7.10.4", - "@babel/plugin-proposal-class-properties": "^7.10.4", - "@babel/plugin-proposal-dynamic-import": "^7.10.4", - "@babel/plugin-proposal-export-namespace-from": "^7.10.4", - "@babel/plugin-proposal-json-strings": "^7.10.4", - "@babel/plugin-proposal-logical-assignment-operators": "^7.11.0", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.10.4", - "@babel/plugin-proposal-numeric-separator": "^7.10.4", - "@babel/plugin-proposal-object-rest-spread": "^7.11.0", - "@babel/plugin-proposal-optional-catch-binding": "^7.10.4", - "@babel/plugin-proposal-optional-chaining": "^7.11.0", - "@babel/plugin-proposal-private-methods": "^7.10.4", - "@babel/plugin-proposal-unicode-property-regex": "^7.10.4", - "@babel/plugin-syntax-async-generators": "^7.8.0", - "@babel/plugin-syntax-class-properties": "^7.10.4", - "@babel/plugin-syntax-dynamic-import": "^7.8.0", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.20.2.tgz", + "integrity": "sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.20.1", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-async-generator-functions": "^7.20.1", + "@babel/plugin-proposal-class-properties": "^7.18.6", + "@babel/plugin-proposal-class-static-block": "^7.18.6", + "@babel/plugin-proposal-dynamic-import": "^7.18.6", + "@babel/plugin-proposal-export-namespace-from": "^7.18.9", + "@babel/plugin-proposal-json-strings": "^7.18.6", + "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", + "@babel/plugin-proposal-numeric-separator": "^7.18.6", + "@babel/plugin-proposal-object-rest-spread": "^7.20.2", + "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", + "@babel/plugin-proposal-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-private-methods": "^7.18.6", + "@babel/plugin-proposal-private-property-in-object": "^7.18.6", + "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.0", + "@babel/plugin-syntax-import-assertions": "^7.20.0", + "@babel/plugin-syntax-json-strings": "^7.8.3", "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.0", - "@babel/plugin-syntax-top-level-await": "^7.10.4", - "@babel/plugin-transform-arrow-functions": "^7.10.4", - "@babel/plugin-transform-async-to-generator": "^7.10.4", - "@babel/plugin-transform-block-scoped-functions": "^7.10.4", - "@babel/plugin-transform-block-scoping": "^7.10.4", - "@babel/plugin-transform-classes": "^7.10.4", - "@babel/plugin-transform-computed-properties": "^7.10.4", - "@babel/plugin-transform-destructuring": "^7.10.4", - "@babel/plugin-transform-dotall-regex": "^7.10.4", - "@babel/plugin-transform-duplicate-keys": "^7.10.4", - "@babel/plugin-transform-exponentiation-operator": "^7.10.4", - "@babel/plugin-transform-for-of": "^7.10.4", - "@babel/plugin-transform-function-name": "^7.10.4", - "@babel/plugin-transform-literals": "^7.10.4", - "@babel/plugin-transform-member-expression-literals": "^7.10.4", - "@babel/plugin-transform-modules-amd": "^7.10.4", - "@babel/plugin-transform-modules-commonjs": "^7.10.4", - "@babel/plugin-transform-modules-systemjs": "^7.10.4", - "@babel/plugin-transform-modules-umd": "^7.10.4", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.10.4", - "@babel/plugin-transform-new-target": "^7.10.4", - "@babel/plugin-transform-object-super": "^7.10.4", - "@babel/plugin-transform-parameters": "^7.10.4", - "@babel/plugin-transform-property-literals": "^7.10.4", - "@babel/plugin-transform-regenerator": "^7.10.4", - "@babel/plugin-transform-reserved-words": "^7.10.4", - "@babel/plugin-transform-shorthand-properties": "^7.10.4", - "@babel/plugin-transform-spread": "^7.11.0", - "@babel/plugin-transform-sticky-regex": "^7.10.4", - "@babel/plugin-transform-template-literals": "^7.10.4", - "@babel/plugin-transform-typeof-symbol": "^7.10.4", - "@babel/plugin-transform-unicode-escapes": "^7.10.4", - "@babel/plugin-transform-unicode-regex": "^7.10.4", - "@babel/preset-modules": "^0.1.3", - "@babel/types": "^7.11.0", - "browserslist": "^4.12.0", - "core-js-compat": "^3.6.2", - "invariant": "^2.2.2", - "levenary": "^1.1.1", - "semver": "^5.5.0" + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.18.6", + "@babel/plugin-transform-async-to-generator": "^7.18.6", + "@babel/plugin-transform-block-scoped-functions": "^7.18.6", + "@babel/plugin-transform-block-scoping": "^7.20.2", + "@babel/plugin-transform-classes": "^7.20.2", + "@babel/plugin-transform-computed-properties": "^7.18.9", + "@babel/plugin-transform-destructuring": "^7.20.2", + "@babel/plugin-transform-dotall-regex": "^7.18.6", + "@babel/plugin-transform-duplicate-keys": "^7.18.9", + "@babel/plugin-transform-exponentiation-operator": "^7.18.6", + "@babel/plugin-transform-for-of": "^7.18.8", + "@babel/plugin-transform-function-name": "^7.18.9", + "@babel/plugin-transform-literals": "^7.18.9", + "@babel/plugin-transform-member-expression-literals": "^7.18.6", + "@babel/plugin-transform-modules-amd": "^7.19.6", + "@babel/plugin-transform-modules-commonjs": "^7.19.6", + "@babel/plugin-transform-modules-systemjs": "^7.19.6", + "@babel/plugin-transform-modules-umd": "^7.18.6", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.19.1", + "@babel/plugin-transform-new-target": "^7.18.6", + "@babel/plugin-transform-object-super": "^7.18.6", + "@babel/plugin-transform-parameters": "^7.20.1", + "@babel/plugin-transform-property-literals": "^7.18.6", + "@babel/plugin-transform-regenerator": "^7.18.6", + "@babel/plugin-transform-reserved-words": "^7.18.6", + "@babel/plugin-transform-shorthand-properties": "^7.18.6", + "@babel/plugin-transform-spread": "^7.19.0", + "@babel/plugin-transform-sticky-regex": "^7.18.6", + "@babel/plugin-transform-template-literals": "^7.18.9", + "@babel/plugin-transform-typeof-symbol": "^7.18.9", + "@babel/plugin-transform-unicode-escapes": "^7.18.10", + "@babel/plugin-transform-unicode-regex": "^7.18.6", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.20.2", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "core-js-compat": "^3.25.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/preset-modules": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.3.tgz", - "integrity": "sha512-Ra3JXOHBq2xd56xSF7lMKXdjBn3T772Y1Wet3yWnkDly9zHvJki029tAFzvAAK5cf4YV3yoxuP61crYRol6SVg==", + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.0.0", @@ -1072,6 +1615,9 @@ "@babel/plugin-transform-dotall-regex": "^7.4.4", "@babel/types": "^7.4.4", "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/register": { @@ -1087,12 +1633,15 @@ "mkdirp": "^0.5.1", "pirates": "^4.0.0", "source-map-support": "^0.5.9" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/register/node_modules/find-cache-dir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", - "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "integrity": "sha512-46TFiBOzX7xq/PcSWfFwkyjpemdRnMe31UQF+os0y+1W3k95f6R4SEt02Hj4p3X0Mir9gfrkmOtshFidS0VPUg==", "dev": true, "dependencies": { "commondir": "^1.0.1", @@ -1106,7 +1655,7 @@ "node_modules/@babel/register/node_modules/find-up": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==", "dev": true, "dependencies": { "locate-path": "^2.0.0" @@ -1118,7 +1667,7 @@ "node_modules/@babel/register/node_modules/home-or-tmp": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-3.0.0.tgz", - "integrity": "sha1-V6j+JM8zzdUkhgoVgh3cJchmcfs=", + "integrity": "sha512-pj6ktgQDedSIbzwrC108F9aZadnF2ZJ8mP8QbGq2nLPOmqpdqKWMoU4JPJaFEzpoTl6X/jOwE8BlkTOfVPR98A==", "dev": true, "engines": { "node": ">=4" @@ -1127,7 +1676,7 @@ "node_modules/@babel/register/node_modules/locate-path": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==", "dev": true, "dependencies": { "p-locate": "^2.0.0", @@ -1149,6 +1698,18 @@ "node": ">=4" } }, + "node_modules/@babel/register/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, "node_modules/@babel/register/node_modules/p-limit": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", @@ -1164,7 +1725,7 @@ "node_modules/@babel/register/node_modules/p-locate": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", "dev": true, "dependencies": { "p-limit": "^1.1.0" @@ -1176,16 +1737,16 @@ "node_modules/@babel/register/node_modules/p-try": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", "dev": true, "engines": { "node": ">=4" } }, - "node_modules/@babel/register/node_modules/pify": { + "node_modules/@babel/register/node_modules/path-exists": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", "dev": true, "engines": { "node": ">=4" @@ -1194,7 +1755,7 @@ "node_modules/@babel/register/node_modules/pkg-dir": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "integrity": "sha512-ojakdnUgL5pzJYWw2AIDEupaQCX5OPbM688ZevubICjdIX01PRSYKqm33fJoCOJBRseYCTUlQRnBNX+Pchaejw==", "dev": true, "dependencies": { "find-up": "^2.1.0" @@ -1204,66 +1765,64 @@ } }, "node_modules/@babel/runtime": { - "version": "7.11.2", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.11.2.tgz", - "integrity": "sha512-TeWkU52so0mPtDcaCTxNBI/IHiz0pZgr8VEFqXFtZWpYD08ZB6FaSwVAS8MKRQAP3bYKiVjwysOJgMFY28o6Tw==", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.1.tgz", + "integrity": "sha512-mrzLkl6U9YLF8qpqI7TB82PESyEGjm/0Ly91jG575eVxMMlb8fYfOXFZIJ8XfLrJZQbm7dlKry2bJmXBUEkdFg==", "dev": true, "dependencies": { - "regenerator-runtime": "^0.13.4" + "regenerator-runtime": "^0.13.10" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/template": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz", - "integrity": "sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==", + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", + "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.18.10", + "@babel/types": "^7.18.10" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.11.0.tgz", - "integrity": "sha512-ZB2V+LskoWKNpMq6E5UUCrjtDUh5IOTAyIl0dTjIEoXum/iKWkoIEKIRDnUucO6f+2FzNkE0oD4RLKoPIufDtg==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.11.0", - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/parser": "^7.11.0", - "@babel/types": "^7.11.0", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.1.tgz", + "integrity": "sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.1", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.20.1", + "@babel/types": "^7.20.0", "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.19" - } - }, - "node_modules/@babel/traverse/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/@babel/traverse/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } }, "node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.2.tgz", + "integrity": "sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@cliqz-oss/firefox-client": { @@ -1279,7 +1838,7 @@ "node_modules/@cliqz-oss/firefox-client/node_modules/colors": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/colors/-/colors-0.5.1.tgz", - "integrity": "sha1-fQAj6usVTo7p/Oddy5I9DtFmd3Q=", + "integrity": "sha512-XjsuUwpDeY98+yz959OlUK6m7mLBM+1MEG5oaenfuQnNnrQk1WvtcvFgN3FNDP3f2NmZ211t0mNEfSEN1h0eIg==", "dev": true, "engines": { "node": ">=0.1.90" @@ -1298,88 +1857,128 @@ "node_modules/@cliqz-oss/node-firefox-connect/node_modules/es6-promise": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-2.3.0.tgz", - "integrity": "sha1-lu258v2wGZWCKyY92KratnSBgbw=", + "integrity": "sha512-oyOjMhyKMLEjOOtvkwg0G4pAzLQ9WdbbeX7WdqKzvYXu+UFgD0Zo/Brq5Q49zNmnGPPzV5rmYvrr0jz1zWx8Iw==", + "dev": true + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", "dev": true }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, "node_modules/@octokit/auth-token": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.4.4.tgz", - "integrity": "sha512-LNfGu3Ro9uFAYh10MUZVaT7X2CnNm2C8IDQmabx+3DygYIQjs9FwzFAHN/0t6mu5HEPhxcb1XOuxdpY82vCg2Q==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz", + "integrity": "sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==", "dependencies": { - "@octokit/types": "^6.0.0" + "@octokit/types": "^6.0.3" } }, "node_modules/@octokit/core": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@octokit/core/-/core-3.2.4.tgz", - "integrity": "sha512-d9dTsqdePBqOn7aGkyRFe7pQpCXdibSJ5SFnrTr0axevObZrpz3qkWm7t/NjYv5a66z6vhfteriaq4FRz3e0Qg==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz", + "integrity": "sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q==", "dependencies": { "@octokit/auth-token": "^2.4.4", "@octokit/graphql": "^4.5.8", - "@octokit/request": "^5.4.12", + "@octokit/request": "^5.6.3", + "@octokit/request-error": "^2.0.5", "@octokit/types": "^6.0.3", - "before-after-hook": "^2.1.0", + "before-after-hook": "^2.2.0", "universal-user-agent": "^6.0.0" } }, "node_modules/@octokit/endpoint": { - "version": "6.0.10", - "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.10.tgz", - "integrity": "sha512-9+Xef8nT7OKZglfkOMm7IL6VwxXUQyR7DUSU0LH/F7VNqs8vyd7es5pTfz9E7DwUIx7R3pGscxu1EBhYljyu7Q==", + "version": "6.0.12", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz", + "integrity": "sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==", "dependencies": { - "@octokit/types": "^6.0.0", + "@octokit/types": "^6.0.3", "is-plain-object": "^5.0.0", "universal-user-agent": "^6.0.0" } }, - "node_modules/@octokit/endpoint/node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/@octokit/graphql": { - "version": "4.5.8", - "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.5.8.tgz", - "integrity": "sha512-WnCtNXWOrupfPJgXe+vSmprZJUr0VIu14G58PMlkWGj3cH+KLZEfKMmbUQ6C3Wwx6fdhzVW1CD5RTnBdUHxhhA==", + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.8.0.tgz", + "integrity": "sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg==", "dependencies": { - "@octokit/request": "^5.3.0", - "@octokit/types": "^6.0.0", + "@octokit/request": "^5.6.0", + "@octokit/types": "^6.0.3", "universal-user-agent": "^6.0.0" } }, "node_modules/@octokit/openapi-types": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-2.0.0.tgz", - "integrity": "sha512-J4bfM7lf8oZvEAdpS71oTvC1ofKxfEZgU5vKVwzZKi4QPiL82udjpseJwxPid9Pu2FNmyRQOX4iEj6W1iOSnPw==" + "version": "12.11.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.11.0.tgz", + "integrity": "sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ==" }, "node_modules/@octokit/plugin-paginate-rest": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.6.2.tgz", - "integrity": "sha512-3Dy7/YZAwdOaRpGQoNHPeT0VU1fYLpIUdPyvR37IyFLgd6XSij4j9V/xN/+eSjF2KKvmfIulEh9LF1tRPjIiDA==", + "version": "2.21.3", + "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.21.3.tgz", + "integrity": "sha512-aCZTEf0y2h3OLbrgKkrfFdjRL6eSOo8komneVQJnYecAxIej7Bafor2xhuDJOIFau4pk0i/P28/XgtbyPF0ZHw==", "dependencies": { - "@octokit/types": "^6.0.1" + "@octokit/types": "^6.40.0" }, "peerDependencies": { "@octokit/core": ">=2" } }, "node_modules/@octokit/plugin-request-log": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.2.tgz", - "integrity": "sha512-oTJSNAmBqyDR41uSMunLQKMX0jmEXbwD1fpz8FG27lScV3RhtGfBa1/BBLym+PxcC16IBlF7KH9vP1BUYxA+Eg==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz", + "integrity": "sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==", "peerDependencies": { "@octokit/core": ">=3" } }, "node_modules/@octokit/plugin-rest-endpoint-methods": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-4.4.1.tgz", - "integrity": "sha512-+v5PcvrUcDeFXf8hv1gnNvNLdm4C0+2EiuWt9EatjjUmfriM1pTMM+r4j1lLHxeBQ9bVDmbywb11e3KjuavieA==", + "version": "5.16.2", + "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.16.2.tgz", + "integrity": "sha512-8QFz29Fg5jDuTPXVtey05BLm7OB+M8fnvE64RNegzX7U+5NUXcOcnpTIK0YfSHBg8gYd0oxIq3IZTe9SfPZiRw==", "dependencies": { - "@octokit/types": "^6.1.0", + "@octokit/types": "^6.39.0", "deprecation": "^2.3.1" }, "peerDependencies": { @@ -1387,62 +1986,51 @@ } }, "node_modules/@octokit/request": { - "version": "5.4.12", - "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.4.12.tgz", - "integrity": "sha512-MvWYdxengUWTGFpfpefBBpVmmEYfkwMoxonIB3sUGp5rhdgwjXL1ejo6JbgzG/QD9B/NYt/9cJX1pxXeSIUCkg==", + "version": "5.6.3", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz", + "integrity": "sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A==", "dependencies": { "@octokit/endpoint": "^6.0.1", - "@octokit/request-error": "^2.0.0", - "@octokit/types": "^6.0.3", - "deprecation": "^2.0.0", + "@octokit/request-error": "^2.1.0", + "@octokit/types": "^6.16.1", "is-plain-object": "^5.0.0", - "node-fetch": "^2.6.1", - "once": "^1.4.0", + "node-fetch": "^2.6.7", "universal-user-agent": "^6.0.0" } }, "node_modules/@octokit/request-error": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.0.4.tgz", - "integrity": "sha512-LjkSiTbsxIErBiRh5wSZvpZqT4t0/c9+4dOe0PII+6jXR+oj/h66s7E4a/MghV7iT8W9ffoQ5Skoxzs96+gBPA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz", + "integrity": "sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==", "dependencies": { - "@octokit/types": "^6.0.0", + "@octokit/types": "^6.0.3", "deprecation": "^2.0.0", "once": "^1.4.0" } }, - "node_modules/@octokit/request/node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/@octokit/rest": { - "version": "18.0.12", - "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-18.0.12.tgz", - "integrity": "sha512-hNRCZfKPpeaIjOVuNJzkEL6zacfZlBPV8vw8ReNeyUkVvbuCvvrrx8K8Gw2eyHHsmd4dPlAxIXIZ9oHhJfkJpw==", + "version": "18.12.0", + "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-18.12.0.tgz", + "integrity": "sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q==", "dependencies": { - "@octokit/core": "^3.2.3", - "@octokit/plugin-paginate-rest": "^2.6.2", - "@octokit/plugin-request-log": "^1.0.2", - "@octokit/plugin-rest-endpoint-methods": "4.4.1" + "@octokit/core": "^3.5.1", + "@octokit/plugin-paginate-rest": "^2.16.8", + "@octokit/plugin-request-log": "^1.0.4", + "@octokit/plugin-rest-endpoint-methods": "^5.12.0" } }, "node_modules/@octokit/types": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.1.1.tgz", - "integrity": "sha512-btm3D6S7VkRrgyYF31etUtVY/eQ1KzrNRqhFt25KSe2mKlXuLXJilglRC6eDA2P6ou94BUnk/Kz5MPEolXgoiw==", + "version": "6.41.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz", + "integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==", "dependencies": { - "@octokit/openapi-types": "^2.0.0", - "@types/node": ">= 8" + "@octokit/openapi-types": "^12.11.0" } }, "node_modules/@sinonjs/commons": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.1.tgz", - "integrity": "sha512-892K+kWUUi3cl+LlqEWIDrhvLgdL79tECi8JZUyq6IviKy/DNhuzCRlbHUjxK89f4ypPMMaFnFuR9Ie6DoIMsw==", + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.5.tgz", + "integrity": "sha512-rTpCA0wG1wUxglBSFdMMY0oTrKYvgf4fNgv/sXbfCVAdf+FnPBdKJR/7XbpTCwbCrvCbdPYnlWaUUYz4V2fPDA==", "dev": true, "dependencies": { "type-detect": "4.0.8" @@ -1469,34 +2057,35 @@ } }, "node_modules/@sinonjs/text-encoding": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", - "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz", + "integrity": "sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==", "dev": true }, "node_modules/@types/babel-types": { - "version": "7.0.8", - "resolved": "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.8.tgz", - "integrity": "sha512-jvu8g4LR7+p6ao30RhTREnEhHxmP4/R9D9/rOR/Kq14FztORty9SKgtOZUNZNMB9CXLxZ54EWu4dArUE8WdTsw==" + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.11.tgz", + "integrity": "sha512-pkPtJUUY+Vwv6B1inAz55rQvivClHJxc9aVEPPmaq2cbyeMLCiDpbKpcKyX4LAwpNGi+SHBv0tHv6+0gXv0P2A==" }, "node_modules/@types/babylon": { - "version": "6.16.5", - "resolved": "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.5.tgz", - "integrity": "sha512-xH2e58elpj1X4ynnKp9qSnWlsRTIs6n3tgLGNfwAGHwePw0mulHQllV34n0T25uYSu1k0hRKkWXF890B1yS47w==", + "version": "6.16.6", + "resolved": "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.6.tgz", + "integrity": "sha512-G4yqdVlhr6YhzLXFKy5F7HtRBU8Y23+iWy7UKthMq/OSQnL1hbsoeXESQ2LY8zEDlknipDG3nRGhUC9tkwvy/w==", "dependencies": { "@types/babel-types": "*" } }, "node_modules/@types/json-schema": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.5.tgz", - "integrity": "sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ==", + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", "dev": true }, "node_modules/@types/node": { - "version": "14.0.27", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.27.tgz", - "integrity": "sha512-kVrqXhbclHNHGu9ztnAwSncIgJv/FaxmzXJvGXNdcCpV1b8u1/Mi6z6m0vwy0LzKeXFTPLH0NzwmoJ3fNCIq0g==" + "version": "18.11.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.9.tgz", + "integrity": "sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==", + "dev": true }, "node_modules/@webassemblyjs/ast": { "version": "1.9.0", @@ -1697,21 +2286,21 @@ "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, "node_modules/accepts": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", - "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", "dependencies": { - "mime-types": "~2.1.24", - "negotiator": "0.6.2" + "mime-types": "~2.1.34", + "negotiator": "0.6.3" }, "engines": { "node": ">= 0.6" } }, "node_modules/acorn": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", - "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", + "version": "4.0.13", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", + "integrity": "sha512-fu2ygVGuMmlzG8ZeRJ0bvR41nsAkxxhbyk8bZ1SS521Z7vmgJFTQQlfz/Mp/nJexGBz+v8sC9bM6+lNgskt4Ug==", "bin": { "acorn": "bin/acorn" }, @@ -1722,15 +2311,25 @@ "node_modules/acorn-globals": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz", - "integrity": "sha1-/YJw9x+7SZawBPqIDuXUZXOnMb8=", + "integrity": "sha512-uWttZCk96+7itPxK8xCzY86PnxKTMrReKDqrHzv42VQY0K30PUO8WY13WMOuI+cOdX4EIdzdvQ8k6jkuGRFMYw==", "dependencies": { "acorn": "^4.0.4" } }, - "node_modules/acorn-globals/node_modules/acorn": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", - "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", + "node_modules/acorn-jsx": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", + "integrity": "sha512-AU7pnZkguthwBjKgCg6998ByQNIMjbuDQZ8bb78QAFZwPfmKia8AIzgY/gWgqCjnht8JLdXmB4YxA0KaV60ncQ==", + "dev": true, + "dependencies": { + "acorn": "^3.0.4" + } + }, + "node_modules/acorn-jsx/node_modules/acorn": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", + "integrity": "sha512-OLUyIIZ7mF5oaAUT1w0TFqQS81q3saT46x8t7ukpPjMNk+nbs4ZHhs7ToV8EWnLYLepjETXd4XaCE4uxkMeqUw==", + "dev": true, "bin": { "acorn": "bin/acorn" }, @@ -1738,12 +2337,6 @@ "node": ">=0.4.0" } }, - "node_modules/acorn-jsx": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", - "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", - "dev": true - }, "node_modules/adbkit": { "version": "2.11.0", "resolved": "https://registry.npmjs.org/adbkit/-/adbkit-2.11.0.tgz", @@ -1768,7 +2361,7 @@ "node_modules/adbkit-logcat": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/adbkit-logcat/-/adbkit-logcat-1.1.0.tgz", - "integrity": "sha1-Adf5sM75CTowvLOwB+//MBUIli8=", + "integrity": "sha512-57iYRLdjmhI1fnc890KyflzWpnIb/aq5ET3fbn3axdyyeyKeP4Ji/GhnfBNguG1Tw7SQRL2eBnA+hvbwIsTtNg==", "dev": true, "engines": { "node": ">= 0.10.4" @@ -1777,7 +2370,7 @@ "node_modules/adbkit-monkey": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/adbkit-monkey/-/adbkit-monkey-1.0.1.tgz", - "integrity": "sha1-8pG+cBou/FZ6Y/x6pq/N7TFDC+E=", + "integrity": "sha512-uU8p+p4sv7gLsjO/At4iPufoPD3R16kVbzDVecdIerR9RzhEK6PcyAJghdOXwrYKbhm7SmPQWsxVRloDBMINDA==", "dev": true, "dependencies": { "async": "~0.2.9" @@ -1789,13 +2382,28 @@ "node_modules/adbkit-monkey/node_modules/async": { "version": "0.2.10", "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", - "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=", + "integrity": "sha512-eAkdoKxU6/LkKDBzLpT+t6Ff5EtfSF4wx1WfJiPEEV7WNLnDaRXk0oVysiEPm262roaachGexwUv94WhSgN5TQ==", "dev": true }, "node_modules/adbkit/node_modules/bluebird": { "version": "2.9.34", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-2.9.34.tgz", - "integrity": "sha1-L3tOyAIWMoqf3evfacjUlC/v99g=", + "integrity": "sha512-ZDzCb87X7/IP1uzQ5eJZB+WoQRGTnKL5DHWvPw6kkMbQseouiQIrEi3P1UGE0D1k0N5/+aP/5GMCyHZ1xYJyHQ==", + "dev": true + }, + "node_modules/adbkit/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/adbkit/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, "node_modules/adbkit/node_modules/node-forge": { @@ -1864,6 +2472,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.0.0.tgz", "integrity": "sha512-dnrMRkyyr74CRelJwvgnnSUDh2ge2NCTyHVwpOdvRMHtJUyxLtMAfhBN3s64pY41zdw0kgiLPh6S20eb1NcX6Q==", + "deprecated": "🚨 This package has been deprecated in favor of separate inclusion of a polyfill and regenerator-runtime (when needed). See the @babel/polyfill docs (https://babeljs.io/docs/en/babel-polyfill) for more information.", "dev": true, "dependencies": { "core-js": "^2.5.7", @@ -1883,18 +2492,9 @@ } }, "node_modules/addons-linter/node_modules/ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/addons-linter/node_modules/camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", "dev": true, "engines": { "node": ">=4" @@ -1925,22 +2525,10 @@ "wrap-ansi": "^2.0.0" } }, - "node_modules/addons-linter/node_modules/decamelize": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", - "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", - "dev": true, - "dependencies": { - "xregexp": "4.0.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/addons-linter/node_modules/esprima": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", + "integrity": "sha512-AWwVMNxwhN8+NIPQzAQZCm7RkLC4RbM3B1OobMuyp3i+w73X57KCKaVIxaRZb+DYCojq7rspo+fmuQfAboyhFg==", "dev": true, "bin": { "esparse": "bin/esparse.js", @@ -1953,9 +2541,21 @@ "node_modules/addons-linter/node_modules/fast-deep-equal": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "integrity": "sha512-bCK/2Z4zLidyB4ReuIsvALH6w31YfAQDmXMqMx6FyfHqvBxtjC0eRumeSu4Bs3XtXwpyIywtSTrVT99BxY1f9w==", "dev": true }, + "node_modules/addons-linter/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/addons-linter/node_modules/glob": { "version": "7.1.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", @@ -1973,6 +2573,40 @@ "node": "*" } }, + "node_modules/addons-linter/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/addons-linter/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/addons-linter/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/addons-linter/node_modules/regenerator-runtime": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", @@ -2010,7 +2644,7 @@ "node_modules/addons-linter/node_modules/strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", "dev": true, "dependencies": { "ansi-regex": "^3.0.0" @@ -2019,12 +2653,32 @@ "node": ">=4" } }, - "node_modules/addons-linter/node_modules/xregexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", - "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", + "node_modules/addons-linter/node_modules/tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/addons-linter/node_modules/webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", "dev": true }, + "node_modules/addons-linter/node_modules/whatwg-url": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.0.0.tgz", + "integrity": "sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ==", + "dev": true, + "dependencies": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + }, "node_modules/addons-linter/node_modules/yargs": { "version": "12.0.2", "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.2.tgz", @@ -2045,19 +2699,10 @@ "yargs-parser": "^10.1.0" } }, - "node_modules/addons-linter/node_modules/yargs-parser": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", - "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", - "dev": true, - "dependencies": { - "camelcase": "^4.1.0" - } - }, "node_modules/addons-linter/node_modules/yauzl": { "version": "2.9.2", "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.9.2.tgz", - "integrity": "sha1-T7G8euH8L1cDe1SvasyP4QMcW3c=", + "integrity": "sha512-yyeepe1mQuFKOWHNhvnLzoPPyjjunG8XY/BtRIFAcyyYe4w24diqUHnR4T+ZzfhH/Vas/wk3uClYNgu+GKLYhg==", "dev": true, "dependencies": { "buffer-crc32": "~0.2.3", @@ -2086,28 +2731,38 @@ } }, "node_modules/ajv": { - "version": "6.12.3", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.3.tgz", - "integrity": "sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA==", + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, "node_modules/ajv-errors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "dev": true + "dev": true, + "peerDependencies": { + "ajv": ">=5.0.0" + } }, "node_modules/ajv-keywords": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } }, "node_modules/ajv-merge-patch": { "version": "4.1.0", @@ -2117,12 +2772,15 @@ "dependencies": { "fast-json-patch": "^2.0.6", "json-merge-patch": "^0.2.3" + }, + "peerDependencies": { + "ajv": ">=6.0.0" } }, "node_modules/align-text": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", - "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", + "integrity": "sha512-GrTZLRpmp6wIC2ztrWW9MjjTgSKccffgFagbNDOX95/dcjEcYZibYTeaOntySQLcdw1ztBoFkviiUvTMbb9MYg==", "dependencies": { "kind-of": "^3.0.2", "longest": "^1.0.1", @@ -2135,7 +2793,7 @@ "node_modules/align-text/node_modules/kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dependencies": { "is-buffer": "^1.1.5" }, @@ -2143,19 +2801,10 @@ "node": ">=0.10.0" } }, - "node_modules/amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", - "dev": true, - "engines": { - "node": ">=0.4.2" - } - }, "node_modules/ansi-align": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", - "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", + "integrity": "sha512-TdlOggdA/zURfMYa7ABC66j+oqfMew58KpJMbUlH3bcZP1b+cBHIHDDn5uH9INsxrHBPjsqM0tDB4jPTF/vgJA==", "dev": true, "dependencies": { "string-width": "^2.0.0" @@ -2173,7 +2822,7 @@ "node_modules/ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -2194,13 +2843,13 @@ "node_modules/ansicolors": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz", - "integrity": "sha1-ZlWX3oap/+Oqm/vmyuXG6kJrSXk=", + "integrity": "sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==", "dev": true }, "node_modules/any-promise": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", - "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", "dev": true }, "node_modules/anymatch": { @@ -2222,7 +2871,7 @@ "node_modules/archiver": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/archiver/-/archiver-1.3.0.tgz", - "integrity": "sha1-TyGU1tj5nfP1MeaIHxTxXVX6ryI=", + "integrity": "sha512-4q/CtGPNVyC5aT9eYHhFP7SAEjKYzQIDIJWXfexUIPNxitNs1y6hORdX+sYxERSZ6qPeNNBJ5UolFsJdWTU02g==", "dev": true, "dependencies": { "archiver-utils": "^1.3.0", @@ -2242,7 +2891,7 @@ "node_modules/archiver-utils": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-1.3.0.tgz", - "integrity": "sha1-5QtMCccL89aA4y/xt5lOn52JUXQ=", + "integrity": "sha512-h+hTREBXcW5e1L9RihGXdH4PHHdGipG/jE2sMZrqIH6BmZAxeGU5IWjVsKhokdCSWX7km6Kkh406zZNEElHFPQ==", "dev": true, "dependencies": { "glob": "^7.0.0", @@ -2257,9 +2906,9 @@ } }, "node_modules/archiver/node_modules/async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", "dev": true, "dependencies": { "lodash": "^4.17.14" @@ -2268,7 +2917,7 @@ "node_modules/archy": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", - "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", + "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", "dev": true }, "node_modules/argparse": { @@ -2279,15 +2928,10 @@ "sprintf-js": "~1.0.2" } }, - "node_modules/argparse/node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" - }, "node_modules/arr-diff": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -2305,7 +2949,7 @@ "node_modules/arr-union": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", "dev": true, "engines": { "node": ">=0.10.0" @@ -2314,7 +2958,7 @@ "node_modules/array-differ": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", - "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", + "integrity": "sha512-LeZY+DZDRnvP7eMuQ6LHfCzUGxAAIViUBliK24P3hWXL6y4SortgR6Nim6xrkfSLlmH0+k+9NYNwVC2s53ZrYQ==", "dev": true, "engines": { "node": ">=0.10.0" @@ -2323,7 +2967,7 @@ "node_modules/array-each": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", - "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=", + "integrity": "sha512-zHjL5SZa68hkKHBFBK6DJCTtr9sfTCPCaph/L7tMSLcTFgy+zX7E+6q5UArbtOtMBCtxdICpfTCspRse+ywyXA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -2332,30 +2976,33 @@ "node_modules/array-filter": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", - "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=", + "integrity": "sha512-VW0FpCIhjZdarWjIz8Vpva7U95fl2Jn+b+mmFFMLn8PIVscOQcAgEznwUzTEuUHuqZqIxwzRlcaN/urTFFQoiw==", "dev": true }, "node_modules/array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" }, "node_modules/array-from": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", - "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", + "integrity": "sha512-GQTc6Uupx1FCavi5mPzBvVT7nEOeWMmUA9P95wpfpW1XwMSKs+KaymD5C2Up7KAUKg/mYwbsUYzdZWcoajlNZg==", "dev": true }, "node_modules/array-map": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz", - "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=", - "dev": true + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.1.tgz", + "integrity": "sha512-sxHIeJTGEsRC8/hYkZzdJNNPZ41EXHVys7pqMw1iwE/Kx8/hto0UbDuGQsSJ0ujPovj9qUZl6EOY/EiZ2g3d9Q==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/array-reduce": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz", - "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=", + "integrity": "sha512-8jR+StqaC636u7h3ye1co3lQRefgVVUQUhuAmRbDqIMeR2yuXzRvkCNQiQ5J/wbREmoBLNtp13dhaaVpZQDRUw==", "dev": true }, "node_modules/array-slice": { @@ -2370,7 +3017,7 @@ "node_modules/array-union": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "integrity": "sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==", "dev": true, "dependencies": { "array-uniq": "^1.0.1" @@ -2382,7 +3029,7 @@ "node_modules/array-uniq": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==", "dev": true, "engines": { "node": ">=0.10.0" @@ -2391,7 +3038,7 @@ "node_modules/array-unique": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==", "dev": true, "engines": { "node": ">=0.10.0" @@ -2400,7 +3047,7 @@ "node_modules/arrify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -2409,29 +3056,30 @@ "node_modules/asap": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" }, "node_modules/asn1": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", - "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=", + "integrity": "sha512-6i37w/+EhlWlGUJff3T/Q8u1RGmP5wgbiwYnOnbOqvtrPxT63/sYFyP9RcpxtxGymtfA075IvmOnL7ycNOWl3w==", "dev": true }, "node_modules/asn1.js": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", - "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", "dev": true, "dependencies": { "bn.js": "^4.0.0", "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" } }, "node_modules/asn1.js/node_modules/bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true }, "node_modules/assert": { @@ -2447,7 +3095,7 @@ "node_modules/assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", "dev": true, "engines": { "node": ">=0.8" @@ -2456,13 +3104,13 @@ "node_modules/assert/node_modules/inherits": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "integrity": "sha512-8nWq2nLTAwd02jTqJExUYFSD/fKq6VH9Y/oG2accc/kdI0V98Bag8d5a4gi3XHz73rDWa2PvTtvcWYquKqSENA==", "dev": true }, "node_modules/assert/node_modules/util": { "version": "0.10.3", "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "integrity": "sha512-5KiHfsmkqacuKjkRkdV7SsfDJ2EGiPsK92s2MhNSY0craxjTdKTtqKsJaCWp4LW33ZZ0OPUv1WO/TFvNQRiQxQ==", "dev": true, "dependencies": { "inherits": "2.0.1" @@ -2480,17 +3128,20 @@ "node_modules/assign-symbols": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "integrity": "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/ast-types": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.3.tgz", - "integrity": "sha512-XTZ7xGML849LkQP86sWdQzfhwbt3YwIO6MqbX9mUNYY98VKaaVZP7YNNm70IpwecbkkxmfC5IYAzOQ/2p29zRA==", + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.14.2.tgz", + "integrity": "sha512-O0yuUDnZeQDL+ncNGlJ78BiO4jnYI3bvMsD5prT0/nsgijG/LpNBIr63gTjVTNsiGkgQhiyCShTgxt8oXOrklA==", "dev": true, + "dependencies": { + "tslib": "^2.0.1" + }, "engines": { "node": ">=4" } @@ -2498,7 +3149,7 @@ "node_modules/async": { "version": "1.5.2", "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "integrity": "sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w==", "dev": true }, "node_modules/async-each": { @@ -2516,7 +3167,7 @@ "node_modules/asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", "dev": true }, "node_modules/atob": { @@ -2534,22 +3185,22 @@ "node_modules/aws-sign2": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", "dev": true, "engines": { "node": "*" } }, "node_modules/aws4": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.0.tgz", - "integrity": "sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA==", + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", "dev": true }, "node_modules/babel-code-frame": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "integrity": "sha512-XqYMR2dfdGMW+hd0IUZ2PwK+fGeFkOxZJ0wY+JaQAHzt1Zx8LcvpiZD2NiGkEG8qx0CfkAOr5xt76d1e8vG90g==", "dev": true, "dependencies": { "chalk": "^1.1.3", @@ -2560,7 +3211,7 @@ "node_modules/babel-code-frame/node_modules/ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -2569,7 +3220,7 @@ "node_modules/babel-code-frame/node_modules/chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dev": true, "dependencies": { "ansi-styles": "^2.2.1", @@ -2585,13 +3236,13 @@ "node_modules/babel-code-frame/node_modules/js-tokens": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "integrity": "sha512-RjTcuD4xjtthQkaWH7dFlH85L+QaVtSoOyGdZ3g6HFhS9dFNDfLyqgm2NFe2X6cQpeFmt0452FJjFG5UameExg==", "dev": true }, "node_modules/babel-code-frame/node_modules/supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "dev": true, "engines": { "node": ">=0.8.0" @@ -2624,15 +3275,30 @@ "source-map": "^0.5.7" } }, + "node_modules/babel-core/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, "node_modules/babel-core/node_modules/json5": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "integrity": "sha512-4xrs1aW+6N5DalkqSVA8fxh458CXvR99WU8WLKmq4v8eWAL86Xo3BVqyd3SkA9wEVjCMqyvvRRkshAdOnBp5rw==", "dev": true, "bin": { "json5": "lib/cli.js" } }, + "node_modules/babel-core/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "node_modules/babel-generator": { "version": "6.26.1", "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", @@ -2652,7 +3318,7 @@ "node_modules/babel-generator/node_modules/jsesc": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", - "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", + "integrity": "sha512-Mke0DA0QjUWuJlhsE0ZPPhYiJkRap642SmI/4ztCFaUs6V2AiH1sfecc+57NgaryfAA2VR3v6O+CSjC1jZJKOA==", "dev": true, "bin": { "jsesc": "bin/jsesc" @@ -2661,7 +3327,7 @@ "node_modules/babel-helper-function-name": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", - "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", + "integrity": "sha512-Oo6+e2iX+o9eVvJ9Y5eKL5iryeRdsIkwRYheCuhYdVHsdEQysbc2z2QkqCLIYnNxkT5Ss3ggrHdXiDI7Dhrn4Q==", "dev": true, "dependencies": { "babel-helper-get-function-arity": "^6.24.1", @@ -2674,7 +3340,7 @@ "node_modules/babel-helper-get-function-arity": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", - "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", + "integrity": "sha512-WfgKFX6swFB1jS2vo+DwivRN4NB8XUdM3ij0Y1gnC21y1tdBoe6xjVnd7NSI6alv+gZXCtJqvrTeMW3fR/c0ng==", "dev": true, "dependencies": { "babel-runtime": "^6.22.0", @@ -2684,7 +3350,7 @@ "node_modules/babel-helper-remap-async-to-generator": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", - "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", + "integrity": "sha512-RYqaPD0mQyQIFRu7Ho5wE2yvA/5jxqCIj/Lv4BXNq23mHYu/vxikOy2JueLiBxQknwapwrJeNCesvY0ZcfnlHg==", "dev": true, "dependencies": { "babel-helper-function-name": "^6.24.1", @@ -2697,7 +3363,7 @@ "node_modules/babel-helpers": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", - "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", + "integrity": "sha512-n7pFrqQm44TCYvrCDb0MqabAF+JUBq+ijBvNMUxpkLjJaAu32faIexewMumrH5KLLJ1HDyT0PTEqRyAe/GwwuQ==", "dev": true, "dependencies": { "babel-runtime": "^6.22.0", @@ -2705,49 +3371,82 @@ } }, "node_modules/babel-loader": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.1.0.tgz", - "integrity": "sha512-7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz", + "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==", "dev": true, "dependencies": { - "find-cache-dir": "^2.1.0", - "loader-utils": "^1.4.0", - "mkdirp": "^0.5.3", - "pify": "^4.0.1", + "find-cache-dir": "^3.3.1", + "loader-utils": "^2.0.0", + "make-dir": "^3.1.0", "schema-utils": "^2.6.5" }, "engines": { - "node": ">= 6.9" + "node": ">= 8.9" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "webpack": ">=2" } }, "node_modules/babel-messages": { "version": "6.23.0", "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "integrity": "sha512-Bl3ZiA+LjqaMtNYopA9TYE9HP1tQ+E5dLxE0XrAzcIJeK2UqF0/EaqXwBn9esd4UmTfEab+P+UYQ1GnioFIb/w==", "dev": true, "dependencies": { "babel-runtime": "^6.22.0" } }, - "node_modules/babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", + "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.17.7", + "@babel/helper-define-polyfill-provider": "^0.3.3", + "semver": "^6.1.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", + "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", "dev": true, "dependencies": { - "object.assign": "^4.1.0" + "@babel/helper-define-polyfill-provider": "^0.3.3", + "core-js-compat": "^3.25.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", + "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/babel-plugin-syntax-async-functions": { "version": "6.13.0", "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", - "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", + "integrity": "sha512-4Zp4unmHgw30A1eWI5EpACji2qMocisdXhAftfhXoSV9j0Tvj6nRFE3tOmRY912E0FMRm/L5xWE7MGVT2FoLnw==", "dev": true }, "node_modules/babel-plugin-transform-async-to-generator": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", - "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", + "integrity": "sha512-7BgYJujNCg0Ti3x0c/DL3tStvnKS6ktIYOmo9wginv/dfZOrbSZ+qG4IRRHMBOzZ5Awb1skTiAsQXg/+IWkZYw==", "dev": true, "dependencies": { "babel-helper-remap-async-to-generator": "^6.24.1", @@ -2758,7 +3457,7 @@ "node_modules/babel-polyfill": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", - "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", + "integrity": "sha512-F2rZGQnAdaHWQ8YAoeRbukc7HS9QgdgeyJ0rQDd485v9opwuPvjpPFcOOT/WmkKTdgy9ESgSPXDcTNpzrGr6iQ==", "dev": true, "dependencies": { "babel-runtime": "^6.26.0", @@ -2769,13 +3468,13 @@ "node_modules/babel-polyfill/node_modules/regenerator-runtime": { "version": "0.10.5", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", - "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=", + "integrity": "sha512-02YopEIhAgiBHWeoTiA8aitHDt8z6w+rQqNuIftlM+ZtvSl/brTouaU7DW6GO/cHtvxJvS4Hwv2ibKdxIRi24w==", "dev": true }, "node_modules/babel-register": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", - "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", + "integrity": "sha512-veliHlHX06wjaeY8xNITbveXSiI+ASFnOqvne/LaIJIqOWi2Ogmj91KOugEz/hoh/fwMhXNBJPCv8Xaz5CyM4A==", "dev": true, "dependencies": { "babel-core": "^6.26.0", @@ -2787,6 +3486,18 @@ "source-map-support": "^0.4.15" } }, + "node_modules/babel-register/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, "node_modules/babel-register/node_modules/source-map-support": { "version": "0.4.18", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", @@ -2799,7 +3510,7 @@ "node_modules/babel-runtime": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "integrity": "sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==", "dependencies": { "core-js": "^2.4.0", "regenerator-runtime": "^0.11.0" @@ -2813,7 +3524,7 @@ "node_modules/babel-template": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", - "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "integrity": "sha512-PCOcLFW7/eazGUKIoqH97sO9A2UYMahsn/yRQ7uOk37iutwjq7ODtcTNF+iFDSHNfkctqsLRjLP7URnOx0T1fg==", "dev": true, "dependencies": { "babel-runtime": "^6.26.0", @@ -2826,7 +3537,7 @@ "node_modules/babel-traverse": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", - "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "integrity": "sha512-iSxeXx7apsjCHe9c7n8VtRXGzI2Bk1rBSOJgCCjfyXb6v1aCqE1KSEpq/8SXuVN8Ka/Rh1WDTF0MDzkvTA4MIA==", "dev": true, "dependencies": { "babel-code-frame": "^6.26.0", @@ -2840,6 +3551,15 @@ "lodash": "^4.17.4" } }, + "node_modules/babel-traverse/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, "node_modules/babel-traverse/node_modules/globals": { "version": "9.18.0", "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", @@ -2849,10 +3569,16 @@ "node": ">=0.10.0" } }, + "node_modules/babel-traverse/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "node_modules/babel-types": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "integrity": "sha512-zhe3V/26rCWsEZK8kZN+HaQj5yQ1CilTObixFzKW1UWjqG7618Twz6YEsCnjfg5gBcJh02DrpCkS9h98ZqDY+g==", "dependencies": { "babel-runtime": "^6.26.0", "esutils": "^2.0.2", @@ -2863,7 +3589,7 @@ "node_modules/babel-types/node_modules/to-fast-properties": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "integrity": "sha512-lxrWP8ejsq+7E3nNjwYmUBMAgjMTZoTI+sdBOpvNyijeDLa29LUn9QaoXAHv4+Z578hbmHHJKZknzxVtvo77og==", "engines": { "node": ">=0.10.0" } @@ -2877,9 +3603,9 @@ } }, "node_modules/balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, "node_modules/base": { @@ -2903,7 +3629,7 @@ "node_modules/base/node_modules/define-property": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", "dev": true, "dependencies": { "is-descriptor": "^1.0.0" @@ -2912,49 +3638,25 @@ "node": ">=0.10.0" } }, - "node_modules/base/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/base/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/base/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/base64-js": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", - "dev": true + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, "node_modules/base64url": { "version": "3.0.1", @@ -2977,25 +3679,31 @@ "node": ">= 0.8" } }, + "node_modules/basic-auth/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "node_modules/batch": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", "dev": true }, "node_modules/bcrypt-pbkdf": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", "dev": true, "dependencies": { "tweetnacl": "^0.14.3" } }, "node_modules/before-after-hook": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.1.0.tgz", - "integrity": "sha512-IWIbu7pMqyw3EAJHzzHbWa85b6oud/yfKYg5rqB5hNE8CeMi3nX+2C2sj0HswfblST86hpVEOAb9x34NZd6P7A==" + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", + "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==" }, "node_modules/big.js": { "version": "5.2.2", @@ -3042,15 +3750,15 @@ "dev": true }, "node_modules/bn.js": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.2.tgz", - "integrity": "sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", "dev": true }, "node_modules/body": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/body/-/body-5.1.0.tgz", - "integrity": "sha1-5LoM5BCkaTYyM2dgnstOZVMSUGk=", + "integrity": "sha512-chUsBxGRtuElD6fmw1gHLpvnKdVLK302peeFa9ZqAEk8TyzZ3fygLyUEDDPTJvL9+Bor0dIwn6ePOsRM2y0zQQ==", "dev": true, "dependencies": { "continuable-cache": "^0.3.1", @@ -3060,35 +3768,51 @@ } }, "node_modules/body-parser": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", - "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", "dependencies": { - "bytes": "3.1.0", + "bytes": "3.1.2", "content-type": "~1.0.4", "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.7.2", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.7.0", - "raw-body": "2.4.0", - "type-is": "~1.6.17" + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" }, "engines": { - "node": ">= 0.8" + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" } }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, "node_modules/body/node_modules/bytes": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz", - "integrity": "sha1-NWnt6Lo0MV+rmcPpLLBMciDeH6g=", + "integrity": "sha512-/x68VkHLeTl3/Ll8IvxdwzhrT+IyKc52e/oyHhA2RwqPqswSnjVbSddfPRwAsJtbilMAPSRWwAlpxdYsSWOTKQ==", "dev": true }, "node_modules/body/node_modules/raw-body": { "version": "1.1.7", "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-1.1.7.tgz", - "integrity": "sha1-HQJ8K/oRasxmI7yo8AAWVyqH1CU=", + "integrity": "sha512-WmJJU2e9Y6M5UzTOkHaM7xJGAPQD8PNzx3bAd2+uhZAim6wDk6dAZxPVYLF67XhbR4hmKGh33Lpmh4XWrCH5Mg==", "dev": true, "dependencies": { "bytes": "1", @@ -3098,10 +3822,16 @@ "node": ">= 0.8.0" } }, + "node_modules/body/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true + }, "node_modules/boolbase": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", "dev": true }, "node_modules/bootstrap": { @@ -3137,15 +3867,6 @@ "node": ">=4" } }, - "node_modules/boxen/node_modules/camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -3177,22 +3898,10 @@ "node": ">=0.10.0" } }, - "node_modules/braces/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/brorand": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==", "dev": true }, "node_modules/browser-stdout": { @@ -3239,21 +3948,15 @@ } }, "node_modules/browserify-rsa": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", "dev": true, "dependencies": { - "bn.js": "^4.1.0", + "bn.js": "^5.0.0", "randombytes": "^2.0.1" } }, - "node_modules/browserify-rsa/node_modules/bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - }, "node_modules/browserify-sign": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", @@ -3271,12 +3974,6 @@ "safe-buffer": "^5.2.0" } }, - "node_modules/browserify-sign/node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, "node_modules/browserify-sign/node_modules/readable-stream": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", @@ -3291,21 +3988,6 @@ "node": ">= 6" } }, - "node_modules/browserify-sign/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "node_modules/browserify-sign/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, "node_modules/browserify-zlib": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", @@ -3316,15 +3998,25 @@ } }, "node_modules/browserslist": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.13.0.tgz", - "integrity": "sha512-MINatJ5ZNrLnQ6blGvePd/QOz9Xtu+Ne+x29iQSCHfkU5BugKVJwZKn/iiL8UbpIpa3JhviKjz+XxMo0m2caFQ==", - "dev": true, + "version": "4.21.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", + "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], "dependencies": { - "caniuse-lite": "^1.0.30001093", - "electron-to-chromium": "^1.3.488", - "escalade": "^3.0.1", - "node-releases": "^1.1.58" + "caniuse-lite": "^1.0.30001400", + "electron-to-chromium": "^1.4.251", + "node-releases": "^2.0.6", + "update-browserslist-db": "^1.0.9" }, "bin": { "browserslist": "cli.js" @@ -3334,13 +4026,14 @@ } }, "node_modules/buffer": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz", - "integrity": "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==", + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", + "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", "dev": true, "dependencies": { "base64-js": "^1.0.2", - "ieee754": "^1.1.4" + "ieee754": "^1.1.4", + "isarray": "^1.0.0" } }, "node_modules/buffer-alloc": { @@ -3362,7 +4055,7 @@ "node_modules/buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", "dev": true, "engines": { "node": "*" @@ -3371,57 +4064,55 @@ "node_modules/buffer-equal-constant-time": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", - "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=", + "integrity": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==", "dev": true }, "node_modules/buffer-fill": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", - "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=", + "integrity": "sha512-T7zexNBwiiaCOGDg9xNX9PBmjrubblRkENuptryuI64URkXDFum9il/JGL8Lm8wYfAXpredVXXZz7eMHilimiQ==", "dev": true }, "node_modules/buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", "dev": true }, "node_modules/buffer-xor": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", "dev": true }, "node_modules/builtin-status-codes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==", "dev": true }, "node_modules/bunyan": { "version": "1.8.12", "resolved": "https://registry.npmjs.org/bunyan/-/bunyan-1.8.12.tgz", - "integrity": "sha1-8VDw9nSKvdcq6uhPBEA74u8RN5c=", + "integrity": "sha512-dmDUbGHeGcvCDLRFOscZkwx1ZO/aFz3bJOCi5nCgzdhFGPxwK+y5AcDBnqagNGlJZ7lje/l6JUEz9mQcutttdg==", "dev": true, "engines": [ "node >=0.10.0" ], - "dependencies": { - "moment": "^2.10.6" - }, "bin": { "bunyan": "bin/bunyan" }, "optionalDependencies": { "dtrace-provider": "~0.8", + "moment": "^2.10.6", "mv": "~2", "safe-json-stringify": "~1" } }, "node_modules/bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "engines": { "node": ">= 0.8" } @@ -3447,6 +4138,18 @@ "y18n": "^4.0.0" } }, + "node_modules/cacache/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, "node_modules/cacache/node_modules/rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -3479,10 +4182,22 @@ "node": ">=0.10.0" } }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/caller-path": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz", - "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", + "integrity": "sha512-UJiE1otjXPF5/x+T3zTnSFiTOEmJoGTD9HmBoxnCUwho61a2eSNn/VwtwuIBDAo2SEOv1AJ7ARI5gCmohFLu/g==", "dev": true, "dependencies": { "callsites": "^0.2.0" @@ -3494,45 +4209,59 @@ "node_modules/callsites": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz", - "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=", + "integrity": "sha512-Zv4Dns9IbXXmPkgRRUjAaJQgfN4xX5p6+RQFhWUqscdvvK2xK/ZL8b3IXIJsj+4sD+f24NwnWy2BY8AJ82JB0A==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/camelcase": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha512-FxAv7HpHrXbh3aPo4o2qxHay2lkLY3x5Mw3KeE4KQE8ysVfziWeRZDwcjauvwBSGEC/nXUPzZy8zeh4HokqOnw==", + "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, "node_modules/caniuse-lite": { - "version": "1.0.30001111", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001111.tgz", - "integrity": "sha512-xnDje2wchd/8mlJu8sXvWxOGvMgv+uT3iZ3bkIAynKOzToCssWCmkz/ZIkQBs/2pUB4uwnJKVORWQ31UkbVjOg==", - "dev": true + "version": "1.0.30001431", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001431.tgz", + "integrity": "sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + } + ] }, "node_modules/capture-stack-trace": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz", - "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.2.tgz", + "integrity": "sha512-X/WM2UQs6VMHUtjUDnZTRI+i1crWteJySFzr9UpGoQa4WQffXVTTXuekjl7TjZRlcF2XfjgITT0HxZ9RnxeT0w==", "dev": true, "engines": { "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", "dev": true }, "node_modules/center-align": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", - "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", + "integrity": "sha512-Baz3aNe2gd2LP2qk5U+sDk/m4oSuwSDcBfayTCTBoWpfIGO5XFxPmjILQII4NGiZjD6DoDI6kf7gKaxkf7s3VQ==", "dependencies": { "align-text": "^0.1.3", "lazy-cache": "^1.0.3" @@ -3541,17 +4270,26 @@ "node": ">=0.10.0" } }, + "node_modules/center-align/node_modules/lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha512-RE2g0b5VGZsOCFOCgP7omTRYFqydmZkBwl5oNnQ1lDYC57uyO9KqNnNVxT7COSHTxrRCWVcAVOcbjk+tvh/rgQ==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/chai": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz", - "integrity": "sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw==", + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.7.tgz", + "integrity": "sha512-HLnAzZ2iupm25PlN0xFreAlBA5zaBSv3og0DdeGA4Ar6h6rJ3A0rolRUKJhSF2V10GZKDgWF/VmAEsNWjCRB+A==", "dev": true, "dependencies": { "assertion-error": "^1.1.0", "check-error": "^1.0.2", - "deep-eql": "^3.0.1", + "deep-eql": "^4.1.2", "get-func-name": "^2.0.0", - "pathval": "^1.1.0", + "loupe": "^2.3.1", + "pathval": "^1.1.1", "type-detect": "^4.0.5" }, "engines": { @@ -3574,6 +4312,9 @@ "dev": true, "dependencies": { "check-error": "^1.0.2" + }, + "peerDependencies": { + "chai": ">= 2.1.2 < 5" } }, "node_modules/chai-json-schema": { @@ -3587,6 +4328,9 @@ }, "engines": { "node": ">= 6" + }, + "peerDependencies": { + "chai": ">= 1.6.1 < 5" } }, "node_modules/chalk": { @@ -3606,7 +4350,7 @@ "node_modules/character-parser": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", - "integrity": "sha1-x84o821LzZdE5f/CxfzeHHMmH8A=", + "integrity": "sha512-+UqJQjFEFaTAs3bNsF2j2kEN1baG/zghZbdqoYEDxGZtJo9LBzl1A+m0D4n3qKx8N2FNv8/Xp6yV9mQmBuptaw==", "dependencies": { "is-regex": "^1.0.3" } @@ -3614,13 +4358,13 @@ "node_modules/chardet": { "version": "0.4.2", "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", - "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=", + "integrity": "sha512-j/Toj7f1z98Hh2cYo2BVr85EpIRWqUi7rtRSGxh/cqUjqrnJe9l9UE7IUGd2vQ2p+kSHLkSzObQPZPLUC6TQwg==", "dev": true }, "node_modules/check-error": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", + "integrity": "sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==", "dev": true, "engines": { "node": "*" @@ -3629,7 +4373,7 @@ "node_modules/cheerio": { "version": "1.0.0-rc.2", "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.2.tgz", - "integrity": "sha1-S59TqBsn5NXawxwP/Qz6A8xoMNs=", + "integrity": "sha512-9LDHQy1jHc/eXMzPN6/oah9Qba4CjdKECC7YYEE/2zge/tsGwt19NQp5NFdfd5Lx6TZlyC5SXNQkG41P9r6XDg==", "dev": true, "dependencies": { "css-select": "~1.2.0", @@ -3647,6 +4391,7 @@ "version": "2.1.8", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "deprecated": "Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies", "dev": true, "dependencies": { "anymatch": "^2.0.0", @@ -3669,7 +4414,9 @@ "version": "1.2.13", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "deprecated": "fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.", "dev": true, + "hasInstallScript": true, "optional": true, "os": [ "darwin" @@ -3682,18 +4429,6 @@ "node": ">= 4.0" } }, - "node_modules/chokidar/node_modules/is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/chokidar/node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -3720,13 +4455,10 @@ "dev": true }, "node_modules/chrome-trace-event": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", - "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, "engines": { "node": ">=6.0" } @@ -3741,43 +4473,115 @@ "safe-buffer": "^5.0.1" } }, - "node_modules/circular-json": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", - "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", - "dev": true - }, - "node_modules/class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "node_modules/circular-json": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", + "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", + "deprecated": "CircularJSON is in maintenance only, flatted is its successor.", + "dev": true + }, + "node_modules/class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "dependencies": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "dependencies": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" + "is-buffer": "^1.1.5" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/class-utils/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "node_modules/class-utils/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "dev": true, "dependencies": { - "is-descriptor": "^0.1.0" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" }, "engines": { "node": ">=0.10.0" } }, + "node_modules/class-utils/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/clean-css": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz", - "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==", + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", + "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", "dependencies": { "source-map": "~0.6.0" }, @@ -3796,7 +4600,7 @@ "node_modules/cli-boxes": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", - "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", + "integrity": "sha512-3Fo5wu8Ytle8q9iCzS4D2MWVL2X7JVWRiS1BnXbTFDhS9c/REkM9vd1AmabsoZoY5/dGi5TT9iKL8Kb6DeBRQg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -3805,7 +4609,7 @@ "node_modules/cli-cursor": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "integrity": "sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==", "dev": true, "dependencies": { "restore-cursor": "^2.0.0" @@ -3829,7 +4633,7 @@ "node_modules/cliui": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", - "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", + "integrity": "sha512-GIOYRizG+TGoc7Wgc1LiOTLare95R3mzKgoln+Q/lE4ceiYH19gUpl0l0Ffq4lJDEf3FxujMe6IBfOCs7pfqNA==", "dependencies": { "center-align": "^0.1.1", "right-align": "^0.1.1", @@ -3839,7 +4643,7 @@ "node_modules/clone": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", "dev": true, "engines": { "node": ">=0.8" @@ -3848,7 +4652,7 @@ "node_modules/clone-deep": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-0.3.0.tgz", - "integrity": "sha1-NIxhrpzb4O3+BT2R/0zFIdeQ7eg=", + "integrity": "sha512-qp1do6NplYZZcLU+TQ93+A735g1kNcnH75QbC1olpKJphe36CqkjFEK0PyFSoZlI3/1jO5KnDg64xdwWiEH/zA==", "dev": true, "dependencies": { "for-own": "^1.0.0", @@ -3860,10 +4664,22 @@ "node": ">=0.10.0" } }, + "node_modules/clone-deep/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/clone-deep/node_modules/kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "dependencies": { "is-buffer": "^1.1.5" @@ -3875,7 +4691,7 @@ "node_modules/co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", "dev": true, "engines": { "iojs": ">= 1.0.0", @@ -3885,22 +4701,22 @@ "node_modules/code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "integrity": "sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/codemirror": { - "version": "5.56.0", - "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.56.0.tgz", - "integrity": "sha512-MfKVmYgifXjQpLSgpETuih7A7WTTIsxvKfSLGseTY5+qt0E1UD1wblZGM6WLenORo8sgmf+3X+WTe2WF7mufyw==", + "version": "5.65.9", + "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.65.9.tgz", + "integrity": "sha512-19Jox5sAKpusTDgqgKB5dawPpQcY+ipQK7xoEI+MVucEF9qqFaXpeqY1KaoyGBso/wHQoDa4HMMxMjdsS3Zzzw==", "dev": true }, "node_modules/collection-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "integrity": "sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==", "dev": true, "dependencies": { "map-visit": "^1.0.0", @@ -3922,13 +4738,13 @@ "node_modules/color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "dev": true }, "node_modules/colors": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", + "integrity": "sha512-ENwblkFQpqqia6b++zLD/KUWafYlVY/UNnAp7oz7LY7E924wmpye416wBOmvv/HMWzl8gL1kJlfvId/1Dg176w==", "dev": true, "engines": { "node": ">=0.1.90" @@ -3937,7 +4753,7 @@ "node_modules/columnify": { "version": "1.5.4", "resolved": "https://registry.npmjs.org/columnify/-/columnify-1.5.4.tgz", - "integrity": "sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs=", + "integrity": "sha512-rFl+iXVT1nhLQPfGDw+3WcS8rmm7XsLKUmhsGE3ihzzpIikeGrTaZPIRKYWeLsLBypsHzjXIvYEltVUZS84XxQ==", "dev": true, "dependencies": { "strip-ansi": "^3.0.0", @@ -3974,7 +4790,7 @@ "node_modules/commondir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", "dev": true }, "node_modules/component-emitter": { @@ -3986,7 +4802,7 @@ "node_modules/compress-commons": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz", - "integrity": "sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=", + "integrity": "sha512-SLTU8iWWmcORfUN+4351Z2aZXKJe1tr0jSilPMCZlLPzpdTXnkBW1LevW/MfuANBKJek8Xu9ggqrtVmQrChLtg==", "dev": true, "dependencies": { "buffer-crc32": "^0.2.1", @@ -4001,7 +4817,7 @@ "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "dev": true }, "node_modules/concat-stream": { @@ -4020,12 +4836,12 @@ } }, "node_modules/configstore": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", - "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.5.tgz", + "integrity": "sha512-nlOhI4+fdzoK5xmJ+NY+1gZK56bwEaWZr8fYuXohZ9Vkc1o3a4T/R3M+yE/w7x/ZVJ1zF8c+oaOvF0dztdUgmA==", "dev": true, "dependencies": { - "dot-prop": "^4.1.0", + "dot-prop": "^4.2.1", "graceful-fs": "^4.1.2", "make-dir": "^1.0.0", "unique-string": "^1.0.0", @@ -4048,15 +4864,6 @@ "node": ">=4" } }, - "node_modules/configstore/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/connect": { "version": "3.7.0", "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", @@ -4075,12 +4882,66 @@ "node_modules/connect-livereload": { "version": "0.5.4", "resolved": "https://registry.npmjs.org/connect-livereload/-/connect-livereload-0.5.4.tgz", - "integrity": "sha1-gBV9E3HJ83zBQDmrGJWXDRGdw7w=", + "integrity": "sha512-3KnRwsWf4VmP01I4hCDQqTc4e2UxOvJIi8i08GiwqX2oymzxNFY7PqjFkwHglYTJ0yzUJkO5yqdPxVaIz3Pbug==", "dev": true, "engines": { "node": "*" } }, + "node_modules/connect/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/connect/node_modules/finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/connect/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/connect/node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/connect/node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/console-browserify": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", @@ -4101,15 +4962,15 @@ "node_modules/constants-browserify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", + "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==", "dev": true }, "node_modules/content-disposition": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", - "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", "dependencies": { - "safe-buffer": "5.1.2" + "safe-buffer": "5.2.1" }, "engines": { "node": ">= 0.6" @@ -4126,22 +4987,19 @@ "node_modules/continuable-cache": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/continuable-cache/-/continuable-cache-0.3.1.tgz", - "integrity": "sha1-vXJ6f67XfnH/OYWskzUakSczrQ8=", + "integrity": "sha512-TF30kpKhTH8AGCG3dut0rdd/19B7Z+qCnrMoBLpyQu/2drZdNrrpcjPEoJeSVsQM+8KmWG5O56oPDjSSUsuTyA==", "dev": true }, "node_modules/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==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.1" - } + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true }, "node_modules/cookie": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", - "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", "engines": { "node": ">= 0.6" } @@ -4149,7 +5007,7 @@ "node_modules/cookie-signature": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" }, "node_modules/copy-concurrently": { "version": "1.0.5", @@ -4165,6 +5023,18 @@ "run-queue": "^1.0.0" } }, + "node_modules/copy-concurrently/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, "node_modules/copy-concurrently/node_modules/rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -4180,40 +5050,36 @@ "node_modules/copy-descriptor": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "integrity": "sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/core-js": { - "version": "2.6.11", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", - "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==" + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", + "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", + "deprecated": "core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.", + "hasInstallScript": true }, "node_modules/core-js-compat": { - "version": "3.6.5", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.5.tgz", - "integrity": "sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng==", + "version": "3.26.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.26.0.tgz", + "integrity": "sha512-piOX9Go+Z4f9ZiBFLnZ5VrOpBl0h7IGCkiFUN11QTe6LjAvOT3ifL/5TdoizMh99hcGy5SoLyWbapIY/PIb/3A==", "dev": true, "dependencies": { - "browserslist": "^4.8.5", - "semver": "7.0.0" - } - }, - "node_modules/core-js-compat/node_modules/semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true, - "bin": { - "semver": "bin/semver.js" + "browserslist": "^4.21.4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" } }, "node_modules/core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", "dev": true }, "node_modules/crc": { @@ -4225,10 +5091,34 @@ "buffer": "^5.1.0" } }, + "node_modules/crc/node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, "node_modules/crc32-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz", - "integrity": "sha1-483TtN8xaN10494/u8t7KX/pCPQ=", + "integrity": "sha512-UjZSqFCbn+jZUHJIh6Y3vMF7EJLcJWNm4tKDf2peJRwlZKHvkkvOMTvAei6zjU9gO1xONVr3rRFw0gixm2eUng==", "dev": true, "dependencies": { "crc": "^3.4.4", @@ -4249,15 +5139,15 @@ } }, "node_modules/create-ecdh/node_modules/bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true }, "node_modules/create-error-class": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", - "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", + "integrity": "sha512-gYTKKexFO3kh200H1Nit76sRwRtOY32vQd3jpAQKpLtZqyNsSQNfI4N7o3eP2wUjV35pTWKRYqFUDBvUha/Pkw==", "dev": true, "dependencies": { "capture-stack-trace": "^1.0.0" @@ -4309,10 +5199,31 @@ "node": ">=4.8" } }, + "node_modules/cross-spawn/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/cross-spawn/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, "node_modules/crx": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/crx/-/crx-3.2.1.tgz", - "integrity": "sha1-Fyk+51790IxtHIs+F0nS1XV89Cs=", + "integrity": "sha512-UGgKNCy+6oXbMPaibiB2nLjiDCDC5akQbiODN1HWibH3l/0q52hPE10oqH3d2jyyM92nKuBwqD5t6Xg3FM8QTA==", "dev": true, "dependencies": { "archiver": "^1.1.0", @@ -4330,7 +5241,7 @@ "node_modules/crx-parser": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/crx-parser/-/crx-parser-0.1.2.tgz", - "integrity": "sha1-fu7tnt3JXiLBiTguNGJARKiaWm0=", + "integrity": "sha512-B1XsIt+CDGa91o+72tAhMnuTzgO4G2HYvzzhZcL3+NetS1ENfX+6Y+ofWFBfuw+/y8uJAip65zphNNiHVlOyxQ==", "dev": true }, "node_modules/crypto-browserify": { @@ -4358,7 +5269,7 @@ "node_modules/crypto-random-string": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", - "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", + "integrity": "sha512-GsVpkFPlycH7/fRR7Dhcmnoii54gV1nz7y4CWyeFS14N+JVBBhY+r8amRHE4BwSYal7BPTDp8isvAlCxyFt3Hg==", "dev": true, "engines": { "node": ">=4" @@ -4377,15 +5288,18 @@ } }, "node_modules/css-parse": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-1.7.0.tgz", - "integrity": "sha1-Mh9s9zeCpv91ERE5D8BeLGV9jJs=", - "dev": true + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-2.0.0.tgz", + "integrity": "sha512-UNIFik2RgSbiTwIW1IsFwXWn6vs+bYdq83LKTSOsx7NJR7WII9dxewkHLltfTLVppoUApHV0118a4RZRI9FLwA==", + "dev": true, + "dependencies": { + "css": "^2.0.0" + } }, "node_modules/css-select": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", - "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "integrity": "sha512-dUQOBoqdR7QwV90WysXPLXG5LO7nhYBgiWVfxF80DKPF8zx1t/pUd2FYy73emg3zrjtM6dzmYgbHKfV2rxiHQA==", "dev": true, "dependencies": { "boolbase": "~1.0.0", @@ -4415,7 +5329,7 @@ "node_modules/cyclist": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", - "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", + "integrity": "sha512-NJGVKPS81XejHcLhaLJS7plab0fK3slPh11mESeeDq2W4ZI5kUKK/LRRdVDvjJseojbPB7ZwjnyOybg3Igea/A==", "dev": true }, "node_modules/d": { @@ -4431,7 +5345,7 @@ "node_modules/dashdash": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", "dev": true, "dependencies": { "assert-plus": "^1.0.0" @@ -4462,40 +5376,53 @@ "dev": true }, "node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, "dependencies": { - "ms": "2.0.0" + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, "node_modules/decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", + "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", + "dev": true, + "dependencies": { + "xregexp": "4.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, "node_modules/decode-uri-component": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==", "dev": true, "engines": { "node": ">=0.10" } }, "node_modules/deep-eql": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", - "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.2.tgz", + "integrity": "sha512-gT18+YW4CcW/DBNTwAmqTtkJh7f9qqScu2qFVlx7kCoeY9tlBu9cUcr7+I+Z/noG8INehS3xQgLpTtd/QUTn4w==", "dev": true, "dependencies": { "type-detect": "^4.0.0" }, "engines": { - "node": ">=0.12" + "node": ">=6" } }, "node_modules/deep-equal": { @@ -4510,6 +5437,9 @@ "object-is": "^1.0.1", "object-keys": "^1.1.1", "regexp.prototype.flags": "^1.2.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/deep-extend": { @@ -4533,19 +5463,19 @@ "node_modules/deep-freeze": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/deep-freeze/-/deep-freeze-0.0.1.tgz", - "integrity": "sha1-OgsABd4YZygZ39OM0x+RF5yJPoQ=", + "integrity": "sha512-Z+z8HiAvsGwmjqlphnHW5oz6yWlOwu6EQfFTjmeTWlDeda3FS2yv3jhq35TX/ewmsnqB+RX2IdsIOyjJCQN5tg==", "dev": true }, "node_modules/deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", "dev": true }, "node_modules/deepcopy": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/deepcopy/-/deepcopy-0.6.3.tgz", - "integrity": "sha1-Y0eA8vhlardxr4+oQx7RzO5Vx7A=", + "integrity": "sha512-C7P+E1C5q9rF51zPXI2G03/y7mJ5tbjJUpUjhpghwnbCXi8rzsX/y1JzCX8+Oin9vN9E2BT32RCuDw6xEXDw1A==", "dev": true }, "node_modules/deepmerge": { @@ -4558,24 +5488,31 @@ } }, "node_modules/defaults": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", "dev": true, "dependencies": { "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", "dev": true, "dependencies": { - "object-keys": "^1.0.12" + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/define-property": { @@ -4591,48 +5528,10 @@ "node": ">=0.10.0" } }, - "node_modules/define-property/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/define-property/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/define-property/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/degenerator": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-1.0.4.tgz", - "integrity": "sha1-/PSQo37OJmRk2cxDGrmMWBnO0JU=", + "integrity": "sha512-EMAC+riLSC64jKfOs1jp8J7M4ZXstUUwTdwFBEv6HOzL/Ae+eAzMKEK0nJnpof2fnw9IOjmE6u6qXFejVyk8AA==", "dev": true, "dependencies": { "ast-types": "0.x.x", @@ -4643,7 +5542,7 @@ "node_modules/degenerator/node_modules/esprima": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", + "integrity": "sha512-AWwVMNxwhN8+NIPQzAQZCm7RkLC4RbM3B1OobMuyp3i+w73X57KCKaVIxaRZb+DYCojq7rspo+fmuQfAboyhFg==", "dev": true, "bin": { "esparse": "bin/esparse.js", @@ -4656,18 +5555,18 @@ "node_modules/delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", "dev": true, "engines": { "node": ">=0.4.0" } }, "node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "engines": { - "node": ">= 0.6" + "node": ">= 0.8" } }, "node_modules/deprecation": { @@ -4688,18 +5587,22 @@ "node_modules/desandro-matches-selector": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/desandro-matches-selector/-/desandro-matches-selector-2.0.2.tgz", - "integrity": "sha1-cXvu1NwT59jzdi9wem1YpndCGOE=", + "integrity": "sha512-+1q0nXhdzg1IpIJdMKalUwvvskeKnYyEe3shPRwedNcWtnhEKT3ZxvFjzywHDeGcKViIxTCAoOYQWP1qD7VNyg==", "dev": true }, "node_modules/destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } }, "node_modules/detect-file": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", - "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", + "integrity": "sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q==", "dev": true, "engines": { "node": ">=0.10.0" @@ -4708,7 +5611,7 @@ "node_modules/detect-indent": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", - "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "integrity": "sha512-BDKtmHlOzwI7iRuEkhzsnPoi5ypEhWAJB5RvHWe1kMr06js3uK5B3734i3ui5Yd+wOJV1cpE4JnivPD283GU/A==", "dev": true, "dependencies": { "repeating": "^2.0.0" @@ -4738,15 +5641,16 @@ } }, "node_modules/diffie-hellman/node_modules/bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true }, "node_modules/dispensary": { "version": "0.27.0", "resolved": "https://registry.npmjs.org/dispensary/-/dispensary-0.27.0.tgz", "integrity": "sha512-bG9pSBPH8wTEaugUIBAbBvBHynqOoGxefOT4YXlPoUc9AxQGDUO1uFHafDVWnsGWiSYvTUga0aZ9xThzfGQtlQ==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", "dev": true, "dependencies": { "array-from": "~2.1.1", @@ -4766,23 +5670,32 @@ } }, "node_modules/dispensary/node_modules/ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", "dev": true, "engines": { "node": ">=4" } }, "node_modules/dispensary/node_modules/async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", "dev": true, "dependencies": { "lodash": "^4.17.14" } }, + "node_modules/dispensary/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/dispensary/node_modules/cliui": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", @@ -4794,6 +5707,61 @@ "wrap-ansi": "^2.0.0" } }, + "node_modules/dispensary/node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/dispensary/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dispensary/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dispensary/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dispensary/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/dispensary/node_modules/pino": { "version": "5.8.1", "resolved": "https://registry.npmjs.org/pino/-/pino-5.8.1.tgz", @@ -4826,7 +5794,7 @@ "node_modules/dispensary/node_modules/strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", "dev": true, "dependencies": { "ansi-regex": "^3.0.0" @@ -4855,6 +5823,16 @@ "yargs-parser": "^11.1.1" } }, + "node_modules/dispensary/node_modules/yargs-parser": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", + "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + }, "node_modules/dockerfile-ast": { "version": "0.0.12", "resolved": "https://registry.npmjs.org/dockerfile-ast/-/dockerfile-ast-0.0.12.tgz", @@ -4882,7 +5860,7 @@ "node_modules/doctypes": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", - "integrity": "sha1-6oCxBqh1OHdOijpKWv4pPeSJ4Kk=" + "integrity": "sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==" }, "node_modules/dom-serializer": { "version": "0.1.1", @@ -4928,7 +5906,7 @@ "node_modules/domutils": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "integrity": "sha512-gSu5Oi/I+3wDENBsOWBiRK1eoGxcywYSqg3rR960/+EfY0CF4EX1VPkgHOZ3WiS/Jg2DtliF6BhWcHlfpYUcGw==", "dev": true, "dependencies": { "dom-serializer": "0", @@ -4948,11 +5926,11 @@ } }, "node_modules/dotenv": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz", - "integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==", + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz", + "integrity": "sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==", "engines": { - "node": ">=8" + "node": ">=10" } }, "node_modules/dtrace-provider": { @@ -4960,6 +5938,7 @@ "resolved": "https://registry.npmjs.org/dtrace-provider/-/dtrace-provider-0.8.8.tgz", "integrity": "sha512-b7Z7cNtHPhH9EJhNNbbeqTcXB8LGFFZhq1PGgEvpeHlzd36bhbdTWoE/Ba/YguqpBSlAPKnARWhVlhunCMwfxg==", "dev": true, + "hasInstallScript": true, "optional": true, "dependencies": { "nan": "^2.14.0" @@ -4969,9 +5948,9 @@ } }, "node_modules/duplexer3": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", + "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==", "dev": true }, "node_modules/duplexify": { @@ -4989,7 +5968,7 @@ "node_modules/ecc-jsbn": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", "dev": true, "dependencies": { "jsbn": "~0.1.0", @@ -5008,33 +5987,33 @@ "node_modules/ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, "node_modules/electron-to-chromium": { - "version": "1.3.523", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.523.tgz", - "integrity": "sha512-D4/3l5DpciddD92IDRtpLearQSGzly8FwBJv+nITvLH8YJrFabpDFe4yuiOJh2MS4/EsXqyQTXyw1toeYPtshQ==", + "version": "1.4.284", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", + "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==", "dev": true }, "node_modules/elliptic": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", - "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", "dev": true, "dependencies": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", + "bn.js": "^4.11.9", + "brorand": "^1.1.0", "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" } }, "node_modules/elliptic/node_modules/bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true }, "node_modules/email-validator": { @@ -5058,7 +6037,7 @@ "node_modules/encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", "engines": { "node": ">= 0.8" } @@ -5067,16 +6046,16 @@ "version": "0.1.13", "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "dev": true, + "devOptional": true, "dependencies": { "iconv-lite": "^0.6.2" } }, "node_modules/encoding/node_modules/iconv-lite": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz", - "integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==", - "dev": true, + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "devOptional": true, "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" }, @@ -5094,9 +6073,9 @@ } }, "node_modules/enhanced-resolve": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz", - "integrity": "sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz", + "integrity": "sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==", "dev": true, "dependencies": { "graceful-fs": "^4.1.2", @@ -5126,9 +6105,9 @@ "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" }, "node_modules/errno": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", - "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", "dev": true, "dependencies": { "prr": "~1.0.1" @@ -5156,25 +6135,41 @@ } }, "node_modules/es-abstract": { - "version": "1.17.6", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", - "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", + "version": "1.20.4", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.4.tgz", + "integrity": "sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==", "dev": true, "dependencies": { + "call-bind": "^1.0.2", "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.3", + "get-symbol-description": "^1.0.0", "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.0", - "is-regex": "^1.1.0", - "object-inspect": "^1.7.0", + "has-property-descriptors": "^1.0.0", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.2", "object-keys": "^1.1.1", - "object.assign": "^4.1.0", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trimend": "^1.0.5", + "string.prototype.trimstart": "^1.0.5", + "unbox-primitive": "^1.0.2" }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/es-to-primitive": { @@ -5189,17 +6184,24 @@ }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/es5-ext": { - "version": "0.10.53", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", - "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", + "version": "0.10.62", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz", + "integrity": "sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==", "dev": true, + "hasInstallScript": true, "dependencies": { - "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.3", - "next-tick": "~1.0.0" + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.3", + "next-tick": "^1.1.0" + }, + "engines": { + "node": ">=0.10" } }, "node_modules/es6-error": { @@ -5211,7 +6213,7 @@ "node_modules/es6-iterator": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==", "dev": true, "dependencies": { "d": "1", @@ -5222,7 +6224,7 @@ "node_modules/es6-map": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", - "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", + "integrity": "sha512-mz3UqCh0uPCIqsw1SSAkB/p0rOzF/M0V++vyN7JqlPtSW/VsYgQBvVvqMLmfBuyMzTpLnNqi6JmcSizs4jy19A==", "dev": true, "dependencies": { "d": "1", @@ -5236,13 +6238,13 @@ "node_modules/es6-promise": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz", - "integrity": "sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM=", + "integrity": "sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==", "dev": true }, "node_modules/es6-promisify": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", - "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", + "integrity": "sha512-C+d6UdsYDk0lMebHNR4S2NybQMMngAOnOwYBQjTOiv0MkoJMP0Myw2mgpDLBcpfCmRLxyFqYhS/CfOENq4SJhQ==", "dev": true, "dependencies": { "es6-promise": "^4.0.3" @@ -5255,27 +6257,27 @@ "dev": true }, "node_modules/es6-set": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", - "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.6.tgz", + "integrity": "sha512-TE3LgGLDIBX332jq3ypv6bcOpkLO0AslAQo7p2VqX/1N46YNsvIWgvjojjSEnWEGWMhr1qUbYeTSir5J6mFHOw==", "dev": true, "dependencies": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-symbol": "3.1.1", - "event-emitter": "~0.3.5" + "d": "^1.0.1", + "es5-ext": "^0.10.62", + "es6-iterator": "~2.0.3", + "es6-symbol": "^3.1.3", + "event-emitter": "^0.3.5", + "type": "^2.7.2" + }, + "engines": { + "node": ">=0.12" } }, - "node_modules/es6-set/node_modules/es6-symbol": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", - "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", - "dev": true, - "dependencies": { - "d": "1", - "es5-ext": "~0.10.14" - } + "node_modules/es6-set/node_modules/type": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", + "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==", + "dev": true }, "node_modules/es6-symbol": { "version": "3.1.3", @@ -5300,9 +6302,9 @@ } }, "node_modules/escalade": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.0.2.tgz", - "integrity": "sha512-gPYAU37hYCUhW5euPeR+Y74F7BL+IBsV93j5cvGriSaD1aG6MGsqsV1yamRdrWrb2j3aiZvb0X+UBOWpx3JWtQ==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", "dev": true, "engines": { "node": ">=6" @@ -5311,12 +6313,12 @@ "node_modules/escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" }, "node_modules/escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, "engines": { "node": ">=0.8.0" @@ -5357,7 +6359,7 @@ "node_modules/escope": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", - "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", + "integrity": "sha512-75IUQsusDdalQEW/G/2esa87J7raqdJF+Ca0/Xm5C3Q58Nr4yVYjZGp/P1+2xiEVgXRrA39dpRb8LcshajbqDQ==", "dev": true, "dependencies": { "es6-map": "^0.1.3", @@ -5424,7 +6426,7 @@ "node_modules/eslint-plugin-no-unsafe-innerhtml": { "version": "1.0.16", "resolved": "https://registry.npmjs.org/eslint-plugin-no-unsafe-innerhtml/-/eslint-plugin-no-unsafe-innerhtml-1.0.16.tgz", - "integrity": "sha1-fQKHjI6b95FriINtWsEitC8VGTI=", + "integrity": "sha512-zdymo/6S8sovPZPPcF07bblXIkflbzDoGXmWG2KIaiGY2DTWQxotCv4eRSpJp5xXS66uacLceMQXTzeI3im9+g==", "dev": true, "dependencies": { "eslint": "^3.7.1" @@ -5442,31 +6444,10 @@ "node": ">=0.4.0" } }, - "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/acorn-jsx": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", - "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", - "dev": true, - "dependencies": { - "acorn": "^3.0.4" - } - }, - "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/acorn-jsx/node_modules/acorn": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", - "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/ajv": { "version": "4.11.8", "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", - "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", + "integrity": "sha512-I/bSHSNEcFFqXLf91nchoNB9D1Kie3QKcWdchYUaoIg1+1bdWDkdfdlvdIOJbi9U8xR0y+MWc5D+won9v95WlQ==", "dev": true, "dependencies": { "co": "^4.6.0", @@ -5476,13 +6457,16 @@ "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/ajv-keywords": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz", - "integrity": "sha1-MU3QpLM2j609/NxU7eYXG4htrzw=", - "dev": true + "integrity": "sha512-vuBv+fm2s6cqUyey2A7qYcvsik+GMDJsw8BARP2sDE76cqmaZVarsvHf7Vx6VJ0Xk8gLl+u3MoAPf6gKzJefeA==", + "dev": true, + "peerDependencies": { + "ajv": ">=4.10.0" + } }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/ansi-escapes": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", - "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", + "integrity": "sha512-wiXutNjDUlNEDWHcYH3jtZUhd3c4/VojassD8zHdHCY13xbZy2XbW+NKQwA0tWGBVzDA9qEzYwfoSsWmviidhw==", "dev": true, "engines": { "node": ">=0.10.0" @@ -5491,7 +6475,7 @@ "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -5500,7 +6484,7 @@ "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dev": true, "dependencies": { "ansi-styles": "^2.2.1", @@ -5516,7 +6500,7 @@ "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/cli-cursor": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", - "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", + "integrity": "sha512-25tABq090YNKkF6JH7lcwO0zFJTRke4Jcq9iX2nr/Sz0Cjjv4gckmwlW6Ty/aoyFd6z3ysR2hMGC2GFugmBo6A==", "dev": true, "dependencies": { "restore-cursor": "^1.0.1" @@ -5525,10 +6509,19 @@ "node": ">=0.10.0" } }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/eslint": { "version": "3.19.0", "resolved": "https://registry.npmjs.org/eslint/-/eslint-3.19.0.tgz", - "integrity": "sha1-yPxiAcf0DdCJQbh8CFdnOGpnmsw=", + "integrity": "sha512-x6LJGXWCGB/4YOBhL48yeppZTo+YQUNC37N5qqCpC1b1kkNzydlQHQAtPuUSFoZSxgIadrysQoW2Hq602P+uEA==", "dev": true, "dependencies": { "babel-code-frame": "^6.16.0", @@ -5590,7 +6583,7 @@ "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/figures": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "integrity": "sha512-UxKlfCRuCBxSXU4C6t9scbDyWZ4VlaFFdojKtzJuSkuOBQ5CNFum+zZXFwHjo+CxBC1t6zlYPgHIgFjL8ggoEQ==", "dev": true, "dependencies": { "escape-string-regexp": "^1.0.5", @@ -5612,7 +6605,7 @@ "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/inquirer": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-0.12.0.tgz", - "integrity": "sha1-HvK/1jUE3wvHV4X/+MLEHfEvB34=", + "integrity": "sha512-bOetEz5+/WpgaW4D1NYOk1aD+JCqRjqu/FwRFgnIfiP7FC/zinsrfyO1vlS3nyH/R7S0IH3BIHBu4DBIDSqiGQ==", "dev": true, "dependencies": { "ansi-escapes": "^1.1.0", @@ -5630,10 +6623,24 @@ "through": "^2.3.6" } }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/inquirer/node_modules/string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", + "dev": true, + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/is-fullwidth-code-point": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", "dev": true, "dependencies": { "number-is-nan": "^1.0.0" @@ -5642,10 +6649,28 @@ "node": ">=0.10.0" } }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/onetime": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", - "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", + "integrity": "sha512-GZ+g4jayMqzCRMgB2sol7GiCLjKfS1PINkjmx8spcKce1LiVqcbQreXwqs2YAFXC6R03VIG28ZS31t8M866v6A==", "dev": true, "engines": { "node": ">=0.10.0" @@ -5654,22 +6679,34 @@ "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/pluralize": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-1.2.1.tgz", - "integrity": "sha1-0aIUg/0iu0HlihL6NCGCMUCJfEU=", + "integrity": "sha512-TH+BeeL6Ct98C7as35JbZLf8lgsRzlNJb5gklRIGHKaPkGl1esOKBc5ALUMd+q08Sr6tiEKM+Icbsxg5vuhMKQ==", "dev": true }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/progress": { "version": "1.1.8", "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", - "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=", + "integrity": "sha512-UdA8mJ4weIkUBO224tIarHzuHs4HuYiJvsuGT7j/SPQiUJVjYvNDBIPa0hAorduOfjGohB/qHWRa/lrrWX/mXw==", "dev": true, "engines": { "node": ">=0.4.0" } }, + "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "dev": true, + "dependencies": { + "resolve": "^1.1.6" + }, + "engines": { + "node": ">= 0.10" + } + }, "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/restore-cursor": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", - "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "integrity": "sha512-reSjH4HuiFlxlaBaFCiS6O76ZGG2ygKoSlCsipKdaZuKSPx/+bt9mULkn4l0asVzbEfQQmXRg6Wp6gv6m0wElw==", "dev": true, "dependencies": { "exit-hook": "^1.0.0", @@ -5682,7 +6719,7 @@ "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/run-async": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/run-async/-/run-async-0.1.0.tgz", - "integrity": "sha1-yK1KXhEGYeQCp9IbUw4AnyX444k=", + "integrity": "sha512-qOX+w+IxFgpUpJfkv2oGN0+ExPs68F4sZHfaRRx4dDexAQkG83atugKVEylyT5ARees3HBbfmuvnjbrd8j9Wjw==", "dev": true, "dependencies": { "once": "^1.3.0" @@ -5691,7 +6728,7 @@ "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/shelljs": { "version": "0.7.8", "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.8.tgz", - "integrity": "sha1-3svPh0sNHl+3LhSxZKloMEjprLM=", + "integrity": "sha512-/YF5Uk8hcwi7ima04ppkbA4RaRMdPMBfwAvAf8sufYOxsJRtbdoBsT8vGvlb+799BrlGdYrd+oczIA2eN2JdWA==", "dev": true, "dependencies": { "glob": "^7.0.0", @@ -5709,22 +6746,8 @@ "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/slice-ansi": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", - "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "integrity": "sha512-up04hB2hR92PgjpyU3y/eg91yIBILyjVY26NvvciY3EVVPjybkMszMpXQ9QAkcS3I5rtJBDLoTxxg+qvW8c7rw==", "dev": true, - "dependencies": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - }, "engines": { "node": ">=0.10.0" } @@ -5732,7 +6755,7 @@ "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "dev": true, "engines": { "node": ">=0.8.0" @@ -5741,7 +6764,7 @@ "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/table": { "version": "3.8.3", "resolved": "https://registry.npmjs.org/table/-/table-3.8.3.tgz", - "integrity": "sha1-K7xULw/amGGnVdOUf+/Ys/UThV8=", + "integrity": "sha512-RZuzIOtzFbprLCE0AXhkI0Xi42ZJLZhCC+qkwuMLf/Vjz3maWpA8gz1qMdbmNoI9cOROT2Am/DxeRyXenrL11g==", "dev": true, "dependencies": { "ajv": "^4.7.0", @@ -5752,49 +6775,6 @@ "string-width": "^2.0.0" } }, - "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/table/node_modules/ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/table/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/table/node_modules/string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "dependencies": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-plugin-no-unsafe-innerhtml/node_modules/table/node_modules/strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "dependencies": { - "ansi-regex": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/eslint-scope": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", @@ -5818,33 +6798,48 @@ } }, "node_modules/eslint/node_modules/ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", "dev": true, "engines": { "node": ">=4" } }, "node_modules/eslint/node_modules/debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { "ms": "^2.1.1" } }, - "node_modules/eslint/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "node_modules/eslint/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/eslint/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } }, "node_modules/eslint/node_modules/strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", "dev": true, "dependencies": { "ansi-regex": "^3.0.0" @@ -5877,9 +6872,9 @@ } }, "node_modules/espree/node_modules/acorn": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", - "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", + "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -5888,6 +6883,15 @@ "node": ">=0.4.0" } }, + "node_modules/espree/node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, "node_modules/esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", @@ -5902,9 +6906,9 @@ } }, "node_modules/esquery": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", - "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, "dependencies": { "estraverse": "^5.1.0" @@ -5914,26 +6918,35 @@ } }, "node_modules/esquery/node_modules/estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, "engines": { "node": ">=4.0" } }, "node_modules/esrecurse": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, "dependencies": { - "estraverse": "^4.1.0" + "estraverse": "^5.2.0" }, "engines": { "node": ">=4.0" } }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, "node_modules/estraverse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", @@ -5954,7 +6967,7 @@ "node_modules/etag": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", "engines": { "node": ">= 0.6" } @@ -5968,7 +6981,7 @@ "node_modules/event-emitter": { "version": "0.3.5", "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", - "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==", "dev": true, "dependencies": { "d": "1", @@ -5978,19 +6991,20 @@ "node_modules/event-to-promise": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/event-to-promise/-/event-to-promise-0.8.0.tgz", - "integrity": "sha1-S4TxF3K28l93Uvx02XFTGsb1tiY=", + "integrity": "sha512-/J+h6lLXMhNrahk5XipFHjSOlTv4Zl+D5rXomuhT3MIUxkP7beRxazgCQ6ERYJTFPPM8WC8dbHIeQc1VaKrOxw==", + "deprecated": "Use promise-toolbox/fromEvent instead", "dev": true }, "node_modules/eventemitter2": { "version": "0.4.14", "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz", - "integrity": "sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas=", + "integrity": "sha512-K7J4xq5xAD5jHsGM5ReWXRTFa3JRGofHiMcVgQ8PRwgWxzjHpMWCIzsmyf60+mh8KLsqYPcjUMa0AC4hd6lPyQ==", "dev": true }, "node_modules/events": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.2.0.tgz", - "integrity": "sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", "dev": true, "engines": { "node": ">=0.8.x" @@ -6027,7 +7041,7 @@ "node_modules/exit": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", "dev": true, "engines": { "node": ">= 0.8.0" @@ -6036,7 +7050,7 @@ "node_modules/exit-hook": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", - "integrity": "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=", + "integrity": "sha512-MsG3prOVw1WtLXAZbM3KiYtooKR1LvxHh3VHsVtIy0uiUu8usxgB/94DP2HxtD/661lLdB6yzQ09lGJSQr6nkg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -6045,7 +7059,7 @@ "node_modules/expand-brackets": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "integrity": "sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==", "dev": true, "dependencies": { "debug": "^2.3.3", @@ -6060,10 +7074,19 @@ "node": ">=0.10.0" } }, + "node_modules/expand-brackets/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, "node_modules/expand-brackets/node_modules/define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", "dev": true, "dependencies": { "is-descriptor": "^0.1.0" @@ -6072,22 +7095,87 @@ "node": ">=0.10.0" } }, - "node_modules/expand-brackets/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "node_modules/expand-brackets/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", "dev": true, "dependencies": { - "is-extendable": "^0.1.0" + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" }, "engines": { "node": ">=0.10.0" } }, + "node_modules/expand-brackets/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "node_modules/expand-tilde": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", - "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", + "integrity": "sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==", "dev": true, "dependencies": { "homedir-polyfill": "^1.0.1" @@ -6097,37 +7185,38 @@ } }, "node_modules/express": { - "version": "4.17.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", - "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", "dependencies": { - "accepts": "~1.3.7", + "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.19.0", - "content-disposition": "0.5.3", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.4.0", + "cookie": "0.5.0", "cookie-signature": "1.0.6", "debug": "2.6.9", - "depd": "~1.1.2", + "depd": "2.0.0", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "~1.1.2", + "finalhandler": "1.2.0", "fresh": "0.5.2", + "http-errors": "2.0.0", "merge-descriptors": "1.0.1", "methods": "~1.1.2", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "parseurl": "~1.3.3", "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.5", - "qs": "6.7.0", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", "range-parser": "~1.2.1", - "safe-buffer": "5.1.2", - "send": "0.17.1", - "serve-static": "1.14.1", - "setprototypeof": "1.1.1", - "statuses": "~1.5.0", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", "type-is": "~1.6.18", "utils-merge": "1.0.1", "vary": "~1.1.2" @@ -6139,21 +7228,34 @@ "node_modules/express-sslify": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/express-sslify/-/express-sslify-1.2.0.tgz", - "integrity": "sha1-MOhLzu0VV+sYdnK74UMKCioQDZw=" + "integrity": "sha512-OOf2B3MxAVjEXPPWl4Z19wA2oMH+RCULJVhejPwuhiDDClr9QczZz5ycABLSnnN+oY8JcLs32ghs9cxOj0vi+w==" + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/ext": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", - "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", + "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", "dev": true, "dependencies": { - "type": "^2.0.0" + "type": "^2.7.2" } }, "node_modules/ext/node_modules/type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", - "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==", + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", + "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==", "dev": true }, "node_modules/extend": { @@ -6163,25 +7265,12 @@ "dev": true }, "node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extend-shallow/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "dev": true, "dependencies": { - "is-plain-object": "^2.0.4" + "is-extendable": "^0.1.0" }, "engines": { "node": ">=0.10.0" @@ -6223,7 +7312,7 @@ "node_modules/extglob/node_modules/define-property": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", "dev": true, "dependencies": { "is-descriptor": "^1.0.0" @@ -6232,56 +7321,6 @@ "node": ">=0.10.0" } }, - "node_modules/extglob/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/extract-zip": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz", @@ -6297,10 +7336,37 @@ "extract-zip": "cli.js" } }, + "node_modules/extract-zip/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/extract-zip/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/extract-zip/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "node_modules/extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", "dev": true, "engines": [ "node >=0.6.0" @@ -6333,7 +7399,7 @@ "node_modules/fast-json-patch/node_modules/fast-deep-equal": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "integrity": "sha512-bCK/2Z4zLidyB4ReuIsvALH6w31YfAQDmXMqMx6FyfHqvBxtjC0eRumeSu4Bs3XtXwpyIywtSTrVT99BxY1f9w==", "dev": true }, "node_modules/fast-json-stable-stringify": { @@ -6345,7 +7411,7 @@ "node_modules/fast-levenshtein": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", "dev": true }, "node_modules/fast-redact": { @@ -6358,15 +7424,15 @@ } }, "node_modules/fast-safe-stringify": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz", - "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==", "dev": true }, "node_modules/faye-websocket": { "version": "0.10.0", "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", - "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", + "integrity": "sha512-Xhj93RXbMSq8urNCUq4p9l0P6hnySJ/7YNRhYNug0bLOuii7pKO7xQFb5mx9xZXWCar88pLPb805PvUkwrLZpQ==", "dev": true, "dependencies": { "websocket-driver": ">=0.5.1" @@ -6378,7 +7444,7 @@ "node_modules/fd-slicer": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", "dev": true, "dependencies": { "pend": "~1.2.0" @@ -6393,7 +7459,7 @@ "node_modules/figures": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "integrity": "sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==", "dev": true, "dependencies": { "escape-string-regexp": "^1.0.5" @@ -6405,7 +7471,7 @@ "node_modules/file-entry-cache": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", - "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", + "integrity": "sha512-uXP/zGzxxFvFfcZGgBIwotm+Tdc55ddPAzF7iHshP4YGaXMww7rSF9peD9D1sui5ebONg5UobsZv+FfgEpGv/w==", "dev": true, "dependencies": { "flat-cache": "^1.2.1", @@ -6418,7 +7484,7 @@ "node_modules/file-sync-cmp": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/file-sync-cmp/-/file-sync-cmp-0.1.1.tgz", - "integrity": "sha1-peeo/7+kk7Q7kju9TKiaU7Y7YSs=", + "integrity": "sha512-0k45oWBokCqh2MOexeYKpyqmGKG+8mQ2Wd8iawx+uWd/weWJQAZ6SoPybagdCI4xFisag8iAR77WPm4h3pTfxA==", "dev": true }, "node_modules/file-uri-to-path": { @@ -6430,7 +7496,7 @@ "node_modules/fill-range": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", "dev": true, "dependencies": { "extend-shallow": "^2.0.1", @@ -6442,65 +7508,70 @@ "node": ">=0.10.0" } }, - "node_modules/fill-range/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", "dependencies": { "debug": "2.6.9", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "parseurl": "~1.3.3", - "statuses": "~1.5.0", + "statuses": "2.0.1", "unpipe": "~1.0.0" }, "engines": { "node": ">= 0.8" } }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, "node_modules/find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", "dev": true, "dependencies": { "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" }, "engines": { - "node": ">=6" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" } }, "node_modules/find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "dependencies": { - "locate-path": "^3.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">=6" + "node": ">=8" } }, "node_modules/findup-sync": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz", - "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=", + "integrity": "sha512-z8Nrwhi6wzxNMIbxlrTzuUW6KWuKkogZ/7OdDVq+0+kxn77KUH1nipx8iU6suqkHqc4y6n7a9A8IpmxY/pTjWg==", "dev": true, "dependencies": { "glob": "~5.0.0" @@ -6512,7 +7583,7 @@ "node_modules/findup-sync/node_modules/glob": { "version": "5.0.15", "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "integrity": "sha512-c9IPMazfRITpmAAKi22dK1VKxGDX9ehhqfABDriL/lzO92xcUKEJPQHrVA/2YHSNFB4iFlykVmWvwo48nr3OxA==", "dev": true, "dependencies": { "inflight": "^1.0.4", @@ -6541,6 +7612,18 @@ "node": ">= 0.10" } }, + "node_modules/fined/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/firefox-profile": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/firefox-profile/-/firefox-profile-1.2.0.tgz", @@ -6566,7 +7649,7 @@ "node_modules/firefox-profile/node_modules/archiver": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/archiver/-/archiver-2.1.1.tgz", - "integrity": "sha1-/2YrSnggFJSj7lRNOjP+dJZQnrw=", + "integrity": "sha512-01psM0DMD3YItvhnAXZODfsViaeDidrJwfne3lsoVrbyYa/xFQwTbVjY+2WlEBm7qH1fCsyxAA1SgNr/XenTlQ==", "dev": true, "dependencies": { "archiver-utils": "^1.3.0", @@ -6594,7 +7677,7 @@ "node_modules/first-chunk-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-2.0.0.tgz", - "integrity": "sha1-G97NuOCDwGZLkZRVgVd6Q6nzHXA=", + "integrity": "sha512-X8Z+b/0L4lToKYq+lwnKqi9X/Zek0NibLpsJgVsSxpoYq7JtiCtRb5HqKVEjEw/qAb/4AKKRLOwwKHlWNpm2Eg==", "dev": true, "dependencies": { "readable-stream": "^2.0.2" @@ -6657,7 +7740,7 @@ "node_modules/flipclock": { "version": "0.7.8", "resolved": "https://registry.npmjs.org/flipclock/-/flipclock-0.7.8.tgz", - "integrity": "sha1-838ffKkETZAsH+4fGuf0vR7vGlQ=", + "integrity": "sha512-YkMQ5krRzxZJz38m8aJuyPqtphPdnXmas4kNLZbAwu3FNNwsRsg3gzUJM0onWDy34tDlh20IUSSmKiyuE8QJjg==", "dev": true, "dependencies": { "jquery": ">=1.7" @@ -6685,7 +7768,7 @@ "node_modules/for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", "dev": true, "engines": { "node": ">=0.10.0" @@ -6694,7 +7777,7 @@ "node_modules/for-own": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", - "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "integrity": "sha512-0OABksIGrxKK8K4kynWkQ7y1zounQxP+CWnyclVwj81KW3vlLlGUx57DKGcP/LH216GzqnstnPocF16Nxs0Ycg==", "dev": true, "dependencies": { "for-in": "^1.0.1" @@ -6706,7 +7789,7 @@ "node_modules/forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", "dev": true, "engines": { "node": "*" @@ -6727,9 +7810,9 @@ } }, "node_modules/forwarded": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", "engines": { "node": ">= 0.6" } @@ -6737,7 +7820,7 @@ "node_modules/fragment-cache": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "integrity": "sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==", "dev": true, "dependencies": { "map-cache": "^0.2.2" @@ -6749,7 +7832,7 @@ "node_modules/fresh": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", "engines": { "node": ">= 0.6" } @@ -6757,7 +7840,7 @@ "node_modules/from2": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "integrity": "sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==", "dev": true, "dependencies": { "inherits": "^2.0.1", @@ -6784,7 +7867,7 @@ "node_modules/fs-write-stream-atomic": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "integrity": "sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA==", "dev": true, "dependencies": { "graceful-fs": "^4.1.2", @@ -6796,14 +7879,16 @@ "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", "dev": true }, "node_modules/fsevents": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.0.1.tgz", "integrity": "sha512-p+CXqK/iLvDESUWdn3NA3JVO9HxdfI+iXx8xR3DqWgKZvQNiEVpAyUQo0lmwz8rqksb4xaGerG291xuwwhX2kA==", + "deprecated": "\"Please update to latest v2.3 or v2.2\"", "dev": true, + "hasInstallScript": true, "optional": true, "os": [ "darwin" @@ -6815,7 +7900,7 @@ "node_modules/ftp": { "version": "0.3.10", "resolved": "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz", - "integrity": "sha1-kZfYYa2BQvPmPVqDv+TFn3MwiF0=", + "integrity": "sha512-faFVML1aBx2UoDStmLwv2Wptt4vw5x03xxX172nhA5Y5HBshW5JweqQ2W4xL4dezQTG8inJsuYcpPHHU3X5OTQ==", "dev": true, "dependencies": { "readable-stream": "1.1.x", @@ -6828,13 +7913,13 @@ "node_modules/ftp/node_modules/isarray": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", "dev": true }, "node_modules/ftp/node_modules/readable-stream": { "version": "1.1.14", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", "dev": true, "dependencies": { "core-util-is": "~1.0.0", @@ -6843,22 +7928,63 @@ "string_decoder": "~0.10.x" } }, + "node_modules/ftp/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true + }, + "node_modules/ftp/node_modules/xregexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz", + "integrity": "sha512-xl/50/Cf32VsGq/1R8jJE5ajH1yMCQkpmoS10QbFZWl2Oor4H0Me64Pu2yxvsRWK3m6soJbmGfzSR7BYmDcWAA==", + "dev": true, + "engines": { + "node": "*" + } + }, "node_modules/function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/function.prototype.name": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/functional-red-black-tree": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", "dev": true }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/fx-runner": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/fx-runner/-/fx-runner-1.0.9.tgz", - "integrity": "sha1-eyPzdz3HaqzELxHZr/J2lnXLY/A=", + "integrity": "sha512-/9YF7XcTd/Ee2p2EV/1ZwnXEg8WkwTXHW7GfYYq9eaz5YAwqF22J95A8lPo/rcKP+Qy+SwEwNRcpRZTUFna2DA==", "dev": true, "dependencies": { "commander": "2.9.0", @@ -6876,7 +8002,7 @@ "node_modules/fx-runner/node_modules/commander": { "version": "2.9.0", "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", - "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=", + "integrity": "sha512-bmkUukX8wAOjHdN26xj5c4ctEV22TQ7dQYhSmuckKhToXrkUn0iIaolHdIxYYqD55nhpSPA9zPQ1yP57GdXP2A==", "dev": true, "dependencies": { "graceful-readlink": ">= 1.0.0" @@ -6888,7 +8014,7 @@ "node_modules/fx-runner/node_modules/is-absolute": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-0.1.7.tgz", - "integrity": "sha1-hHSREZ/MtftDYhfMc39/qtUPYD8=", + "integrity": "sha512-Xi9/ZSn4NFapG8RP98iNPMOeaV3mXPisxKxzKtHVqr3g56j/fBn+yZmnxSVAA8lmZbl2J9b/a4kJvfU3hqQYgA==", "dev": true, "dependencies": { "is-relative": "^0.1.0" @@ -6900,7 +8026,7 @@ "node_modules/fx-runner/node_modules/is-relative": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-0.1.3.tgz", - "integrity": "sha1-kF/uiuhvRbPsYUvDwVyGnfCHboI=", + "integrity": "sha512-wBOr+rNM4gkAZqoLRJI4myw5WzzIdQosFAAbnvfXP5z1LyzgAI3ivOKehC5KfqlQJZoihVhirgtCBj378Eg8GA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -6909,7 +8035,7 @@ "node_modules/fx-runner/node_modules/isexe": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/isexe/-/isexe-1.1.2.tgz", - "integrity": "sha1-NvPiLmB1CSD15yQaR2qMakInWtA=", + "integrity": "sha512-d2eJzK691yZwPHcv1LbeAOa91yMJ9QmfTgSO1oXB65ezVhXQsxBac2vEB4bMVms9cGzaA99n6V2viHMq82VLDw==", "dev": true }, "node_modules/fx-runner/node_modules/lodash": { @@ -6921,7 +8047,7 @@ "node_modules/fx-runner/node_modules/which": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/which/-/which-1.2.4.tgz", - "integrity": "sha1-FVf5YIBgTlsRs1meufRbUKnv1yI=", + "integrity": "sha512-zDRAqDSBudazdfM9zpiI30Fu9ve47htYXcGi3ln0wfKu2a7SmrT6F3VDoYONu//48V8Vz4TdCRNPjtvyRO3yBA==", "dev": true, "dependencies": { "is-absolute": "^0.1.7", @@ -6955,16 +8081,16 @@ "node_modules/generate-object-property": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", - "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=", + "integrity": "sha512-TuOwZWgJ2VAMEGJvAyPWvpqxSANF0LDpmyHauMjFYzaACvn+QTT/AZomvPCzVBV7yDN3OmwHQ5OvHaeLKre3JQ==", "dev": true, "dependencies": { "is-property": "^1.0.0" } }, "node_modules/gensync": { - "version": "1.0.0-beta.1", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", - "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==", + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "dev": true, "engines": { "node": ">=6.9.0" @@ -6979,12 +8105,25 @@ "node_modules/get-func-name": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", - "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=", + "integrity": "sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==", "dev": true, "engines": { "node": "*" } }, + "node_modules/get-intrinsic": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/get-size": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/get-size/-/get-size-2.0.3.tgz", @@ -6994,12 +8133,28 @@ "node_modules/get-stream": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "integrity": "sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==", "dev": true, "engines": { "node": ">=4" } }, + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/get-uri": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.4.tgz", @@ -7014,28 +8169,43 @@ "readable-stream": "2" } }, + "node_modules/get-uri/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/get-uri/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "node_modules/get-value": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "integrity": "sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/getobject": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/getobject/-/getobject-0.1.0.tgz", - "integrity": "sha1-BHpEl4n6Fg0Bj1SG7ZEyC27HiFw=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/getobject/-/getobject-1.0.2.tgz", + "integrity": "sha512-2zblDBaFcb3rB4rF77XVnuINOE2h2k/OnqXAiy0IrTxUfV1iFp3la33oAQVY9pCpWU268WFYVt2t71hlMuLsOg==", "dev": true, "engines": { - "node": ">= 0.8.0" + "node": ">=10" } }, "node_modules/getpass": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", "dev": true, "dependencies": { "assert-plus": "^1.0.0" @@ -7044,7 +8214,7 @@ "node_modules/gettext-parser": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/gettext-parser/-/gettext-parser-1.1.0.tgz", - "integrity": "sha1-LFpmONiTk0ubVQN9CtgstwBLJnk=", + "integrity": "sha512-zL3eayB0jF+cr6vogH/VJKoKcj7uQj2TPByaaj6a4k/3elk9iq7fiwCM2FqdzS/umo021RetSanVisarzeb9Wg==", "dev": true, "dependencies": { "encoding": "^0.1.11" @@ -7053,7 +8223,7 @@ "node_modules/git-rev-sync": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/git-rev-sync/-/git-rev-sync-1.9.1.tgz", - "integrity": "sha1-oMLj3TkqvPa3aWLif8dfsyI0Sc4=", + "integrity": "sha512-n6yNICNnWOe0uR2XAQQyBIVMCCCEPFY6dkun9s+9QM39nJpmPxgU48BX4UlLh95MXU5cbkhpbIP7RHOw5ujPew==", "dev": true, "dependencies": { "escape-string-regexp": "1.0.5", @@ -7064,16 +8234,28 @@ "node_modules/git-rev-sync/node_modules/graceful-fs": { "version": "4.1.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "integrity": "sha512-9x6DLUuW+ROFdMTII9ec9t/FK8va6kYcC8/LggumssLM8kNv7IdFl3VrNUqgir2tJuBVxBga1QBoRziZacO5Zg==", "dev": true, "engines": { "node": ">=0.4.0" } }, + "node_modules/git-rev-sync/node_modules/rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "dev": true, + "dependencies": { + "resolve": "^1.1.6" + }, + "engines": { + "node": ">= 0.10" + } + }, "node_modules/git-rev-sync/node_modules/shelljs": { "version": "0.7.7", "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.7.tgz", - "integrity": "sha1-svXHfvlxSPS09uImguELuoZnz/E=", + "integrity": "sha512-5ZXTlakejjdxXAnFl23pgPDzCcyPoshqMVWYqMH8HiP1R+i4auEKHabljL6XQlhQV58jkSRTR33Fq7OlxyLLTg==", "dev": true, "dependencies": { "glob": "^7.0.0", @@ -7089,9 +8271,9 @@ } }, "node_modules/glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", "dev": true, "dependencies": { "fs.realpath": "^1.0.0", @@ -7103,18 +8285,33 @@ }, "engines": { "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/glob-parent": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==", "dev": true, "dependencies": { "is-glob": "^3.1.0", "path-dirname": "^1.0.0" } }, + "node_modules/glob-parent/node_modules/is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/global": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", @@ -7128,7 +8325,7 @@ "node_modules/global-dirs": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", - "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", + "integrity": "sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg==", "dev": true, "dependencies": { "ini": "^1.3.4" @@ -7154,7 +8351,7 @@ "node_modules/global-prefix": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", - "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", + "integrity": "sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg==", "dev": true, "dependencies": { "expand-tilde": "^2.0.2", @@ -7167,6 +8364,18 @@ "node": ">=0.10.0" } }, + "node_modules/global-prefix/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, "node_modules/globals": { "version": "11.12.0", "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", @@ -7177,13 +8386,13 @@ } }, "node_modules/globule": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.2.tgz", - "integrity": "sha512-7IDTQTIu2xzXkT+6mlluidnWo+BypnbSoEVVQCGfzqnl5Ik8d3e1d4wycb8Rj9tWW+Z39uPWsdlquqiqPCd/pA==", + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.4.tgz", + "integrity": "sha512-OPTIfhMBh7JbBYDpa5b+Q5ptmMWKwcNcFSR/0c6t8V4f3ZAVBEsKNY37QdVqmLRYSMhOUGYrY0QhSoEpzGr/Eg==", "dev": true, "dependencies": { "glob": "~7.1.1", - "lodash": "~4.17.10", + "lodash": "^4.17.21", "minimatch": "~3.0.2" }, "engines": { @@ -7193,7 +8402,7 @@ "node_modules/got": { "version": "6.7.1", "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", - "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", + "integrity": "sha512-Y/K3EDuiQN9rTZhBvPRWMLXIKdeD1Rj0nzunfoi0Yyn5WBEbzxXKU9Ub2X41oZBagVWOBU3MuDonFMgPWQFnwg==", "dev": true, "dependencies": { "create-error-class": "^3.0.0", @@ -7213,15 +8422,15 @@ } }, "node_modules/graceful-fs": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", - "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", "dev": true }, "node_modules/graceful-readlink": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", - "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=", + "integrity": "sha512-8tLu60LgxF6XpdbK8OW3FA+IfTNBn1ZHGHKF4KQbEeSkajYw5PlYJcKluntgegDPTg8UkHjpet1T82vk6TQ68w==", "dev": true }, "node_modules/graphlib": { @@ -7245,13 +8454,13 @@ "node_modules/growly": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", - "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", + "integrity": "sha512-+xGQY0YyAWCnqy7Cd++hc2JqMYzlm0dG30Jd0beaA64sROr8C4nt8Yc9V5Ro3avlSUDTN0ulqP/VBKi1/lLygw==", "dev": true }, "node_modules/grunt": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.2.1.tgz", - "integrity": "sha512-zgJjn9N56tScvRt/y0+1QA+zDBnKTrkpyeSBqQPLcZvbqTD/oyGMrdZQXmm6I3828s+FmPvxc3Xv+lgKFtudOw==", + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.5.3.tgz", + "integrity": "sha512-mKwmo4X2d8/4c/BmcOETHek675uOqw0RuA/zy12jaspWqvTp4+ZeQF1W+OTpcbncnaBsfbQJ6l0l4j+Sn/GmaQ==", "dev": true, "dependencies": { "dateformat": "~3.0.3", @@ -7259,10 +8468,10 @@ "exit": "~0.1.2", "findup-sync": "~0.3.0", "glob": "~7.1.6", - "grunt-cli": "~1.3.2", - "grunt-known-options": "~1.1.0", - "grunt-legacy-log": "~2.0.0", - "grunt-legacy-util": "~1.1.1", + "grunt-cli": "~1.4.3", + "grunt-known-options": "~2.0.0", + "grunt-legacy-log": "~3.0.0", + "grunt-legacy-util": "~2.0.1", "iconv-lite": "~0.4.13", "js-yaml": "~3.14.0", "minimatch": "~3.0.4", @@ -7278,22 +8487,22 @@ } }, "node_modules/grunt-cli": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.3.2.tgz", - "integrity": "sha512-8OHDiZZkcptxVXtMfDxJvmN7MVJNE8L/yIcPb4HB7TlyFD1kDvjHrb62uhySsU14wJx9ORMnTuhRMQ40lH/orQ==", + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.4.3.tgz", + "integrity": "sha512-9Dtx/AhVeB4LYzsViCjUQkd0Kw0McN2gYpdmGYKtE2a5Yt7v1Q+HYZVWhqXc/kGnxlMtqKDxSwotiGeFmkrCoQ==", "dev": true, "dependencies": { - "grunt-known-options": "~1.1.0", + "grunt-known-options": "~2.0.0", "interpret": "~1.1.0", - "liftoff": "~2.5.0", + "liftup": "~3.0.1", "nopt": "~4.0.1", - "v8flags": "~3.1.1" + "v8flags": "~3.2.0" }, "bin": { "grunt": "bin/grunt" }, "engines": { - "node": ">=4" + "node": ">=10" } }, "node_modules/grunt-cli/node_modules/nopt": { @@ -7312,7 +8521,7 @@ "node_modules/grunt-contrib-clean": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/grunt-contrib-clean/-/grunt-contrib-clean-1.1.0.tgz", - "integrity": "sha1-Vkq/LQN4qYOhW54/MO51tzjEBjg=", + "integrity": "sha512-tET+TYTd8vCtKeGwbLjoH8+SdI8ngVzGbPr7vlWkewG7mYYHIccd2Ldxq+PK3DyBp5Www3ugdkfsjoNKUl5MTg==", "dev": true, "dependencies": { "async": "^1.5.2", @@ -7320,6 +8529,9 @@ }, "engines": { "node": ">= 0.10.0" + }, + "peerDependencies": { + "grunt": ">=0.4.5" } }, "node_modules/grunt-contrib-clean/node_modules/rimraf": { @@ -7337,7 +8549,7 @@ "node_modules/grunt-contrib-connect": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/grunt-contrib-connect/-/grunt-contrib-connect-1.0.2.tgz", - "integrity": "sha1-XPkzuRpnOGBEJzwLJERgPNmIebo=", + "integrity": "sha512-7OPoyfGrpOYzuiRPzGyzWDe/xFcjttXe1ztVSFS8TAVBtpfXeeOV9RiwuyqA4yN1UeOG2Pnpx8s0DcUDAu21Gw==", "dev": true, "dependencies": { "async": "^1.5.2", @@ -7352,12 +8564,15 @@ }, "engines": { "node": ">=0.10.0" + }, + "peerDependencies": { + "grunt": ">=0.4.0" } }, "node_modules/grunt-contrib-copy": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/grunt-contrib-copy/-/grunt-contrib-copy-1.0.0.tgz", - "integrity": "sha1-cGDGWB6QS4qw0A8HbgqPbj58NXM=", + "integrity": "sha512-gFRFUB0ZbLcjKb67Magz1yOHGBkyU6uL29hiEW1tdQ9gQt72NuMKIy/kS6dsCbV0cZ0maNCb0s6y+uT1FKU7jA==", "dev": true, "dependencies": { "chalk": "^1.1.1", @@ -7370,7 +8585,7 @@ "node_modules/grunt-contrib-copy/node_modules/ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -7379,7 +8594,7 @@ "node_modules/grunt-contrib-copy/node_modules/chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dev": true, "dependencies": { "ansi-styles": "^2.2.1", @@ -7395,7 +8610,7 @@ "node_modules/grunt-contrib-copy/node_modules/supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "dev": true, "engines": { "node": ">=0.8.0" @@ -7404,7 +8619,7 @@ "node_modules/grunt-contrib-pug": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/grunt-contrib-pug/-/grunt-contrib-pug-1.0.0.tgz", - "integrity": "sha1-tSWlwK/wRiL3Vw4x+SQQbxb4G0Y=", + "integrity": "sha512-VfP4Jzf8u2DK8oFsNWMKvJOjnNAYOBOCfcatt7VSJlpo6zQG2fFjPmbUqgtfff450HEnM7qY5m6ix77JyNuYmw==", "dev": true, "dependencies": { "chalk": "^1.0.0", @@ -7417,7 +8632,7 @@ "node_modules/grunt-contrib-pug/node_modules/ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -7426,7 +8641,7 @@ "node_modules/grunt-contrib-pug/node_modules/chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dev": true, "dependencies": { "ansi-styles": "^2.2.1", @@ -7442,7 +8657,7 @@ "node_modules/grunt-contrib-pug/node_modules/supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "dev": true, "engines": { "node": ">=0.8.0" @@ -7451,7 +8666,7 @@ "node_modules/grunt-contrib-stylus": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/grunt-contrib-stylus/-/grunt-contrib-stylus-1.2.0.tgz", - "integrity": "sha1-R9RG7wVESW7/naQY0A9XdFQ0crs=", + "integrity": "sha512-L+XT68YNgvpucbwczexLhkCXYcQdI1ozQZprSuFzMY8/sodFWD3gZfqSu/HUeK87g/ov09Yla24mMiNBhfaKcg==", "dev": true, "dependencies": { "async": "^1.5.2", @@ -7467,7 +8682,7 @@ "node_modules/grunt-contrib-stylus/node_modules/ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -7476,7 +8691,7 @@ "node_modules/grunt-contrib-stylus/node_modules/chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dev": true, "dependencies": { "ansi-styles": "^2.2.1", @@ -7492,7 +8707,7 @@ "node_modules/grunt-contrib-stylus/node_modules/supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "dev": true, "engines": { "node": ">=0.8.0" @@ -7514,9 +8729,9 @@ } }, "node_modules/grunt-contrib-watch/node_modules/async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", "dev": true, "dependencies": { "lodash": "^4.17.14" @@ -7525,7 +8740,7 @@ "node_modules/grunt-crx": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/grunt-crx/-/grunt-crx-1.0.5.tgz", - "integrity": "sha1-nU5QHO8WtyF3KmBBxNQdH5KFirU=", + "integrity": "sha512-CVmBxn3ScZX2uzyS7KQ24MpFVYFIi6pX4aEZ4zcKICzsRi7DFW8XMPY5QdKEzsNefK5XOnrOpXnbht5BUDl9Xw==", "dev": true, "dependencies": { "crx": "^3.0.1", @@ -7541,6 +8756,18 @@ "node": ">= 0.10.0" } }, + "node_modules/grunt-crx/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, "node_modules/grunt-exec": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/grunt-exec/-/grunt-exec-3.0.0.tgz", @@ -7548,63 +8775,142 @@ "dev": true, "engines": { "node": ">=0.8.0" + }, + "peerDependencies": { + "grunt": ">=0.4" } }, "node_modules/grunt-known-options": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.1.tgz", - "integrity": "sha512-cHwsLqoighpu7TuYj5RonnEuxGVFnztcUqTqp5rXFGYL4OuPFofwC4Ycg7n9fYwvK6F5WbYgeVOwph9Crs2fsQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-2.0.0.tgz", + "integrity": "sha512-GD7cTz0I4SAede1/+pAbmJRG44zFLPipVtdL9o3vqx9IEyb7b4/Y3s7r6ofI3CchR5GvYJ+8buCSioDv5dQLiA==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/grunt-legacy-log": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-2.0.0.tgz", - "integrity": "sha512-1m3+5QvDYfR1ltr8hjiaiNjddxGdQWcH0rw1iKKiQnF0+xtgTazirSTGu68RchPyh1OBng1bBUjLmX8q9NpoCw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-3.0.0.tgz", + "integrity": "sha512-GHZQzZmhyq0u3hr7aHW4qUH0xDzwp2YXldLPZTCjlOeGscAOWWPftZG3XioW8MasGp+OBRIu39LFx14SLjXRcA==", "dev": true, "dependencies": { "colors": "~1.1.2", - "grunt-legacy-log-utils": "~2.0.0", + "grunt-legacy-log-utils": "~2.1.0", "hooker": "~0.2.3", - "lodash": "~4.17.5" + "lodash": "~4.17.19" }, "engines": { "node": ">= 0.10.0" } }, "node_modules/grunt-legacy-log-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.1.0.tgz", + "integrity": "sha512-lwquaPXJtKQk0rUM1IQAop5noEpwFqOXasVoedLeNzaibf/OPWjKYvvdqnEHNmU+0T0CaReAXIbGo747ZD+Aaw==", + "dev": true, + "dependencies": { + "chalk": "~4.1.0", + "lodash": "~4.17.19" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/grunt-legacy-log-utils/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/grunt-legacy-log-utils/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/grunt-legacy-log-utils/node_modules/color-convert": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.0.1.tgz", - "integrity": "sha512-o7uHyO/J+i2tXG8r2bZNlVk20vlIFJ9IEYyHMCQGfWYru8Jv3wTqKZzvV30YW9rWEjq0eP3cflQ1qWojIe9VFA==", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "chalk": "~2.4.1", - "lodash": "~4.17.10" + "color-name": "~1.1.4" }, "engines": { - "node": ">=6" + "node": ">=7.0.0" + } + }, + "node_modules/grunt-legacy-log-utils/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/grunt-legacy-log-utils/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/grunt-legacy-log-utils/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, "node_modules/grunt-legacy-util": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-1.1.1.tgz", - "integrity": "sha512-9zyA29w/fBe6BIfjGENndwoe1Uy31BIXxTH3s8mga0Z5Bz2Sp4UCjkeyv2tI449ymkx3x26B+46FV4fXEddl5A==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-2.0.1.tgz", + "integrity": "sha512-2bQiD4fzXqX8rhNdXkAywCadeqiPiay0oQny77wA2F3WF4grPJXCvAcyoWUJV+po/b15glGkxuSiQCK299UC2w==", "dev": true, "dependencies": { - "async": "~1.5.2", - "exit": "~0.1.1", - "getobject": "~0.1.0", + "async": "~3.2.0", + "exit": "~0.1.2", + "getobject": "~1.0.0", "hooker": "~0.2.3", - "lodash": "~4.17.10", - "underscore.string": "~3.3.4", - "which": "~1.3.0" + "lodash": "~4.17.21", + "underscore.string": "~3.3.5", + "which": "~2.0.2" }, "engines": { - "node": ">= 6" + "node": ">=10" } }, + "node_modules/grunt-legacy-util/node_modules/async": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", + "dev": true + }, "node_modules/grunt-mocha-test": { "version": "0.13.3", "resolved": "https://registry.npmjs.org/grunt-mocha-test/-/grunt-mocha-test-0.13.3.tgz", @@ -7616,6 +8922,21 @@ }, "engines": { "node": ">= 0.10.4" + }, + "peerDependencies": { + "mocha": ">=1.20.0" + } + }, + "node_modules/grunt-mocha-test/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" } }, "node_modules/grunt-webpack": { @@ -7629,24 +8950,15 @@ }, "engines": { "node": ">=4" - } - }, - "node_modules/grunt/node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true, - "bin": { - "mkdirp": "bin/cmd.js" }, - "engines": { - "node": ">=10" + "peerDependencies": { + "webpack": "^2.0.0 || ^3.0.0 || ^4.0.0" } }, "node_modules/har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", "dev": true, "engines": { "node": ">=4" @@ -7656,6 +8968,7 @@ "version": "5.1.5", "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "deprecated": "this library is no longer supported", "dev": true, "dependencies": { "ajv": "^6.12.3", @@ -7669,7 +8982,6 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, "dependencies": { "function-bind": "^1.1.1" }, @@ -7680,7 +8992,7 @@ "node_modules/has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", "dev": true, "dependencies": { "ansi-regex": "^2.0.0" @@ -7689,10 +9001,19 @@ "node": ">=0.10.0" } }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/has-color": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", - "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", + "integrity": "sha512-kaNz5OTAYYmt646Hkqw50/qyxP2vFnTVu5AQ1Zmk22Kk5+4Qx6BpO8+u7IKsML5fOsFk0ZT0AcCJNYwcvaLBvw==", "dev": true, "engines": { "node": ">=0.10.0" @@ -7701,24 +9022,53 @@ "node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true, "engines": { "node": ">=4" } }, + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dependencies": { + "has-symbols": "^1.0.2" + }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/has-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "integrity": "sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==", "dev": true, "dependencies": { "get-value": "^2.0.6", @@ -7732,7 +9082,7 @@ "node_modules/has-values": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "integrity": "sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==", "dev": true, "dependencies": { "is-number": "^3.0.0", @@ -7745,7 +9095,7 @@ "node_modules/has-values/node_modules/kind-of": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "integrity": "sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==", "dev": true, "dependencies": { "is-buffer": "^1.1.5" @@ -7757,7 +9107,7 @@ "node_modules/hasbin": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/hasbin/-/hasbin-1.2.3.tgz", - "integrity": "sha1-eMWSaJPIAhXCtWiuH9P8q3omlrA=", + "integrity": "sha512-CCd8e/w2w28G8DyZvKgiHnQJ/5XXDz6qiUHnthvtag/6T5acUeN5lqq+HMoBqcmgWueWDhiCplrw0Kb1zDACRg==", "dev": true, "dependencies": { "async": "~1.5" @@ -7780,12 +9130,6 @@ "node": ">=4" } }, - "node_modules/hash-base/node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, "node_modules/hash-base/node_modules/readable-stream": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", @@ -7800,21 +9144,6 @@ "node": ">= 6" } }, - "node_modules/hash-base/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "node_modules/hash-base/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, "node_modules/hash.js": { "version": "1.1.7", "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", @@ -7828,16 +9157,16 @@ "node_modules/he": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", - "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", + "integrity": "sha512-z/GDPjlRMNOa2XJiB4em8wJpuuBfrFOlYKTZxtpkdr1uPdibHI8rYA3MY0KDObpVyaes0e/aunid/t88ZI2EKA==", "dev": true, "bin": { "he": "bin/he" } }, "node_modules/highlight.js": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.4.1.tgz", - "integrity": "sha512-yR5lWvNz7c85OhVAEAeFhVCc/GV4C30Fjzc/rCP0aCWzc1UUOPUk55dK/qdwTZHBvMZo+eZ2jpk62ndX/xMFlg==", + "version": "10.7.3", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.3.tgz", + "integrity": "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==", "dev": true, "engines": { "node": "*" @@ -7846,7 +9175,7 @@ "node_modules/hmac-drbg": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", "dev": true, "dependencies": { "hash.js": "^1.0.3", @@ -7857,7 +9186,7 @@ "node_modules/home-or-tmp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", - "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", + "integrity": "sha512-ycURW7oUxE2sNiPVw1HVEFsW+ecOpJ5zaj7eC0RlwhibhRBod20muUN8qu/gzx956YrLolVvs1MTXwKgC2rVEg==", "dev": true, "dependencies": { "os-homedir": "^1.0.0", @@ -7882,16 +9211,16 @@ "node_modules/hooker": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz", - "integrity": "sha1-uDT3I8xKJCqmWWNFnfbZhMXT2Vk=", + "integrity": "sha512-t+UerCsQviSymAInD01Pw+Dn/usmz1sRO+3Zk1+lx8eg+WKpD2ulcwWqHHL0+aseRBr+3+vIhiG1K1JTwaIcTA==", "dev": true, "engines": { "node": "*" } }, "node_modules/hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", "dev": true }, "node_modules/htmlparser2": { @@ -7922,40 +9251,25 @@ "node": ">= 6" } }, - "node_modules/htmlparser2/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "node_modules/htmlparser2/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, "node_modules/http-errors": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", - "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" }, "engines": { - "node": ">= 0.6" + "node": ">= 0.8" } }, "node_modules/http-parser-js": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.2.tgz", - "integrity": "sha512-opCO9ASqg5Wy2FNo7A0sxy71yGbbkJJXLdgMK04Tcypw9jr2MgWbyubb0+WdmDmGnFflO7fRbqbaihh/ENDlRQ==", + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", + "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", "dev": true }, "node_modules/http-proxy-agent": { @@ -7980,10 +9294,16 @@ "ms": "2.0.0" } }, + "node_modules/http-proxy-agent/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "node_modules/http-signature": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", "dev": true, "dependencies": { "assert-plus": "^1.0.0", @@ -7999,6 +9319,7 @@ "version": "3.3.7", "resolved": "https://registry.npmjs.org/http2/-/http2-3.3.7.tgz", "integrity": "sha512-puSi8M8WNlFJm9Pk4c/Mbz9Gwparuj3gO9/RRO5zv6piQ0FY+9Qywp0PdWshYgsMJSalixFY7eC6oPu0zRxLAQ==", + "deprecated": "Use the built-in module in node 9.0.0 or newer, instead", "dev": true, "engines": { "node": ">=0.12.0 <9.0.0" @@ -8007,7 +9328,7 @@ "node_modules/https-browserify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", + "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==", "dev": true }, "node_modules/https-proxy-agent": { @@ -8024,20 +9345,14 @@ } }, "node_modules/https-proxy-agent/node_modules/debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { "ms": "^2.1.1" } }, - "node_modules/https-proxy-agent/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "node_modules/iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -8050,15 +9365,29 @@ } }, "node_modules/ieee754": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", - "dev": true + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, "node_modules/iferr": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "integrity": "sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA==", "dev": true }, "node_modules/ignore": { @@ -8070,13 +9399,13 @@ "node_modules/immediate": { "version": "3.0.6", "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", "dev": true }, "node_modules/import-lazy": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", "dev": true, "engines": { "node": ">=4" @@ -8085,7 +9414,7 @@ "node_modules/imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true, "engines": { "node": ">=0.8.19" @@ -8100,7 +9429,7 @@ "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "dev": true, "dependencies": { "once": "^1.3.0", @@ -8108,23 +9437,26 @@ } }, "node_modules/inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "node_modules/ini": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.7.tgz", - "integrity": "sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ==", + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", "dev": true }, "node_modules/inject-loader": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/inject-loader/-/inject-loader-3.0.1.tgz", - "integrity": "sha512-0Kd4NqMJUhknG4ECiJ/mgyHJBpfBBWZ3IKHl2BLNQiFtMO7/xiv9mmHl7mGvE0iKrBeQAZdMcQP3sMXZN0cqeg==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/inject-loader/-/inject-loader-4.0.1.tgz", + "integrity": "sha512-fUFtHkso2AnzQyyJjuGuDYL0mW2EIQUlS4MgXXmCIRjVLyDk3oXGJqNcSTUg6DGs1q4gvqVIWsxfmPKxF44xfw==", "dev": true, "dependencies": { "babel-core": "~6" + }, + "peerDependencies": { + "webpack": "^1 || ^2 || ^3 || ^4" } }, "node_modules/inquirer": { @@ -8152,9 +9484,9 @@ } }, "node_modules/inquirer/node_modules/ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", "dev": true, "engines": { "node": ">=4" @@ -8163,7 +9495,7 @@ "node_modules/inquirer/node_modules/strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", "dev": true, "dependencies": { "ansi-regex": "^3.0.0" @@ -8172,10 +9504,24 @@ "node": ">=4" } }, + "node_modules/internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/interpret": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", - "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=", + "integrity": "sha512-CLM8SNMDu7C5psFCn6Wg/tgpj/bKAg7hc2gWqcuR9OD5Ft9PhBpIu8PLicPeis+xDd6YX2ncI8MCA64I9tftIA==", "dev": true }, "node_modules/invariant": { @@ -8197,9 +9543,9 @@ } }, "node_modules/ip": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==", "dev": true }, "node_modules/ipaddr.js": { @@ -8224,48 +9570,55 @@ } }, "node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "dependencies": { - "kind-of": "^3.0.2" + "kind-of": "^6.0.0" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", "dev": true, "dependencies": { - "is-buffer": "^1.1.5" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-arguments": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", - "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==", - "dev": true, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", "dev": true }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-binary-path": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==", "dev": true, "dependencies": { "binary-extensions": "^1.0.0" @@ -8274,100 +9627,104 @@ "node": ">=0.10.0" } }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-buffer": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" }, "node_modules/is-callable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", - "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "dev": true, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dev": true, + "node_modules/is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", "dependencies": { - "kind-of": "^3.0.2" + "has": "^1.0.3" }, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "dependencies": { - "is-buffer": "^1.1.5" + "kind-of": "^6.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/is-date-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/is-descriptor/node_modules/kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/is-expression": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-3.0.0.tgz", - "integrity": "sha1-Oayqa+f9HzRx3ELHQW5hwkMXrJ8=", + "integrity": "sha512-vyMeQMq+AiH5uUnoBfMTwf18tO3bM6k1QXBE9D6ueAAquEfCZe3AJPtud9g6qS0+4X8xA7ndpZiDyeb2l2qOBw==", "dependencies": { "acorn": "~4.0.2", "object-assign": "^4.0.1" } }, - "node_modules/is-expression/node_modules/acorn": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", - "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", "dev": true, "engines": { "node": ">=0.10.0" @@ -8376,7 +9733,7 @@ "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true, "engines": { "node": ">=0.10.0" @@ -8389,24 +9746,27 @@ "dev": true, "engines": { "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", "dev": true, "engines": { "node": ">=4" } }, "node_modules/is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, "dependencies": { - "is-extglob": "^2.1.0" + "is-extglob": "^2.1.1" }, "engines": { "node": ">=0.10.0" @@ -8415,7 +9775,7 @@ "node_modules/is-installed-globally": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", - "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", + "integrity": "sha512-ERNhMg+i/XgDwPIPF3u24qpajVreaiSuvpb1Uu0jugw7KKcxGyCX8cgp8P5fwTmAuXku6beDHHECdKArjlg7tw==", "dev": true, "dependencies": { "global-dirs": "^0.1.0", @@ -8432,28 +9792,40 @@ "dev": true }, "node_modules/is-my-ip-valid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz", - "integrity": "sha512-gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.1.tgz", + "integrity": "sha512-jxc8cBcOWbNK2i2aTkCZP6i7wkHF1bqKFrwEHuN5Jtg5BSaZHUZQ/JTOJwoV41YvHnOaRyWWh72T/KvfNz9DJg==", "dev": true }, "node_modules/is-my-json-valid": { - "version": "2.20.5", - "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.20.5.tgz", - "integrity": "sha512-VTPuvvGQtxvCeghwspQu1rBgjYUT6FGxPlvFKbYuFtgc4ADsX3U5ihZOYN0qyU6u+d4X9xXb0IT5O6QpXKt87A==", + "version": "2.20.6", + "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.20.6.tgz", + "integrity": "sha512-1JQwulVNjx8UqkPE/bqDaxtH4PXCe/2VRh/y3p99heOV87HG4Id5/VfDswd+YiAfHcRTfDlWgISycnHuhZq1aw==", "dev": true, "dependencies": { "generate-function": "^2.0.0", "generate-object-property": "^1.1.0", "is-my-ip-valid": "^1.0.0", - "jsonpointer": "^4.0.0", + "jsonpointer": "^5.0.0", "xtend": "^4.0.0" } }, + "node_modules/is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-npm": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", - "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", + "integrity": "sha512-9r39FIr3d+KD9SbX0sfMsHzb5PP3uimOiwr3YupUaUFG4W0l1U57Rx3utpttV7qz5U3jmrO5auUa04LU9pyHsg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -8462,7 +9834,7 @@ "node_modules/is-number": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", "dev": true, "dependencies": { "kind-of": "^3.0.2" @@ -8471,10 +9843,25 @@ "node": ">=0.10.0" } }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-number/node_modules/kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "dependencies": { "is-buffer": "^1.1.5" @@ -8486,7 +9873,7 @@ "node_modules/is-obj": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -8495,7 +9882,7 @@ "node_modules/is-path-inside": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", - "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "integrity": "sha512-qhsCR/Esx4U4hg/9I19OVUAJkGWtjRYHMRgUMZE2TDdj+Ag+kttZanLupfddNyglzz50cUlmWzUaI37GDfNx/g==", "dev": true, "dependencies": { "path-is-inside": "^1.0.1" @@ -8505,13 +9892,9 @@ } }, "node_modules/is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", "engines": { "node": ">=0.10.0" } @@ -8524,27 +9907,31 @@ "node_modules/is-property": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", - "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=", + "integrity": "sha512-Ks/IoX00TtClbGQr4TWXemAnktAQvYB7HzcCxDGqEZU6oCmb2INHuOoKxbtR+HFkmYWBKv/dOZtGRiAjDhj92g==", "dev": true }, "node_modules/is-redirect": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", - "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", + "integrity": "sha512-cr/SlUEe5zOGmzvj9bUyC4LVvkNVAXu4GytXLNMr1pny+a65MpQ9IJzFHD5vi7FyJgb4qt27+eS3TuQnqB+RQw==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/is-regex": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz", - "integrity": "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dependencies": { - "has-symbols": "^1.0.1" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-relative": { @@ -8574,31 +9961,61 @@ "node": ">=0.10.0" } }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", "dev": true, "engines": { "node": ">=0.10.0" } }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-symbol": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", - "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, "dependencies": { - "has-symbols": "^1.0.1" + "has-symbols": "^1.0.2" }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", "dev": true }, "node_modules/is-unc-path": { @@ -8616,9 +10033,21 @@ "node_modules/is-utf8": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "integrity": "sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==", "dev": true }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-windows": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", @@ -8631,7 +10060,7 @@ "node_modules/is-wsl": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "integrity": "sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==", "dev": true, "engines": { "node": ">=4" @@ -8640,19 +10069,19 @@ "node_modules/isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "dev": true }, "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true }, "node_modules/isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -8674,40 +10103,42 @@ "node_modules/isstream": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", "dev": true }, "node_modules/jed": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/jed/-/jed-1.1.1.tgz", - "integrity": "sha1-elSbvZ/+FYWwzQoZHiAwVb7ldLQ=", + "integrity": "sha512-z35ZSEcXHxLW4yumw0dF6L464NT36vmx3wxJw8MDpraBcWuNVgUPZgPJKcu1HekNgwlMFNqol7i/IpSbjhqwqA==", "dev": true }, "node_modules/jetpack-id": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/jetpack-id/-/jetpack-id-1.0.0.tgz", - "integrity": "sha1-LPn7rkbYB0/Ba33gBxyO/rykc6Y=", + "integrity": "sha512-uqasW8dq68KMl8cGkJpakBG/VgsfROblW7B3w9cTN0MQiZ5s+jmi8WgO4/lkrTPbakpU2LA+bZvyVBxadk+MHg==", + "deprecated": "Jetpack extensions are no longer supported by Firefox. Use web-ext instead to build a WebExtension.", "dev": true }, "node_modules/jose": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/jose/-/jose-4.1.0.tgz", - "integrity": "sha512-Hqx2vuNlo5sDe+ZWvOXAExWXk31mXgxMuUkUjEIeGNU4KFPZHO8hOnljhb25eoK4g+fth+7tU+k+AA+p/eZtYw==", + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/jose/-/jose-4.11.0.tgz", + "integrity": "sha512-wLe+lJHeG8Xt6uEubS4x0LVjS/3kXXu9dGoj9BNnlhYq7Kts0Pbb2pvv5KiI0yaKH/eaiR0LUOBhOVo9ktd05A==", "dev": true, "funding": { "url": "https://github.com/sponsors/panva" } }, "node_modules/jquery": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.5.1.tgz", - "integrity": "sha512-XwIBPqcMn57FxfT+Go5pzySnm4KWkT1Tv7gjrpT1srtf8Weynl6R273VJ5GjkRb51IzMp5nbaPjJXMWeju2MKg==", + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.6.1.tgz", + "integrity": "sha512-opJeO4nCucVnsjiXOE+/PcCgYw9Gwpvs/a6B1LL/lQhwWwpbVEVYDZ1FokFr8PRc7ghYlrFPuyHuiiDNTQxmcw==", "dev": true }, "node_modules/js-select": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/js-select/-/js-select-0.6.0.tgz", - "integrity": "sha1-woTiKCTVknrsli3N8kcXSu+w0ZA=", + "integrity": "sha512-npBjRT1DXCKnpLqcsaXj5XVB5l/wAcSGCp03e/6xD5BHg9cFlnoQ/wrSGZIrtaa3J7+N9tLvX1RkxcykmJVyyg==", + "deprecated": "Package no longer supported. Contact support@npmjs.com for more info.", "dev": true, "dependencies": { "JSONSelect": "0.2.1", @@ -8717,7 +10148,7 @@ "node_modules/js-stringify": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", - "integrity": "sha1-Fzb939lyTyijaCrcYjCufk6Weds=" + "integrity": "sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==" }, "node_modules/js-tokens": { "version": "4.0.0", @@ -8726,9 +10157,9 @@ "dev": true }, "node_modules/js-yaml": { - "version": "3.14.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", - "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, "dependencies": { "argparse": "^1.0.7", @@ -8741,7 +10172,7 @@ "node_modules/jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", "dev": true }, "node_modules/jsesc": { @@ -8759,7 +10190,7 @@ "node_modules/json-merge-patch": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/json-merge-patch/-/json-merge-patch-0.2.3.tgz", - "integrity": "sha1-+ixrWvh9p3uuKWalidUuI+2B/kA=", + "integrity": "sha512-mjd5eObNGOhWkKCztwVuF25KOzLj2T4TJaWXLBgCQPeoPRJrMxKNgjNBE8sPmXoWRT0WDlo4Itd/gTlFh29TFw==", "dev": true, "dependencies": { "deep-equal": "^1.0.0" @@ -8772,9 +10203,9 @@ "dev": true }, "node_modules/json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", "dev": true }, "node_modules/json-schema-traverse": { @@ -8784,34 +10215,34 @@ "dev": true }, "node_modules/json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.2.tgz", + "integrity": "sha512-eunSSaEnxV12z+Z73y/j5N37/In40GK4GmsSy+tEHJMxknvqnA7/djeYtAgW0GsWHUfg+847WJjKaEylk2y09g==", "dev": true, "dependencies": { - "jsonify": "~0.0.0" + "jsonify": "^0.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true }, "node_modules/json-stringify-safe": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", "dev": true }, "node_modules/json5": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", - "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", + "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", "dev": true, - "dependencies": { - "minimist": "^1.2.5" - }, "bin": { "json5": "lib/cli.js" }, @@ -8822,25 +10253,25 @@ "node_modules/jsonfile": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", "dev": true, - "dependencies": { + "optionalDependencies": { "graceful-fs": "^4.1.6" } }, "node_modules/jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.1.tgz", + "integrity": "sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==", "dev": true, - "engines": { - "node": "*" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/jsonpointer": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.1.0.tgz", - "integrity": "sha512-CXcRvMyTlnR53xMcKnuMzfCA5i/nfblTnnr74CZb6C4vG39eu6w51t7nKmU5MfLfbTgGItliNyjO/ciNPDqClg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-5.0.1.tgz", + "integrity": "sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==", "dev": true, "engines": { "node": ">=0.10.0" @@ -8849,13 +10280,13 @@ "node_modules/jsonpointer.js": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/jsonpointer.js/-/jsonpointer.js-0.4.0.tgz", - "integrity": "sha1-ACyxI/dnqv3rAZYTLOXE+ZQcyro=", + "integrity": "sha512-2bf/1crAmPpsmj1I6rDT6W0SOErkrNBpb555xNWcMVWYrX6VnXpG0GRMQ2shvOHwafpfse8q0gnzPFYVH6Tqdg==", "dev": true }, "node_modules/JSONSelect": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.2.1.tgz", - "integrity": "sha1-QVQYpSbTP+MddLTe+jyDbUhewgM=", + "integrity": "sha512-Q/zZyUq4PZ7Mja7Jz7doBHcdQpfyCq2zR2B5AUqFtQs4hzIe4gsiZ1Yzkx7nEiS15JrYpfWe99MAjYwFt05Q4g==", "dev": true, "engines": { "node": ">=0.4.7" @@ -8883,31 +10314,25 @@ "npm": ">=1.4.28" } }, - "node_modules/jsonwebtoken/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "node_modules/jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", + "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", "dev": true, - "engines": [ - "node >=0.6.0" - ], "dependencies": { "assert-plus": "1.0.0", "extsprintf": "1.3.0", - "json-schema": "0.2.3", + "json-schema": "0.4.0", "verror": "1.10.0" + }, + "engines": { + "node": ">=0.6.0" } }, "node_modules/jstransformer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", - "integrity": "sha1-7Yvwkh4vPx7U1cGkT2hwntJHIsM=", + "integrity": "sha512-C9YK3Rf8q6VAPDCCU9fnqo3mAfOH6vUGnMcP4AQAYIEpWtfGLpwOTmZ+igtdK5y+VvI2n3CyYSzy4Qh34eq24A==", "dependencies": { "is-promise": "^2.0.0", "promise": "^7.0.1" @@ -8927,7 +10352,7 @@ "node_modules/jstransformer-markdown-it": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/jstransformer-markdown-it/-/jstransformer-markdown-it-2.1.0.tgz", - "integrity": "sha1-aewwzkUYvtWZezjwJ2SOjChekvc=", + "integrity": "sha512-E9uALZSe3M3jiq9Mza+wTlT44Yyh/s3D5XWUeJgH3vyzB05KFQz8Tv2I9do3BbRY/S5SDxFMkxB6fCGj+MA2rg==", "dependencies": { "markdown-it": "^8.0.0" }, @@ -8936,21 +10361,21 @@ } }, "node_modules/jszip": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.5.0.tgz", - "integrity": "sha512-WRtu7TPCmYePR1nazfrtuF216cIVon/3GWOvHS9QR5bIwSbnxtdpma6un3jyGGNhHsKCSzn5Ypk+EkDRvTGiFA==", + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", + "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", "dev": true, "dependencies": { "lie": "~3.3.0", "pako": "~1.0.2", "readable-stream": "~2.3.6", - "set-immediate-shim": "~1.0.1" + "setimmediate": "^1.0.5" } }, "node_modules/just-extend": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.1.0.tgz", - "integrity": "sha512-ApcjaOdVTJ7y4r08xI5wIqpvwS48Q0PBG4DJROcEkH1f8MdAiNFyFxz3xoL0LWAVwjrwPYZdVHHxhRHcx/uGLA==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", + "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", "dev": true }, "node_modules/jwa": { @@ -8986,7 +10411,7 @@ "node_modules/latest-version": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", - "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", + "integrity": "sha512-Be1YRHWWlZaSsrz2U+VInk+tO0EwLIyV+23RhWLINJYwg/UIikxjlj3MhH37/6/EDCAusjajvMkMMUXRaMWl/w==", "dev": true, "dependencies": { "package-json": "^4.0.0" @@ -8996,17 +10421,18 @@ } }, "node_modules/lazy-cache": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", - "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-0.2.7.tgz", + "integrity": "sha512-gkX52wvU/R8DVMMt78ATVPFMJqfW8FPz1GZ1sVHBVQHmu/WvhIWE4cE1GBzhJNFicDeYhnwp6Rl35BcAIM3YOQ==", + "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/lazystream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", - "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", + "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", "dev": true, "dependencies": { "readable-stream": "^2.0.5" @@ -9021,87 +10447,136 @@ "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", "dev": true, "dependencies": { - "invert-kv": "^2.0.0" + "invert-kv": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "dev": true, + "dependencies": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "dev": true, + "dependencies": { + "immediate": "~3.0.5" + } + }, + "node_modules/liftup": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/liftup/-/liftup-3.0.1.tgz", + "integrity": "sha512-yRHaiQDizWSzoXk3APcA71eOI/UuhEkNN9DiW2Tt44mhYzX4joFoCZlxsSOF7RyeLlfqzFLQI1ngFq3ggMPhOw==", + "dev": true, + "dependencies": { + "extend": "^3.0.2", + "findup-sync": "^4.0.0", + "fined": "^1.2.0", + "flagged-respawn": "^1.0.1", + "is-plain-object": "^2.0.4", + "object.map": "^1.0.1", + "rechoir": "^0.7.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/liftup/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "node_modules/liftup/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/levenary": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/levenary/-/levenary-1.1.1.tgz", - "integrity": "sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ==", + "node_modules/liftup/node_modules/findup-sync": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-4.0.0.tgz", + "integrity": "sha512-6jvvn/12IC4quLBL1KNokxC7wWTvYncaVUYSoxWw7YykPLuRrnv4qdHcSOywOI5RpkOVGeQRtWM8/q+G6W6qfQ==", "dev": true, "dependencies": { - "leven": "^3.1.0" + "detect-file": "^1.0.0", + "is-glob": "^4.0.0", + "micromatch": "^4.0.2", + "resolve-dir": "^1.0.1" }, "engines": { - "node": ">= 6" + "node": ">= 8" } }, - "node_modules/levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "node_modules/liftup/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true, - "dependencies": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - }, "engines": { - "node": ">= 0.8.0" + "node": ">=0.12.0" } }, - "node_modules/lie": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", - "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "node_modules/liftup/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "dev": true, "dependencies": { - "immediate": "~3.0.5" + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/liftoff": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.5.0.tgz", - "integrity": "sha1-IAkpG7Mc6oYbvxCnwVooyvdcMew=", + "node_modules/liftup/node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", "dev": true, "dependencies": { - "extend": "^3.0.0", - "findup-sync": "^2.0.0", - "fined": "^1.0.1", - "flagged-respawn": "^1.0.0", - "is-plain-object": "^2.0.4", - "object.map": "^1.0.0", - "rechoir": "^0.6.2", - "resolve": "^1.1.7" + "braces": "^3.0.2", + "picomatch": "^2.3.1" }, "engines": { - "node": ">= 0.8" + "node": ">=8.6" } }, - "node_modules/liftoff/node_modules/findup-sync": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", - "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", + "node_modules/liftup/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, "dependencies": { - "detect-file": "^1.0.0", - "is-glob": "^3.1.0", - "micromatch": "^3.0.4", - "resolve-dir": "^1.0.1" + "is-number": "^7.0.0" }, "engines": { - "node": ">= 0.10" + "node": ">=8.0" } }, "node_modules/linkify-it": { @@ -9121,7 +10596,7 @@ "node_modules/load-json-file": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "integrity": "sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A==", "dev": true, "dependencies": { "graceful-fs": "^4.1.2", @@ -9137,7 +10612,7 @@ "node_modules/load-json-file/node_modules/parse-json": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "integrity": "sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==", "dev": true, "dependencies": { "error-ex": "^1.2.0" @@ -9149,7 +10624,7 @@ "node_modules/load-json-file/node_modules/pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", "dev": true, "engines": { "node": ">=0.10.0" @@ -9158,7 +10633,7 @@ "node_modules/load-json-file/node_modules/strip-bom": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "integrity": "sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==", "dev": true, "dependencies": { "is-utf8": "^0.2.0" @@ -9177,151 +10652,142 @@ } }, "node_modules/loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.3.tgz", + "integrity": "sha512-THWqIsn8QRnvLl0shHYVBN9syumU8pYWEHPTmkiVGd+7K5eFNVSY6AJhRvgGF70gg1Dz+l/k8WicvFCxdEs60A==", "dev": true, "dependencies": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", - "json5": "^1.0.1" + "json5": "^2.1.2" }, "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/loader-utils/node_modules/json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" + "node": ">=8.9.0" } }, "node_modules/locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "p-locate": "^4.1.0" }, "engines": { - "node": ">=6" + "node": ">=8" } }, "node_modules/lodash": { - "version": "4.17.19", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", - "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==" + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, "node_modules/lodash.assign": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", - "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=", + "integrity": "sha512-hFuH8TY+Yji7Eja3mGiuAxBqLagejScbG8GbG0j6o9vzn0YL14My+ktnqtZgFTosKymC9/44wP6s7xyuLfnClw==", "dev": true }, "node_modules/lodash.assignin": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", - "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=", + "integrity": "sha512-yX/rx6d/UTVh7sSVWVSIMjfnz95evAgDFdb1ZozC35I9mSFCkmzptOzevxjgbQUsc78NR44LVHWjsoMQXy9FDg==", "dev": true }, "node_modules/lodash.clone": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.clone/-/lodash.clone-4.5.0.tgz", - "integrity": "sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y=", + "integrity": "sha512-GhrVeweiTD6uTmmn5hV/lzgCQhccwReIVRLHp7LT4SopOjqEZ5BbX8b5WWEtAKasjmy8hR7ZPwsYlxRCku5odg==", "dev": true }, "node_modules/lodash.clonedeep": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "integrity": "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==", "dev": true }, "node_modules/lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=" + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" }, "node_modules/lodash.flatten": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", + "integrity": "sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==", "dev": true }, "node_modules/lodash.get": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", "dev": true }, "node_modules/lodash.includes": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", - "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8=", + "integrity": "sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==", "dev": true }, "node_modules/lodash.isboolean": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", - "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY=", + "integrity": "sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==", "dev": true }, "node_modules/lodash.isinteger": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", - "integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M=", + "integrity": "sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==", "dev": true }, "node_modules/lodash.isnumber": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", - "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w=", + "integrity": "sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==", "dev": true }, "node_modules/lodash.isplainobject": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", "dev": true }, "node_modules/lodash.isstring": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", - "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=", + "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==", "dev": true }, "node_modules/lodash.once": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", - "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=", + "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==", "dev": true }, "node_modules/lodash.set": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz", - "integrity": "sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM=", + "integrity": "sha512-4hNPN5jlm/N/HLMCO43v8BXKq9Z7QdAGc/VGrRD61w8gN9g/6jF9A4L1pbUgBLCffi0w9VsXfTOij5x8iTyFvg==", "dev": true }, "node_modules/lodash.sortby": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", - "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", + "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==", "dev": true }, "node_modules/loglevel": { - "version": "1.6.8", - "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.8.tgz", - "integrity": "sha512-bsU7+gc9AJ2SqpzxwU3+1fedl8zAntbtC5XYlt3s2j1hJcn2PsXSmgN8TaLG/J1/2mod4+cE/3vNL70/c1RNCA==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.8.1.tgz", + "integrity": "sha512-tCRIJM51SHjAayKwC+QAg8hT8vg6z7GSgLJKGvzuPb1Wc+hLzqtuVLxp6/HzSPOozuK+8ErAhy7U/sVzw8Dgfg==", "dev": true, "engines": { "node": ">= 0.6.0" + }, + "funding": { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/loglevel" } }, "node_modules/lolex": { @@ -9333,7 +10799,7 @@ "node_modules/longest": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", - "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", + "integrity": "sha512-k+yt5n3l48JU4k8ftnKG6V7u32wyH2NfKzeMto9F/QRE0amxy/LayxwlvjjkZEIzqR+19IrtFO8p5kB9QaYUFg==", "engines": { "node": ">=0.10.0" } @@ -9350,6 +10816,15 @@ "loose-envify": "cli.js" } }, + "node_modules/loupe": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.6.tgz", + "integrity": "sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==", + "dev": true, + "dependencies": { + "get-func-name": "^2.0.0" + } + }, "node_modules/lowercase-keys": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", @@ -9379,16 +10854,18 @@ } }, "node_modules/make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, "dependencies": { - "pify": "^4.0.1", - "semver": "^5.6.0" + "semver": "^6.0.0" }, "engines": { - "node": ">=6" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/make-iterator": { @@ -9418,7 +10895,7 @@ "node_modules/map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -9427,7 +10904,7 @@ "node_modules/map-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "integrity": "sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==", "dev": true, "dependencies": { "object-visit": "^1.0.0" @@ -9439,12 +10916,15 @@ "node_modules/markdown": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/markdown/-/markdown-0.5.0.tgz", - "integrity": "sha1-KCBbVlqK51kt4gdGPWY33BgnIrI=", + "integrity": "sha512-ctGPIcuqsYoJ493sCtFK7H4UEgMWAUdXeBhPbdsg1W0LsV9yJELAHRsMmWfTgao6nH0/x5gf9FmsbxiXnrgaIQ==", "dependencies": { "nopt": "~2.1.1" }, "bin": { "md2html": "bin/md2html.js" + }, + "engines": { + "node": "*" } }, "node_modules/markdown-it": { @@ -9465,7 +10945,7 @@ "node_modules/markdown/node_modules/nopt": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/nopt/-/nopt-2.1.2.tgz", - "integrity": "sha1-bMzZd7gBMqB3MdbozljCyDA8+a8=", + "integrity": "sha512-x8vXm7BZ2jE1Txrxh/hO74HTuYZQEbo8edoRcANgdZ4+PCV+pbjd/xdummkmjjC7LU5EjPzlu8zEq/oxWylnKA==", "dependencies": { "abbrev": "1" }, @@ -9497,12 +10977,12 @@ "node_modules/mdurl": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=" + "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" }, "node_modules/media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", "engines": { "node": ">= 0.6" } @@ -9524,7 +11004,7 @@ "node_modules/memory-fs": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", - "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "integrity": "sha512-cda4JKCxReDXFXRqOHPQscuIYg1PvxbE2S2GP45rnwfEK+vZaXC8C1OFvdHIbgw0DLzowXGVoxLaAmlgRy14GQ==", "dev": true, "dependencies": { "errno": "^0.1.3", @@ -9534,12 +11014,12 @@ "node_modules/merge-descriptors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" }, "node_modules/methods": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", "engines": { "node": ">= 0.6" } @@ -9568,6 +11048,43 @@ "node": ">=0.10.0" } }, + "node_modules/micromatch/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/micromatch/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/micromatch/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/miller-rabin": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", @@ -9582,36 +11099,37 @@ } }, "node_modules/miller-rabin/node_modules/bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true }, "node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true, "bin": { "mime": "cli.js" }, "engines": { - "node": ">=4" + "node": ">=4.0.0" } }, "node_modules/mime-db": { - "version": "1.44.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", - "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==", + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", "engines": { "node": ">= 0.6" } }, "node_modules/mime-types": { - "version": "2.1.27", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", - "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "dependencies": { - "mime-db": "1.44.0" + "mime-db": "1.52.0" }, "engines": { "node": ">= 0.6" @@ -9629,7 +11147,7 @@ "node_modules/min-document": { "version": "2.19.0", "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", - "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", + "integrity": "sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ==", "dev": true, "dependencies": { "dom-walk": "^0.1.0" @@ -9644,13 +11162,13 @@ "node_modules/minimalistic-crypto-utils": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==", "dev": true }, "node_modules/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz", + "integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==", "dev": true, "dependencies": { "brace-expansion": "^1.1.7" @@ -9660,10 +11178,13 @@ } }, "node_modules/minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/mississippi": { "version": "2.0.0", @@ -9711,10 +11232,22 @@ "node": ">=0.10.0" } }, + "node_modules/mixin-deep/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/mixin-object": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", - "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", + "integrity": "sha512-ALGF1Jt9ouehcaXaHhn6t1yGWRqGaHkPFndtFVHfZXOvkIZ/yoGaSi0AHVTafb3ZBGg4dr/bDwnaEKqCXzchMA==", "dev": true, "dependencies": { "for-in": "^0.1.3", @@ -9727,22 +11260,22 @@ "node_modules/mixin-object/node_modules/for-in": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", - "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=", + "integrity": "sha512-F0to7vbBSHP8E3l6dCjxNOLuSFAACIxFy3UehTUlG7svlXi37HHsDkyVcHo0Pq8QwrE+pXvWSVX3ZT1T9wAZ9g==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "dev": true, - "dependencies": { - "minimist": "^1.2.5" - }, "bin": { "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" } }, "node_modules/mocha": { @@ -9803,16 +11336,29 @@ "node": "*" } }, + "node_modules/mocha/node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/mocha/node_modules/minimist": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "integrity": "sha512-miQKw5Hv4NS1Psg2517mV4e4dYNaO3++hjAvLOAzKqZ61rH8NS1SK+vbfBWZ5PY/Me/bEWhUwqMghEW5Fb9T7Q==", "dev": true }, "node_modules/mocha/node_modules/mkdirp": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "integrity": "sha512-SknJC52obPfGQPnjIkXbmA6+5H15E+fR+E4iR2oQ3zzCLbd7/ONua69R/Gw7AgkTLsRG+r5fzksYwWe1AgTyWA==", + "deprecated": "Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)", "dev": true, "dependencies": { "minimist": "0.0.8" @@ -9821,6 +11367,12 @@ "mkdirp": "bin/cmd.js" } }, + "node_modules/mocha/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "node_modules/mocha/node_modules/supports-color": { "version": "5.4.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", @@ -9834,9 +11386,9 @@ } }, "node_modules/moment": { - "version": "2.27.0", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.27.0.tgz", - "integrity": "sha512-al0MUK7cpIcglMv3YF13qSgdAIqxHTO7brRtaz3DlSULbqfazqkc5kEjNrLDOM7fsjshoFIihnU8snrP7zUvhQ==", + "version": "2.29.4", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", + "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==", "dev": true, "engines": { "node": "*" @@ -9858,11 +11410,29 @@ "node": ">= 0.8.0" } }, - "node_modules/morgan/node_modules/depd": { + "node_modules/morgan/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/morgan/node_modules/ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/morgan/node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, "engines": { "node": ">= 0.8" } @@ -9870,7 +11440,7 @@ "node_modules/move-concurrently": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", - "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "integrity": "sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ==", "dev": true, "dependencies": { "aproba": "^1.1.1", @@ -9881,6 +11451,18 @@ "run-queue": "^1.0.3" } }, + "node_modules/move-concurrently/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, "node_modules/move-concurrently/node_modules/rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -9894,14 +11476,15 @@ } }, "node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true }, "node_modules/multimatch": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", - "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", + "integrity": "sha512-0mzK8ymiWdehTBiJh0vClAzGyQbdtyWqzSVx//EK4N/D+599RFlGfTAsKw2zMSABtDG9C6Ul2+t8f2Lbdjf5mA==", "dev": true, "dependencies": { "array-differ": "^1.0.0", @@ -9916,13 +11499,13 @@ "node_modules/mute-stream": { "version": "0.0.7", "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "integrity": "sha512-r65nCZhrbXXb6dXOACihYApHw2Q6pV0M3V0PSxd74N0+D8nzAdEAITq2oAjA1jVnKI+tGvEBUpqiMh0+rW6zDQ==", "dev": true }, "node_modules/mv": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/mv/-/mv-2.1.1.tgz", - "integrity": "sha1-rmzg1vbV4KT32JN5jQPB6pVZtqI=", + "integrity": "sha512-at/ZndSy3xEGJ8i0ygALh8ru9qy7gWW1cmkaqBN29JmMlIvM//MEO9y1sk/avxuwnPcfhkejkLsuPxH81BrkSg==", "dev": true, "optional": true, "dependencies": { @@ -9937,7 +11520,7 @@ "node_modules/mv/node_modules/glob": { "version": "6.0.4", "resolved": "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz", - "integrity": "sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI=", + "integrity": "sha512-MKZeRNyYZAVVVG1oZeLaWie1uweH40m9AZwIwxyPbTSX4hHrVYSzLg0Ro5Z5R7XKkIX+Cc6oD1rqeDJnwsB8/A==", "dev": true, "optional": true, "dependencies": { @@ -9951,10 +11534,23 @@ "node": "*" } }, + "node_modules/mv/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "optional": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, "node_modules/mv/node_modules/rimraf": { "version": "2.4.5", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.4.5.tgz", - "integrity": "sha1-7nEM5dk6j9uFb7Xqj/Di11k0sto=", + "integrity": "sha512-J5xnxTyqaiw06JjMftq7L9ouA448dw/E7dKghkP9WpKNuwmARNNg+Gk8/u5ryb9N/Yo2+z3MCwuqFK/+qPOPfQ==", "dev": true, "optional": true, "dependencies": { @@ -9976,9 +11572,9 @@ } }, "node_modules/nan": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz", - "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==", + "version": "2.17.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz", + "integrity": "sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==", "dev": true, "optional": true }, @@ -10004,16 +11600,53 @@ "node": ">=0.10.0" } }, + "node_modules/nanomatch/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, "node_modules/natural-compare-lite": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", - "integrity": "sha1-F7CVgZiJef3a/gIB6TG6kzyWy7Q=", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", "dev": true }, "node_modules/nconf": { @@ -10034,7 +11667,7 @@ "node_modules/nconf/node_modules/camelcase": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "integrity": "sha512-DLIsRzJVBQu72meAKPkWQOLcujdXT32hwdfnkI1frSiSRMK1MofjKHf+MEx0SB6fjEFXL8fBDv1dKymBlOp4Qw==", "dev": true, "engines": { "node": ">=0.10.0" @@ -10043,7 +11676,7 @@ "node_modules/nconf/node_modules/cliui": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "integrity": "sha512-0yayqDxWQbqk3ojkYqUKqaAQ6AfNKeKWRNA8kR0WXzAsdHpP4BIaOmMAG87JGuO6qcobyW4GjxHd9PmhEd+T9w==", "dev": true, "dependencies": { "string-width": "^1.0.1", @@ -10051,10 +11684,19 @@ "wrap-ansi": "^2.0.0" } }, + "node_modules/nconf/node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/nconf/node_modules/invert-kv": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", - "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "integrity": "sha512-xgs2NH9AE66ucSq4cNG1nhSFghr5l6tdL15Pk+jl46bmmBapgoaY/AacXyaDznAqmGL99TiLSQgO/XazFSKYeQ==", "dev": true, "engines": { "node": ">=0.10.0" @@ -10063,7 +11705,7 @@ "node_modules/nconf/node_modules/is-fullwidth-code-point": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", "dev": true, "dependencies": { "number-is-nan": "^1.0.0" @@ -10075,7 +11717,7 @@ "node_modules/nconf/node_modules/lcid": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "integrity": "sha512-YiGkH6EnGrDGqLMITnGjXtGmNtjoXw9SVUzcaos8RBi7Ps0VBylkq+vOcY9QE5poLasPCR849ucFUkl0UzUyOw==", "dev": true, "dependencies": { "invert-kv": "^1.0.0" @@ -10087,7 +11729,7 @@ "node_modules/nconf/node_modules/os-locale": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", - "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "integrity": "sha512-PRT7ZORmwu2MEFt4/fv3Q+mEfN4zetKxufQrkShY2oGvUms9r8otu5HfdyIFHkYXjO7laNsoVGmM2MANfuTA8g==", "dev": true, "dependencies": { "lcid": "^1.0.0" @@ -10099,7 +11741,7 @@ "node_modules/nconf/node_modules/string-width": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", "dev": true, "dependencies": { "code-point-at": "^1.0.0", @@ -10113,7 +11755,7 @@ "node_modules/nconf/node_modules/window-size": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.4.tgz", - "integrity": "sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY=", + "integrity": "sha512-2thx4pB0cV3h+Bw7QmMXcEbdmOzv9t0HFplJH/Lz6yu60hXYy5RT8rUu+wlIreVxWsGN20mo+MHeCSfUpQBwPw==", "dev": true, "bin": { "window-size": "cli.js" @@ -10123,15 +11765,15 @@ } }, "node_modules/nconf/node_modules/y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.2.tgz", + "integrity": "sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==", "dev": true }, "node_modules/nconf/node_modules/yargs": { "version": "3.32.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.32.0.tgz", - "integrity": "sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU=", + "integrity": "sha512-ONJZiimStfZzhKamYvR/xvmgW3uEkAUFSP91y2caTEPhzF6uP2JfPiVZcq66b/YR0C3uitxSV7+T1x8p5bkmMg==", "dev": true, "dependencies": { "camelcase": "^2.0.1", @@ -10146,7 +11788,7 @@ "node_modules/ncp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ncp/-/ncp-2.0.0.tgz", - "integrity": "sha1-GVoh1sRuNh0vsSgbo4uR6d9727M=", + "integrity": "sha512-zIdGUrPRFTUELUvr3Gmc7KZ2Sw/h1PiVM0Af/oHB6zgnV1ikqSfRk+TOufi79aHYCW3NiOXmr1BP5nWbzojLaA==", "dev": true, "optional": true, "bin": { @@ -10154,9 +11796,9 @@ } }, "node_modules/needle": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-2.5.0.tgz", - "integrity": "sha512-o/qITSDR0JCyCKEQ1/1bnUXMmznxabbwi/Y4WwJElf+evwJNFNwIDMCCt5IigFVxgeGBJESLohGtIS9gEzo1fA==", + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/needle/-/needle-2.9.1.tgz", + "integrity": "sha512-6R9fqJ5Zcmf+uYaFgdIHmLwNldn5HbK8L5ybn7Uz+ylX/rnOsSp1AHcvQSrCaFN+qNM1wpymHqD7mVasEOlHGQ==", "dev": true, "dependencies": { "debug": "^3.2.6", @@ -10171,30 +11813,18 @@ } }, "node_modules/needle/node_modules/debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { "ms": "^2.1.1" } }, - "node_modules/needle/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/needle/node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - }, "node_modules/negotiator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", "engines": { "node": ">= 0.6" } @@ -10208,77 +11838,28 @@ "node_modules/netmask": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/netmask/-/netmask-1.0.6.tgz", - "integrity": "sha1-ICl+idhvb2QA8lDZ9Pa0wZRfzTU=", + "integrity": "sha512-3DWDqAtIiPSkBXZyYEjwebfK56nrlQfRGt642fu8RPaL+ePu750+HCMHxjJCG3iEHq/0aeMvX6KIzlv7nuhfrA==", "dev": true, "engines": { "node": ">= 0.4.0" } }, "node_modules/next-tick": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", - "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==", "dev": true }, "node_modules/nib": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/nib/-/nib-1.1.2.tgz", - "integrity": "sha1-amnt5AgblcDe+L4CSkyK4MLLtsc=", - "dev": true, - "dependencies": { - "stylus": "0.54.5" - }, - "engines": { - "node": "*" - } - }, - "node_modules/nib/node_modules/glob": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.6.tgz", - "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/nib/-/nib-1.2.0.tgz", + "integrity": "sha512-7HgrnMl/3yOmWykueO8/D0q+0iWwe7Z+CK2Eaq/xQV8w1hK80WN1oReRQkfkrztbAAnp/nTHkUSl5EcVkor6JQ==", "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.2", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, "engines": { "node": "*" - } - }, - "node_modules/nib/node_modules/source-map": { - "version": "0.1.43", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", - "dev": true, - "dependencies": { - "amdefine": ">=0.0.4" }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/nib/node_modules/stylus": { - "version": "0.54.5", - "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.5.tgz", - "integrity": "sha1-QrlWCTHKcJDOhRWnmLqeaqPW3Hk=", - "dev": true, - "dependencies": { - "css-parse": "1.7.x", - "debug": "*", - "glob": "7.0.x", - "mkdirp": "0.5.x", - "sax": "0.5.x", - "source-map": "0.1.x" - }, - "bin": { - "stylus": "bin/stylus" - }, - "engines": { - "node": "*" + "peerDependencies": { + "stylus": "*" } }, "node_modules/nice-try": { @@ -10313,7 +11894,7 @@ "node_modules/nise/node_modules/isarray": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", "dev": true }, "node_modules/nise/node_modules/lolex": { @@ -10335,55 +11916,43 @@ } }, "node_modules/nock": { - "version": "13.1.3", - "resolved": "https://registry.npmjs.org/nock/-/nock-13.1.3.tgz", - "integrity": "sha512-YKj0rKQWMGiiIO+Y65Ut8OEgYM3PplLU2+GAhnPmqZdBd6z5IskgdBqWmjzA6lH3RF0S2a3wiAlrMOF5Iv2Jeg==", + "version": "13.2.9", + "resolved": "https://registry.npmjs.org/nock/-/nock-13.2.9.tgz", + "integrity": "sha512-1+XfJNYF1cjGB+TKMWi29eZ0b82QOvQs2YoLNzbpWGqFMtRQHTa57osqdGj4FrFPgkO4D4AZinzUJR9VvW3QUA==", "dev": true, "dependencies": { "debug": "^4.1.0", "json-stringify-safe": "^5.0.1", - "lodash.set": "^4.3.2", + "lodash": "^4.17.21", "propagate": "^2.0.0" }, "engines": { "node": ">= 10.13" } }, - "node_modules/nock/node_modules/debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", - "dev": true, + "node_modules/node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", "dependencies": { - "ms": "2.1.2" + "whatwg-url": "^5.0.0" }, "engines": { - "node": ">=6.0" + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" }, "peerDependenciesMeta": { - "supports-color": { + "encoding": { "optional": true } } }, - "node_modules/nock/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", - "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==", - "engines": { - "node": "4.x || >=6.0.0" - } - }, "node_modules/node-forge": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.0.0.tgz", - "integrity": "sha512-ShkiiAlzSsgH1IwGlA0jybk9vQTIOLyJ9nBd0JTuP+nzADJFLY0NoDijM2zvD/JaezooGu3G2p2FNxOAK6459g==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", "dev": true, "engines": { "node": ">= 6.13.0" @@ -10420,38 +11989,18 @@ "vm-browserify": "^1.0.1" } }, - "node_modules/node-libs-browser/node_modules/buffer": { - "version": "4.9.2", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", - "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", - "dev": true, - "dependencies": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" - } + "node_modules/node-libs-browser/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true }, "node_modules/node-libs-browser/node_modules/punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - }, - "node_modules/node-libs-browser/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", "dev": true }, - "node_modules/node-libs-browser/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, "node_modules/node-libs-browser/node_modules/util": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", @@ -10461,15 +12010,6 @@ "inherits": "2.0.3" } }, - "node_modules/node-modules-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", - "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/node-notifier": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-5.2.1.tgz", @@ -10482,16 +12022,37 @@ "which": "^1.3.0" } }, + "node_modules/node-notifier/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/node-notifier/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, "node_modules/node-releases": { - "version": "1.1.60", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.60.tgz", - "integrity": "sha512-gsO4vjEdQaTusZAEebUWp2a5d7dF5DYoIpDG7WySnk7BuZDW+GPpHXoXXuYawRBr/9t5q54tirPz79kFIWg4dA==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", + "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", "dev": true }, "node_modules/node-rsa": { "version": "0.2.30", "resolved": "https://registry.npmjs.org/node-rsa/-/node-rsa-0.2.30.tgz", - "integrity": "sha1-iRLiw7G2TM5sp4PKsa8oKzAK3uY=", + "integrity": "sha512-Tg5XrlbigFm6rek1UoIIPRHRbisJL8MhVvzx6xl/bNMaW3qRKQYJSswHsQOnoa/zTLaRG/uKht+XisA71P8U4Q==", "dev": true, "dependencies": { "asn1": "0.2.3", @@ -10501,13 +12062,14 @@ "node_modules/node-rsa/node_modules/lodash": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.3.0.tgz", - "integrity": "sha1-ARzlLQGxTmDq7qdqy5uLpCxwWBs=", + "integrity": "sha512-gpux6tVfBHsUdUIciz5HoV0ChAxUTvi0ChpQMIjAsKtg6FTYFtd1B1G0JlqHvAio3teaMVGPDPk2seVq1INwOQ==", "dev": true }, "node_modules/nomnom": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz", - "integrity": "sha1-IVH3Ikcrp55Qp2/BJbuMjy5Nwqc=", + "integrity": "sha512-5s0JxqhDx9/rksG2BTMVN1enjWSvPidpoSgViZU4ZXULyTe+7jxcCRLB6f42Z0l1xYJpleCBtSyY6Lwg3uu5CQ==", + "deprecated": "Package no longer supported. Contact support@npmjs.com for more info.", "dev": true, "dependencies": { "chalk": "~0.4.0", @@ -10517,7 +12079,7 @@ "node_modules/nomnom/node_modules/ansi-styles": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", - "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", + "integrity": "sha512-3iF4FIKdxaVYT3JqQuY3Wat/T2t7TRbbQ94Fu50ZUCbLy4TFbTzr90NOHQodQkNqmeEGCw8WbeP78WNi6SKYUA==", "dev": true, "engines": { "node": ">=0.8.0" @@ -10526,7 +12088,7 @@ "node_modules/nomnom/node_modules/chalk": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", - "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", + "integrity": "sha512-sQfYDlfv2DGVtjdoQqxS0cEZDroyG8h6TamA6rvxwlrU5BaSLDx9xhatBYl2pxZ7gmpNaPFVwBtdGdu5rQ+tYQ==", "dev": true, "dependencies": { "ansi-styles": "~1.0.0", @@ -10540,7 +12102,7 @@ "node_modules/nomnom/node_modules/strip-ansi": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", - "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", + "integrity": "sha512-behete+3uqxecWlDAm5lmskaSaISA+ThQ4oNNBDTBJt0x2ppR6IPqfZNuj6BLaLJ/Sji4TPZlcRyOis8wXQTLg==", "dev": true, "bin": { "strip-ansi": "cli.js" @@ -10552,7 +12114,7 @@ "node_modules/nopt": { "version": "3.0.6", "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "integrity": "sha512-4GUt3kSEYmk4ITxzB/b9vaIDfUVWN/Ml1Fwl11IlnIG2iaJ9O6WXZ9SrYM9NLI8OCBieN2Y8SWC2oJV0RQ7qYg==", "dev": true, "dependencies": { "abbrev": "1" @@ -10573,10 +12135,19 @@ "validate-npm-package-license": "^3.0.1" } }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, "node_modules/normalize-path": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", "dev": true, "dependencies": { "remove-trailing-separator": "^1.0.1" @@ -10588,7 +12159,7 @@ "node_modules/npm-run-path": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", "dev": true, "dependencies": { "path-key": "^2.0.0" @@ -10609,7 +12180,7 @@ "node_modules/number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "integrity": "sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==", "dev": true, "engines": { "node": ">=0.10.0" @@ -10627,7 +12198,7 @@ "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "engines": { "node": ">=0.10.0" } @@ -10635,7 +12206,7 @@ "node_modules/object-copy": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "integrity": "sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==", "dev": true, "dependencies": { "copy-descriptor": "^0.1.0", @@ -10649,7 +12220,7 @@ "node_modules/object-copy/node_modules/define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", "dev": true, "dependencies": { "is-descriptor": "^0.1.0" @@ -10658,10 +12229,57 @@ "node": ">=0.10.0" } }, + "node_modules/object-copy/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-descriptor/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/object-copy/node_modules/kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "dependencies": { "is-buffer": "^1.1.5" @@ -10671,22 +12289,27 @@ } }, "node_modules/object-inspect": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.8.0.tgz", - "integrity": "sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==", - "dev": true + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/object-is": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.2.tgz", - "integrity": "sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", "dev": true, "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/object-keys": { @@ -10701,7 +12324,7 @@ "node_modules/object-visit": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "integrity": "sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==", "dev": true, "dependencies": { "isobject": "^3.0.0" @@ -10711,24 +12334,27 @@ } }, "node_modules/object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", "dev": true, "dependencies": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/object.defaults": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", - "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=", + "integrity": "sha512-c/K0mw/F11k4dEUBMW8naXUuBuhxRCfG7W+yFy8EcijU/rSmazOUd1XAEEe6bC0OuXY4HUKjTJv7xbxIMqdxrA==", "dev": true, "dependencies": { "array-each": "^1.0.1", @@ -10743,7 +12369,7 @@ "node_modules/object.map": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", - "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=", + "integrity": "sha512-3+mAJu2PLfnSVGHwIWubpOFLscJANBKuB/6A4CxBstc4aqwQY0FWcsppuy4jU5GSB95yES5JHSI+33AWuS4k6w==", "dev": true, "dependencies": { "for-own": "^1.0.0", @@ -10756,7 +12382,7 @@ "node_modules/object.pick": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", "dev": true, "dependencies": { "isobject": "^3.0.1" @@ -10766,9 +12392,9 @@ } }, "node_modules/on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", "dependencies": { "ee-first": "1.1.1" }, @@ -10788,7 +12414,7 @@ "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dependencies": { "wrappy": "1" } @@ -10796,7 +12422,7 @@ "node_modules/onetime": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "integrity": "sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ==", "dev": true, "dependencies": { "mimic-fn": "^1.0.0" @@ -10817,7 +12443,7 @@ "node_modules/opn": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/opn/-/opn-4.0.2.tgz", - "integrity": "sha1-erwi5kTf9jsKltWrfyeQwPAavJU=", + "integrity": "sha512-iPBWbPP4OEOzR1xfhpGLDh+ypKBOygunZhM9jBtA7FS5sKjEiMZw0EFb82hnDOmTZX90ZWLoZKUza4cVt8MexA==", "dev": true, "dependencies": { "object-assign": "^4.0.1", @@ -10847,13 +12473,13 @@ "node_modules/os-browserify": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", + "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==", "dev": true }, "node_modules/os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", "dev": true, "engines": { "node": ">=0.10.0" @@ -10876,7 +12502,7 @@ "node_modules/os-name": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/os-name/-/os-name-2.0.1.tgz", - "integrity": "sha1-uaOGNhwXrjohc27wWZQFyajF3F4=", + "integrity": "sha512-zzMwE/HWRISM52Q966yHosPJ1alrm5Cpw/C9ZhSid50RsMpLtOwc1rtmWxKn7TggPM+GVLUC3RxgWmklOiUgOQ==", "dev": true, "dependencies": { "macos-release": "^1.0.0", @@ -10889,7 +12515,7 @@ "node_modules/os-shim": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/os-shim/-/os-shim-0.1.3.tgz", - "integrity": "sha1-a2LDeRz3kJ6jXtRuF2WLtBfLORc=", + "integrity": "sha512-jd0cvB8qQ5uVt0lvCIexBaROw1KyKm5sbulg2fWOHjETisuCzWyt+eTZKEMs8v6HwzoGs8xik26jg7eCM6pS+A==", "dev": true, "engines": { "node": ">= 0.4.0" @@ -10898,7 +12524,7 @@ "node_modules/os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", "dev": true, "engines": { "node": ">=0.10.0" @@ -10917,7 +12543,7 @@ "node_modules/outlayer": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/outlayer/-/outlayer-2.1.1.tgz", - "integrity": "sha1-KYY7beEOpdrf/8rfoNcokHOH6aI=", + "integrity": "sha512-+GplXsCQ3VrbGujAeHEzP9SXsBmJxzn/YdDSQZL0xqBmAWBmortu2Y9Gwdp9J0bgDQ8/YNIPMoBM13nTwZfAhw==", "dev": true, "dependencies": { "ev-emitter": "^1.0.0", @@ -10928,7 +12554,7 @@ "node_modules/p-defer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", - "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "integrity": "sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw==", "dev": true, "engines": { "node": ">=4" @@ -10937,7 +12563,7 @@ "node_modules/p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", "dev": true, "engines": { "node": ">=4" @@ -10962,18 +12588,21 @@ }, "engines": { "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "dependencies": { - "p-limit": "^2.0.0" + "p-limit": "^2.2.0" }, "engines": { - "node": ">=6" + "node": ">=8" } }, "node_modules/p-try": { @@ -11002,20 +12631,14 @@ } }, "node_modules/pac-proxy-agent/node_modules/debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { "ms": "^2.1.1" } }, - "node_modules/pac-proxy-agent/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "node_modules/pac-resolver": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-3.0.0.tgz", @@ -11032,7 +12655,7 @@ "node_modules/package-json": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", - "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", + "integrity": "sha512-q/R5GrMek0vzgoomq6rm9OX+3PQve8sLwTirmK30YB3Cu0Bbt9OX9M/SIUnroN5BGJkzwGsFwDaRGD9EwBOlCA==", "dev": true, "dependencies": { "got": "^6.7.1", @@ -11044,6 +12667,15 @@ "node": ">=4" } }, + "node_modules/package-json/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, "node_modules/pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", @@ -11062,14 +12694,13 @@ } }, "node_modules/parse-asn1": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", - "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", "dev": true, "dependencies": { - "asn1.js": "^4.0.0", + "asn1.js": "^5.2.0", "browserify-aes": "^1.0.0", - "create-hash": "^1.1.0", "evp_bytestokey": "^1.0.0", "pbkdf2": "^3.0.3", "safe-buffer": "^5.1.1" @@ -11078,7 +12709,7 @@ "node_modules/parse-filepath": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", - "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=", + "integrity": "sha512-FwdRXKCohSVeXqwtYonZTXtbGJKrn+HNyWDYVcp5yuJlesTwNH4rsmRZ+GrKAPJ5bLpRxESMeS+Rl0VCHRvB2Q==", "dev": true, "dependencies": { "is-absolute": "^1.0.0", @@ -11092,7 +12723,7 @@ "node_modules/parse-json": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", "dev": true, "dependencies": { "error-ex": "^1.3.1", @@ -11105,7 +12736,7 @@ "node_modules/parse-passwd": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", - "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", + "integrity": "sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==", "dev": true, "engines": { "node": ">=0.10.0" @@ -11131,7 +12762,7 @@ "node_modules/pascalcase": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "integrity": "sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==", "dev": true, "engines": { "node": ">=0.10.0" @@ -11140,7 +12771,7 @@ "node_modules/path": { "version": "0.12.7", "resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz", - "integrity": "sha1-1NwqUGxM4hl+tIHr/NWzbAFAsQ8=", + "integrity": "sha512-aXXC6s+1w7otVF9UletFkFcDsJeO7lSZBPUQhtb5O0xJe8LtYhj/GxldoL09bBj9+ZmE2hNoHqQSFMN5fikh4Q==", "dev": true, "dependencies": { "process": "^0.11.1", @@ -11156,22 +12787,22 @@ "node_modules/path-dirname": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "integrity": "sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==", "dev": true }, "node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true, "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -11180,27 +12811,27 @@ "node_modules/path-is-inside": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==", "dev": true }, "node_modules/path-key": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", "dev": true, "engines": { "node": ">=4" } }, "node_modules/path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-root": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", - "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=", + "integrity": "sha512-QLcPegTHF11axjfojBIoDygmS2E3Lf+8+jI6wOVmNVenrKSo3mFdSGiIgdSHenczw3wPtlVMQaFVwGmM7BJdtg==", "dev": true, "dependencies": { "path-root-regex": "^0.1.0" @@ -11212,7 +12843,7 @@ "node_modules/path-root-regex": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", - "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=", + "integrity": "sha512-4GlJ6rZDhQZFE0DPVKh0e9jmZ5egZfxTkp7bcRDuPlJXbAwhxcl2dINPUAsjLdejqaLsCeg8axcLjIbvBjN4pQ==", "dev": true, "engines": { "node": ">=0.10.0" @@ -11221,12 +12852,12 @@ "node_modules/path-to-regexp": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" }, "node_modules/path-type": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "integrity": "sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg==", "dev": true, "dependencies": { "graceful-fs": "^4.1.2", @@ -11240,25 +12871,25 @@ "node_modules/path-type/node_modules/pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/pathval": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz", - "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", + "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", "dev": true, "engines": { "node": "*" } }, "node_modules/pbkdf2": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.1.tgz", - "integrity": "sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", "dev": true, "dependencies": { "create-hash": "^1.1.2", @@ -11274,38 +12905,46 @@ "node_modules/pend": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", "dev": true }, "node_modules/performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "dev": true + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", "dev": true }, "node_modules/picomatch": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", - "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "dev": true, - "optional": true, "engines": { "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, "node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", "dev": true, "engines": { - "node": ">=6" + "node": ">=4" } }, "node_modules/pinkie": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -11314,7 +12953,7 @@ "node_modules/pinkie-promise": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==", "dev": true, "dependencies": { "pinkie": "^2.0.0" @@ -11343,9 +12982,9 @@ } }, "node_modules/pino-std-serializers": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-2.4.2.tgz", - "integrity": "sha512-WaL504dO8eGs+vrK+j4BuQQq6GLKeCCcHaMB2ItygzVURcL1CycwNEUHTD/lHFHs/NL5qAz2UKrjYWXKSf4aMQ==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-2.5.0.tgz", + "integrity": "sha512-wXqbqSrIhE58TdrxxlfLwU9eDhrzppQDvGhBEr1gYbzzM4KKo3Y63gSjiDXRKLVS2UOXdPNR2v+KnQgNrs+xUg==", "dev": true }, "node_modules/pino/node_modules/pump": { @@ -11359,27 +12998,24 @@ } }, "node_modules/pirates": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", - "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", + "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", "dev": true, - "dependencies": { - "node-modules-regexp": "^1.0.0" - }, "engines": { "node": ">= 6" } }, - "node_modules/pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, "dependencies": { - "find-up": "^3.0.0" + "find-up": "^4.0.0" }, "engines": { - "node": ">=6" + "node": ">=8" } }, "node_modules/pluralize": { @@ -11394,7 +13030,7 @@ "node_modules/po2json": { "version": "0.4.5", "resolved": "https://registry.npmjs.org/po2json/-/po2json-0.4.5.tgz", - "integrity": "sha1-R7spUtoy1Yob4vJWpZjuvAt0URg=", + "integrity": "sha512-JH0hgi1fC0t9UvdiyS7kcVly0N1WNey4R2YZ/jPaxQKYm6Cfej7ZTgiEy8LP2JwoEhONceiNS8JH5mWPQkiXeA==", "dev": true, "dependencies": { "gettext-parser": "1.1.0", @@ -11411,12 +13047,17 @@ "version": "1.16.1", "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", - "dev": true + "deprecated": "You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1", + "dev": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } }, "node_modules/portscanner": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/portscanner/-/portscanner-1.2.0.tgz", - "integrity": "sha1-sUu9olfRTDEPqcwJaCrwLUCWGAI=", + "integrity": "sha512-3MCx40XO6ChNJJHw1tTFukQK/M/8FacGZK/vGbnrKpozObrJzembYtfi7ZdA2hkF2Lojg77XhsKUPvF8eHKcDA==", "dev": true, "dependencies": { "async": "1.5.2" @@ -11429,7 +13070,7 @@ "node_modules/posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "integrity": "sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -11461,7 +13102,7 @@ "node_modules/prelude-ls": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", "dev": true, "engines": { "node": ">= 0.8.0" @@ -11470,7 +13111,7 @@ "node_modules/prepend-http": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "integrity": "sha512-PhmXi5XmoyKw1Un4E+opM2KcsJInDvKyuOumcjjw3waw86ZNjHwVUOOWLc4bCzLdcKNaWBH9e99sbWzDQsVaYg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -11502,7 +13143,7 @@ "node_modules/process": { "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", "dev": true, "engines": { "node": ">= 0.6.0" @@ -11534,13 +13175,14 @@ "node_modules/promise-inflight": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", "dev": true }, "node_modules/promise.any": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/promise.any/-/promise.any-0.1.1.tgz", - "integrity": "sha1-Fg+JisPHW1y7cw/yOgyi8XQHvzo=", + "integrity": "sha512-RGLK/1LwpbkZMv1WGVN6dpSRqi03QtYXuInuVHBhJx6dQ9+VDl7zYfVnKpU15awZGQDpmPvrigsTiVBFvw18mw==", + "deprecated": "Please use v1.0 or higher, which is now compliant with the proposed JS spec", "dev": true, "engines": { "node": ">=4.0.0" @@ -11556,11 +13198,11 @@ } }, "node_modules/proxy-addr": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", - "integrity": "sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", "dependencies": { - "forwarded": "~0.1.2", + "forwarded": "0.2.0", "ipaddr.js": "1.9.1" }, "engines": { @@ -11584,20 +13226,14 @@ } }, "node_modules/proxy-agent/node_modules/debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { "ms": "^2.1.1" } }, - "node_modules/proxy-agent/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "node_modules/proxy-from-env": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", @@ -11607,19 +13243,19 @@ "node_modules/prr": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", "dev": true }, "node_modules/pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", "dev": true }, "node_modules/psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", "dev": true }, "node_modules/public-encrypt": { @@ -11637,9 +13273,9 @@ } }, "node_modules/public-encrypt/node_modules/bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true }, "node_modules/pug": { @@ -11668,9 +13304,9 @@ } }, "node_modules/pug-code-gen": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-2.0.2.tgz", - "integrity": "sha512-kROFWv/AHx/9CRgoGJeRSm+4mLWchbgpRzTEn8XCiwwOy6Vh0gAClS8Vh5TEJ9DBjaP8wCjS3J6HKsEsYdvaCw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-2.0.3.tgz", + "integrity": "sha512-r9sezXdDuZJfW9J91TN/2LFbiqDhmltTFmGpHTsGdrNGp3p4SxAjjXEfnuK2e4ywYsRIVP0NeLbSAMHUcaX1EA==", "dependencies": { "constantinople": "^3.1.2", "doctypes": "^1.1.0", @@ -11790,7 +13426,9 @@ "version": "1.20.0", "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-1.20.0.tgz", "integrity": "sha512-bt48RDBy2eIwZPrkgbcwHtb51mj2nKvHOPMaSH2IsWiv7lOG9k9zhaRzpDZafrk05ajMc3cu+lSQYYOfH2DkVQ==", + "deprecated": "Version no longer supported. Upgrade to @latest", "dev": true, + "hasInstallScript": true, "dependencies": { "debug": "^4.1.0", "extract-zip": "^1.6.6", @@ -11805,33 +13443,6 @@ "node": ">=6.4.0" } }, - "node_modules/puppeteer/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/puppeteer/node_modules/mime": { - "version": "2.4.6", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", - "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==", - "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/puppeteer/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "node_modules/puppeteer/node_modules/rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -11845,17 +13456,24 @@ } }, "node_modules/qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dependencies": { + "side-channel": "^1.0.4" + }, "engines": { "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.1.tgz", + "integrity": "sha512-wkvS7mL/JMugcup3/rMitHmd9ecIGd2lhFhK9N3UUQ450h66d1r3Y9nvXzQAW1Lq+wyx61k/1pfKS5KuKiyEbg==", + "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", "engines": { "node": ">=0.4.x" } @@ -11863,7 +13481,7 @@ "node_modules/querystring-es3": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", + "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==", "dev": true, "engines": { "node": ">=0.4.x" @@ -11903,12 +13521,12 @@ } }, "node_modules/raw-body": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", - "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", "dependencies": { - "bytes": "3.1.0", - "http-errors": "1.7.2", + "bytes": "3.1.2", + "http-errors": "2.0.0", "iconv-lite": "0.4.24", "unpipe": "1.0.0" }, @@ -11934,7 +13552,7 @@ "node_modules/read-pkg": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "integrity": "sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ==", "dev": true, "dependencies": { "load-json-file": "^1.0.0", @@ -11948,7 +13566,7 @@ "node_modules/read-pkg-up": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "integrity": "sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==", "dev": true, "dependencies": { "find-up": "^1.0.0", @@ -11961,7 +13579,7 @@ "node_modules/read-pkg-up/node_modules/find-up": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "integrity": "sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==", "dev": true, "dependencies": { "path-exists": "^2.0.0", @@ -11974,7 +13592,7 @@ "node_modules/read-pkg-up/node_modules/path-exists": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "integrity": "sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==", "dev": true, "dependencies": { "pinkie-promise": "^2.0.0" @@ -11998,14 +13616,11 @@ "util-deprecate": "~1.0.1" } }, - "node_modules/readable-stream/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } + "node_modules/readable-stream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true }, "node_modules/readdirp": { "version": "2.2.1", @@ -12024,7 +13639,7 @@ "node_modules/readline2": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/readline2/-/readline2-1.0.1.tgz", - "integrity": "sha1-QQWWCP/BVHV7cV2ZidGZ/783LjU=", + "integrity": "sha512-8/td4MmwUB6PkZUbV25uKz7dfrmjYWxsW8DVfibWdlHRk/l/DfHKn4pU+dfcoGLFgWOdyGCzINRQD7jn+Bv+/g==", "dev": true, "dependencies": { "code-point-at": "^1.0.0", @@ -12035,7 +13650,7 @@ "node_modules/readline2/node_modules/is-fullwidth-code-point": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", "dev": true, "dependencies": { "number-is-nan": "^1.0.0" @@ -12047,61 +13662,61 @@ "node_modules/readline2/node_modules/mute-stream": { "version": "0.0.5", "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.5.tgz", - "integrity": "sha1-j7+rsKmKJT0xhDMfno3rc3L6xsA=", + "integrity": "sha512-EbrziT4s8cWPmzr47eYVW3wimS4HsvlnV5ri1xw1aR6JQo/OrJX5rkl32K/QQHdxeabJETtfeaROGhd8W7uBgg==", "dev": true }, "node_modules/rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz", + "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==", "dev": true, "dependencies": { - "resolve": "^1.1.6" + "resolve": "^1.9.0" }, "engines": { "node": ">= 0.10" } }, "node_modules/recursive-readdir": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz", - "integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz", + "integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==", "dev": true, "dependencies": { - "minimatch": "3.0.4" + "minimatch": "^3.0.5" }, "engines": { - "node": ">=0.10.0" + "node": ">=6.0.0" } }, "node_modules/regenerate": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.1.tgz", - "integrity": "sha512-j2+C8+NtXQgEKWk49MMP5P/u2GhnahTtVkRIHr5R5lVRlbKvmQ+oS+A5aLKWp2ma5VkT8sh6v+v4hbH0YHR66A==", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", "dev": true }, "node_modules/regenerate-unicode-properties": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz", - "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", + "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", "dev": true, "dependencies": { - "regenerate": "^1.4.0" + "regenerate": "^1.4.2" }, "engines": { "node": ">=4" } }, "node_modules/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.10", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.10.tgz", + "integrity": "sha512-KepLsg4dU12hryUO7bp/axHAKvwGOCV0sGloQtpagJ12ai+ojVDqkeGSiRX1zlq+kjIMZ1t7gpze+26QqtdGqw==", "dev": true }, "node_modules/regenerator-transform": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz", - "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==", + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.0.tgz", + "integrity": "sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==", "dev": true, "dependencies": { "@babel/runtime": "^7.8.4" @@ -12120,17 +13735,58 @@ "node": ">=0.10.0" } }, + "node_modules/regex-not/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regex-not/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regex-not/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/regexp.prototype.flags": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", - "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", "dev": true, "dependencies": { + "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" + "functions-have-names": "^1.2.2" }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/regexpp": { @@ -12143,17 +13799,17 @@ } }, "node_modules/regexpu-core": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.0.tgz", - "integrity": "sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.2.1.tgz", + "integrity": "sha512-HrnlNtpvqP1Xkb28tMhBUO2EbyUHdQlsnlAhzWcwHy8WJR53UWr7/MAvqrsQKMbV4qdpv03oTMG8iIhfsPFktQ==", "dev": true, "dependencies": { - "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^8.2.0", - "regjsgen": "^0.5.1", - "regjsparser": "^0.6.4", - "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.2.0" + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsgen": "^0.7.1", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.0.0" }, "engines": { "node": ">=4" @@ -12172,7 +13828,7 @@ "node_modules/registry-url": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", - "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", + "integrity": "sha512-ZbgR5aZEdf4UKZVBPYIgaglBmSF2Hi94s2PcIHhRGFjKYu+chjJdYfHn4rt3hB6eCKLJ8giVIIfgMa1ehDfZKA==", "dev": true, "dependencies": { "rc": "^1.0.1" @@ -12182,15 +13838,15 @@ } }, "node_modules/regjsgen": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz", - "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.7.1.tgz", + "integrity": "sha512-RAt+8H2ZEzHeYWxZ3H2z6tF18zyyOnlcdaafLrm21Bguj7uZy6ULibiAFdXEtKQY4Sy7wDTwDiOazasMLc4KPA==", "dev": true }, "node_modules/regjsparser": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz", - "integrity": "sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw==", + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", "dev": true, "dependencies": { "jsesc": "~0.5.0" @@ -12202,7 +13858,7 @@ "node_modules/regjsparser/node_modules/jsesc": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", "dev": true, "bin": { "jsesc": "bin/jsesc" @@ -12211,7 +13867,7 @@ "node_modules/relaxed-json": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/relaxed-json/-/relaxed-json-1.0.1.tgz", - "integrity": "sha1-fI1KovCVcEzQIOMugJm8rhA/C9Q=", + "integrity": "sha512-1ECKWi9z++YJI6kopSh4gAFPgNIKD7IgzQdImhqtlb9ip62LgkQmD70AwNgPGXgqxlmVzKTvg/s+wNG1Da7UTw==", "dev": true, "dependencies": { "chalk": "^1.0.0", @@ -12227,7 +13883,7 @@ "node_modules/relaxed-json/node_modules/ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -12236,7 +13892,7 @@ "node_modules/relaxed-json/node_modules/chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dev": true, "dependencies": { "ansi-styles": "^2.2.1", @@ -12252,7 +13908,7 @@ "node_modules/relaxed-json/node_modules/supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "dev": true, "engines": { "node": ">=0.8.0" @@ -12261,13 +13917,13 @@ "node_modules/remove-trailing-separator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==", "dev": true }, "node_modules/repeat-element": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", + "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", "dev": true, "engines": { "node": ">=0.10.0" @@ -12276,7 +13932,7 @@ "node_modules/repeat-string": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", "engines": { "node": ">=0.10" } @@ -12284,7 +13940,7 @@ "node_modules/repeating": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "integrity": "sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A==", "dev": true, "dependencies": { "is-finite": "^1.0.0" @@ -12297,6 +13953,7 @@ "version": "2.88.2", "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", "dev": true, "dependencies": { "aws-sign2": "~0.7.0", @@ -12334,12 +13991,16 @@ }, "engines": { "node": ">=0.10.0" + }, + "peerDependencies": { + "request": "^2.34" } }, "node_modules/request-promise-native": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.9.tgz", "integrity": "sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==", + "deprecated": "request-promise-native has been deprecated because it extends the now deprecated request package, see https://github.com/request/request/issues/3142", "dev": true, "dependencies": { "request-promise-core": "1.1.4", @@ -12348,12 +14009,15 @@ }, "engines": { "node": ">=0.12.0" + }, + "peerDependencies": { + "request": "^2.34" } }, "node_modules/request/node_modules/qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", "dev": true, "engines": { "node": ">=0.6" @@ -12362,7 +14026,7 @@ "node_modules/require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", "dev": true, "engines": { "node": ">=0.10.0" @@ -12371,13 +14035,13 @@ "node_modules/require-main-filename": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "integrity": "sha512-IqSUtOVP4ksd1C/ej5zeEh/BIP2ajqpn8c5x+q99gvcIG/Qf0cud5raVnE/Dwd0ua9TXYDoDc0RE5hBSdz22Ug==", "dev": true }, "node_modules/require-uncached": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", - "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", + "integrity": "sha512-Xct+41K3twrbBHdxAgMoOS+cNcoqIjfM2/VxBF4LL2hVph7YsF8VSKyQ3BDFZwEVbok9yeDl2le/qo0S77WG2w==", "dev": true, "dependencies": { "caller-path": "^0.1.0", @@ -12388,17 +14052,25 @@ } }, "node_modules/resolve": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", - "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", "dependencies": { - "path-parse": "^1.0.6" + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/resolve-dir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", - "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", + "integrity": "sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg==", "dev": true, "dependencies": { "expand-tilde": "^2.0.0", @@ -12411,7 +14083,7 @@ "node_modules/resolve-from": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz", - "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=", + "integrity": "sha512-kT10v4dhrlLNcnO084hEjvXCI1wUG9qZLoz2RogxqDQQYy7IxjI/iMUkOtQTNEh6rzHxvdQWHsJyel1pKOVCxg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -12420,13 +14092,14 @@ "node_modules/resolve-url": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "integrity": "sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==", + "deprecated": "https://github.com/lydell/resolve-url#deprecated", "dev": true }, "node_modules/restore-cursor": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "integrity": "sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==", "dev": true, "dependencies": { "onetime": "^2.0.0", @@ -12448,7 +14121,7 @@ "node_modules/right-align": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", - "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", + "integrity": "sha512-yqINtL/G7vs2v+dFIZmFUDbnVyFUJFKd6gK22Kgo6R4jfJGFtisKyncWDDULgjfqf4ASQuIQyjJ7XZ+3aWpsAg==", "dependencies": { "align-text": "^0.1.1" }, @@ -12466,6 +14139,9 @@ }, "bin": { "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/ripemd160": { @@ -12490,7 +14166,7 @@ "node_modules/run-queue": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", - "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "integrity": "sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg==", "dev": true, "dependencies": { "aproba": "^1.1.1" @@ -12499,13 +14175,13 @@ "node_modules/rx-lite": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-3.1.2.tgz", - "integrity": "sha1-Gc5QLKVyZl87ZHsQk5+X/RYV8QI=", + "integrity": "sha512-1I1+G2gteLB8Tkt8YI1sJvSIfa0lWuRtC8GjvtyPBcLSF5jBCCJJqKrpER5JU5r6Bhe+i9/pK3VMuUcXu0kdwQ==", "dev": true }, "node_modules/rx-lite-aggregates": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", - "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", + "integrity": "sha512-3xPNZGW93oCjiO7PtKxRK6iOVYBWBvtf9QHDfU23Oc+dLIQmAV//UnyXV/yihv81VS/UqoQPk4NegS8EFi55Hg==", "dev": true, "dependencies": { "rx-lite": "*" @@ -12524,14 +14200,28 @@ } }, "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, "node_modules/safe-json-parse": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/safe-json-parse/-/safe-json-parse-1.0.1.tgz", - "integrity": "sha1-PnZyPjjf3aE8mx0poeB//uSzC1c=", + "integrity": "sha512-o0JmTu17WGUaUOHa1l0FPGXKBfijbxK6qoHzlkihsDXxzBHvJcA7zgviKR92Xs841rX9pK16unfphLq0/KqX7A==", "dev": true }, "node_modules/safe-json-stringify": { @@ -12544,12 +14234,26 @@ "node_modules/safe-regex": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "integrity": "sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==", "dev": true, "dependencies": { "ret": "~0.1.10" } }, + "node_modules/safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", @@ -12559,47 +14263,52 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/samsam/-/samsam-1.3.0.tgz", "integrity": "sha512-1HwIYD/8UlOtFS3QO3w7ey+SdSDFE4HRNLZoZRYVQefrOY3l17epswImeB1ijgJFQJodIaHcwkp3r/myBjFVbg==", + "deprecated": "This package has been deprecated in favour of @sinonjs/samsam", "dev": true }, "node_modules/sax": { - "version": "0.5.8", - "resolved": "https://registry.npmjs.org/sax/-/sax-0.5.8.tgz", - "integrity": "sha1-1HLbIo6zMcJQaw6MFVJK25OdEsE=", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", "dev": true }, "node_modules/schema-utils": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", - "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", "dev": true, "dependencies": { - "@types/json-schema": "^7.0.4", - "ajv": "^6.12.2", - "ajv-keywords": "^3.4.1" + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" }, "engines": { "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, "node_modules/secure-keys": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/secure-keys/-/secure-keys-1.0.0.tgz", - "integrity": "sha1-8MgtmKOxOah3aogIBQuCRDEIf8o=", + "integrity": "sha512-nZi59hW3Sl5P3+wOO89eHBAAGwmCPd2aE1+dLZV5MO+ItQctIvAqihzaAXIQhvtH4KJPxM080HsnqltR2y8cWg==", "dev": true }, "node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true, "bin": { - "semver": "bin/semver" + "semver": "bin/semver.js" } }, "node_modules/semver-diff": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", - "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", + "integrity": "sha512-gL8F8L4ORwsS0+iQ34yCYv///jsOq0ZL7WP55d1HnJ32o7tyFYEFQZQA22mrLIacZdU6xecaBBZ+uEiffGNyXw==", "dev": true, "dependencies": { "semver": "^5.0.3" @@ -12608,33 +14317,66 @@ "node": ">=0.10.0" } }, + "node_modules/semver-diff/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, "node_modules/send": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", - "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", "dependencies": { "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", + "depd": "2.0.0", + "destroy": "1.2.0", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", "fresh": "0.5.2", - "http-errors": "~1.7.2", + "http-errors": "2.0.0", "mime": "1.6.0", - "ms": "2.1.1", - "on-finished": "~2.3.0", + "ms": "2.1.3", + "on-finished": "2.4.1", "range-parser": "~1.2.1", - "statuses": "~1.5.0" + "statuses": "2.0.1" }, "engines": { "node": ">= 0.8.0" } }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/send/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/send/node_modules/ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, "node_modules/serialize-javascript": { "version": "1.9.1", @@ -12645,7 +14387,7 @@ "node_modules/serve-index": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", "dev": true, "dependencies": { "accepts": "~1.3.4", @@ -12660,10 +14402,28 @@ "node": ">= 0.8.0" } }, + "node_modules/serve-index/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/serve-index/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/serve-index/node_modules/http-errors": { "version": "1.6.3", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", "dev": true, "dependencies": { "depd": "~1.1.2", @@ -12675,21 +14435,42 @@ "node": ">= 0.6" } }, + "node_modules/serve-index/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + }, + "node_modules/serve-index/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "node_modules/serve-index/node_modules/setprototypeof": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", "dev": true }, + "node_modules/serve-index/node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/serve-static": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", - "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", "dependencies": { "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.17.1" + "send": "0.18.0" }, "engines": { "node": ">= 0.8.0" @@ -12698,18 +14479,9 @@ "node_modules/set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", "dev": true }, - "node_modules/set-immediate-shim": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", - "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/set-value": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", @@ -12725,13 +14497,13 @@ "node": ">=0.10.0" } }, - "node_modules/set-value/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "node_modules/set-value/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "dev": true, "dependencies": { - "is-extendable": "^0.1.0" + "isobject": "^3.0.1" }, "engines": { "node": ">=0.10.0" @@ -12740,13 +14512,13 @@ "node_modules/setimmediate": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", "dev": true }, "node_modules/setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" }, "node_modules/sha.js": { "version": "2.4.11", @@ -12764,7 +14536,7 @@ "node_modules/shallow-clone": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-0.1.2.tgz", - "integrity": "sha1-WQnodLp3EG1zrEFM/sH/yofZcGA=", + "integrity": "sha512-J1zdXCky5GmNnuauESROVu31MQSnLoYvlyEn6j2Ztk6Q5EHFIhxkMhYcv6vuDzl2XEzoRr856QwzMgWM/TmZgw==", "dev": true, "dependencies": { "is-extendable": "^0.1.1", @@ -12779,7 +14551,7 @@ "node_modules/shallow-clone/node_modules/kind-of": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-2.0.1.tgz", - "integrity": "sha1-AY7HpM5+OobLkUG+UZ0kyPqpgbU=", + "integrity": "sha512-0u8i1NZ/mg0b+W3MGGw5I7+6Eib2nx72S/QvXa0hYjEkjTknYmEYQJwGu3mLC0BrhtJjtQafTkyRUQ75Kx0LVg==", "dev": true, "dependencies": { "is-buffer": "^1.0.2" @@ -12788,19 +14560,10 @@ "node": ">=0.10.0" } }, - "node_modules/shallow-clone/node_modules/lazy-cache": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-0.2.7.tgz", - "integrity": "sha1-f+3fLctu23fRHvHRF6tf/fCrG2U=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/shebang-command": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", "dev": true, "dependencies": { "shebang-regex": "^1.0.0" @@ -12812,7 +14575,7 @@ "node_modules/shebang-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", "dev": true, "engines": { "node": ">=0.10.0" @@ -12821,7 +14584,7 @@ "node_modules/shell-quote": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz", - "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=", + "integrity": "sha512-V0iQEZ/uoem3NmD91rD8XiuozJnq9/ZJnbHVXHnWqP1ucAhS3yJ7sLIIzEi57wFFcK3oi3kFUC46uSyWr35mxg==", "dev": true, "dependencies": { "array-filter": "~0.0.0", @@ -12847,12 +14610,37 @@ "node": ">=4" } }, + "node_modules/shelljs/node_modules/rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "dev": true, + "dependencies": { + "resolve": "^1.1.6" + }, + "engines": { + "node": ">= 0.10" + } + }, "node_modules/shellwords": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", "dev": true }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/sign-addon": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/sign-addon/-/sign-addon-0.3.1.tgz", @@ -12874,7 +14662,7 @@ "node_modules/sign-addon/node_modules/ajv": { "version": "5.5.2", "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "integrity": "sha512-Ajr4IcMXq/2QmMkEmSvxqfLN5zGmJ92gHXAeOXq1OekoH2rfDNsgdDoL2f7QaRCy7G/E6TpxBVdRuNraMztGHw==", "dev": true, "dependencies": { "co": "^4.6.0", @@ -12886,7 +14674,7 @@ "node_modules/sign-addon/node_modules/babel-polyfill": { "version": "6.16.0", "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.16.0.tgz", - "integrity": "sha1-LUUCHfh+JqN0ttTRqcZZZNF/JCI=", + "integrity": "sha512-PI/IOV3AnDfLph2y9meCys0AGY4U3Pj8ozSIKp+76zlMvin2w0Rxy0RgQUnCTAQWqKsHqvPijoEyNIdrao6J1g==", "dev": true, "dependencies": { "babel-runtime": "^6.9.1", @@ -12897,19 +14685,20 @@ "node_modules/sign-addon/node_modules/es6-error": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.0.0.tgz", - "integrity": "sha1-8JTHBB9mJZm7EnINoFnWucf/D0A=", + "integrity": "sha512-atCcmEjui49DMEp2RgaUrQcmJPqoQOiSL9LEXAM4tEcy29maTfJP2motu75GfyefeZElQOEzOHiO/8Do7Dr1Lw==", "dev": true }, "node_modules/sign-addon/node_modules/fast-deep-equal": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", - "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", + "integrity": "sha512-fueX787WZKCV0Is4/T2cyAdM4+x1S3MXXOAhavE1ys/W42SHAPacLTQhucja22QBYrfGw50M2sRiXPtTGv9Ymw==", "dev": true }, "node_modules/sign-addon/node_modules/har-validator": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", - "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", + "integrity": "sha512-r7LZkP7Z6WMxj5zARzB9dSpIKu/sp0NfHIgtj6kmQXhEArNctjB5FEv/L2XfLdWqIocPT2QVt0LFOlEUioTBtQ==", + "deprecated": "this library is no longer supported", "dev": true, "dependencies": { "ajv": "^5.1.0", @@ -12922,13 +14711,13 @@ "node_modules/sign-addon/node_modules/json-schema-traverse": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", + "integrity": "sha512-4JD/Ivzg7PoW8NzdrBSr3UFwC9mHgvI7Z6z3QGBsSHgKaRTUDmyZAAKJo2UbG1kUVfS9WS8bi36N49U1xw43DA==", "dev": true }, "node_modules/sign-addon/node_modules/mz": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/mz/-/mz-2.5.0.tgz", - "integrity": "sha1-KFkCXfA9RrV7sxcXSxlkd85kzsE=", + "integrity": "sha512-jTqXIBzwjbFIwluxl7vtU5BbzQjPbhSsugBkJfqL9i3fx3Tl6N0VI/+AI8vDROzTdrzdjGBazK7n5yK1xCNE7A==", "dev": true, "dependencies": { "any-promise": "^1.0.0", @@ -12939,7 +14728,7 @@ "node_modules/sign-addon/node_modules/oauth-sign": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", + "integrity": "sha512-VlF07iu3VV3+BTXj43Nmp6Irt/G7j/NgEctUS6IweH1RGhURjjCc2NWtzXFPXXWWfc7hgbXQdtiQu2LGp6MxUg==", "dev": true, "engines": { "node": "*" @@ -12948,13 +14737,13 @@ "node_modules/sign-addon/node_modules/punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", "dev": true }, "node_modules/sign-addon/node_modules/qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", "dev": true, "engines": { "node": ">=0.6" @@ -12963,13 +14752,14 @@ "node_modules/sign-addon/node_modules/regenerator-runtime": { "version": "0.9.6", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.9.6.tgz", - "integrity": "sha1-0z65XQ0gAaS+OWWXB8UbDLcc4Ck=", + "integrity": "sha512-D0Y/JJ4VhusyMOd/o25a3jdUqN/bC85EFsaoL9Oqmy/O4efCh+xhp7yj2EEOsj974qvMkcW8AwUzJ1jB/MbxCw==", "dev": true }, "node_modules/sign-addon/node_modules/request": { "version": "2.87.0", "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", + "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", "dev": true, "dependencies": { "aws-sign2": "~0.7.0", @@ -13000,7 +14790,7 @@ "node_modules/sign-addon/node_modules/source-map-support": { "version": "0.4.6", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.6.tgz", - "integrity": "sha1-MlUqpktFg5KoXqs7C17mFScWeus=", + "integrity": "sha512-cqbwg0QgDOUayGgn8KALCCBWf/tuxJCCyvqkNmtb6pF/3YgJUoKqtZ+7AKDyCITNd3+dbz7VdHjcxEgFL9U/aQ==", "dev": true, "dependencies": { "source-map": "^0.5.3" @@ -13019,9 +14809,9 @@ } }, "node_modules/signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true }, "node_modules/sinon": { @@ -13029,6 +14819,7 @@ "resolved": "https://registry.npmjs.org/sinon/-/sinon-4.5.0.tgz", "integrity": "sha512-trdx+mB0VBBgoYucy6a9L7/jfQOmvGeaKZT4OOJ+lPAtI8623xyGr8wLiE4eojzBS8G9yXbhx42GHUOVLr4X2w==", "dev": true, + "hasInstallScript": true, "dependencies": { "@sinonjs/formatio": "^2.0.0", "diff": "^3.1.0", @@ -13043,12 +14834,16 @@ "version": "2.14.0", "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-2.14.0.tgz", "integrity": "sha512-9stIF1utB0ywNHNT7RgiXbdmen8QDCRsrTjw+G9TgKt1Yexjiv8TOWZ6WHsTPz57Yky3DIswZvEqX8fpuHNDtQ==", - "dev": true + "dev": true, + "peerDependencies": { + "chai": ">=1.9.2 <5", + "sinon": "^1.4.0 || ^2.1.0 || ^3.0.0 || ^4.0.0" + } }, "node_modules/slash": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "integrity": "sha512-3TYDR7xWt4dIqV2JauJr+EJeW356RXijHeUlO+8djJ+uBXPn8/2dpzBc8yQhh583sVvc9CvFAeQVgijsH+PNNg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -13069,7 +14864,7 @@ "node_modules/smart-buffer": { "version": "1.1.15", "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-1.1.15.tgz", - "integrity": "sha1-fxFLW2X6s+KjWqd1uxLw0cZJvxY=", + "integrity": "sha512-1+8bxygjTsNfvQe0/0pNBesTOlSHtOeG6b6LYbvsZCCHDKYZ40zcQo6YTnZBWrBSLWOCbrHljLdEmGMYebu7aQ==", "dev": true, "engines": { "node": ">= 0.10.15", @@ -13112,7 +14907,7 @@ "node_modules/snapdragon-node/node_modules/define-property": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", "dev": true, "dependencies": { "is-descriptor": "^1.0.0" @@ -13121,60 +14916,67 @@ "node": ">=0.10.0" } }, - "node_modules/snapdragon-node/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "node_modules/snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", "dev": true, "dependencies": { - "kind-of": "^6.0.0" + "kind-of": "^3.2.0" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/snapdragon-node/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "node_modules/snapdragon-util/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "dependencies": { - "kind-of": "^6.0.0" + "is-buffer": "^1.1.5" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/snapdragon-node/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "node_modules/snapdragon/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" + "ms": "2.0.0" + } + }, + "node_modules/snapdragon/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "node_modules/snapdragon/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", "dev": true, "dependencies": { - "kind-of": "^3.2.0" + "kind-of": "^3.0.2" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/snapdragon-util/node_modules/kind-of": { + "node_modules/snapdragon/node_modules/is-accessor-descriptor/node_modules/kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "dependencies": { "is-buffer": "^1.1.5" @@ -13183,34 +14985,64 @@ "node": ">=0.10.0" } }, - "node_modules/snapdragon/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "node_modules/snapdragon/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", "dev": true, "dependencies": { - "is-descriptor": "^0.1.0" + "kind-of": "^3.0.2" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/snapdragon/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "node_modules/snapdragon/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "dependencies": { - "is-extendable": "^0.1.0" + "is-buffer": "^1.1.5" }, "engines": { "node": ">=0.10.0" } }, + "node_modules/snapdragon/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "node_modules/snyk": { "version": "1.110.2", "resolved": "https://registry.npmjs.org/snyk/-/snyk-1.110.2.tgz", "integrity": "sha512-SQE4sudrscd48EoRJqy5h5S6c8YBiOw0r0Se3rfg1l6ElJGgCB9je6XEzfe+UmfES06D7ueFYepiQPxTwH4Qww==", + "deprecated": "A medium severity vulnerability was found in the Snyk CLI version you are using. We fixed the vulnerability in version 1.996.0. We recommend updating to the latest version. More details here: https://snyk.co/ue1NS", "dev": true, "dependencies": { "abbrev": "^1.1.1", @@ -13269,20 +15101,14 @@ } }, "node_modules/snyk-config/node_modules/debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { "ms": "^2.1.1" } }, - "node_modules/snyk-config/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "node_modules/snyk-docker-plugin": { "version": "1.12.3", "resolved": "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-1.12.3.tgz", @@ -13295,18 +15121,18 @@ } }, "node_modules/snyk-docker-plugin/node_modules/debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { "ms": "^2.1.1" } }, - "node_modules/snyk-docker-plugin/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "node_modules/snyk-docker-plugin/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true }, "node_modules/snyk-go-plugin": { @@ -13340,20 +15166,14 @@ } }, "node_modules/snyk-module/node_modules/debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { "ms": "^2.1.1" } }, - "node_modules/snyk-module/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "node_modules/snyk-mvn-plugin": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/snyk-mvn-plugin/-/snyk-mvn-plugin-2.0.0.tgz", @@ -13386,6 +15206,12 @@ "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", "dev": true }, + "node_modules/snyk-nodejs-lockfile-parser/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, "node_modules/snyk-nuget-plugin": { "version": "1.6.5", "resolved": "https://registry.npmjs.org/snyk-nuget-plugin/-/snyk-nuget-plugin-1.6.5.tgz", @@ -13399,20 +15225,14 @@ } }, "node_modules/snyk-nuget-plugin/node_modules/debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { "ms": "^2.1.1" } }, - "node_modules/snyk-nuget-plugin/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "node_modules/snyk-php-plugin": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/snyk-php-plugin/-/snyk-php-plugin-1.5.1.tgz", @@ -13425,20 +15245,14 @@ } }, "node_modules/snyk-php-plugin/node_modules/debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { "ms": "^2.1.1" } }, - "node_modules/snyk-php-plugin/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "node_modules/snyk-policy": { "version": "1.13.1", "resolved": "https://registry.npmjs.org/snyk-policy/-/snyk-policy-1.13.1.tgz", @@ -13457,19 +15271,22 @@ } }, "node_modules/snyk-policy/node_modules/debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { "ms": "^2.1.1" } }, - "node_modules/snyk-policy/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "node_modules/snyk-policy/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } }, "node_modules/snyk-python-plugin": { "version": "1.9.0", @@ -13514,35 +15331,32 @@ } }, "node_modules/snyk-resolve-deps/node_modules/debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { "ms": "^2.1.1" } }, - "node_modules/snyk-resolve-deps/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "node_modules/snyk-resolve-deps/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } }, "node_modules/snyk-resolve/node_modules/debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { "ms": "^2.1.1" } }, - "node_modules/snyk-resolve/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "node_modules/snyk-sbt-plugin": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/snyk-sbt-plugin/-/snyk-sbt-plugin-2.0.0.tgz", @@ -13552,7 +15366,7 @@ "node_modules/snyk-tree": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/snyk-tree/-/snyk-tree-1.0.0.tgz", - "integrity": "sha1-D7cxdtvzLngvGRAClBYESPkRHMg=", + "integrity": "sha512-JQezX6eaVi0uNctPcx2Uzy5KA9lpTRRe31n8NI71DIseGvI6OVCfuKjzFptE06h4ZISMey351ICXnHBadBtWdg==", "dev": true, "dependencies": { "archy": "^1.0.0" @@ -13564,7 +15378,7 @@ "node_modules/snyk-try-require": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/snyk-try-require/-/snyk-try-require-1.3.1.tgz", - "integrity": "sha1-bgJvkuZK9/zM6h7lPVJIQeQYohI=", + "integrity": "sha512-adCnpfCvigiarbADOHuqh82P4aQUlyq6nWzhVmEUly62Q3tnVg4BGtgjYISkaj9GGBmpgVZiJegENBpQr02NsQ==", "dev": true, "dependencies": { "debug": "^3.1.0", @@ -13574,33 +15388,27 @@ } }, "node_modules/snyk-try-require/node_modules/debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { "ms": "^2.1.1" } }, - "node_modules/snyk-try-require/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "node_modules/snyk/node_modules/ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", "dev": true, "engines": { "node": ">=4" } }, "node_modules/snyk/node_modules/debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { "ms": "^2.1.1" @@ -13628,12 +15436,6 @@ "through": "^2.3.6" } }, - "node_modules/snyk/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "node_modules/snyk/node_modules/opn": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", @@ -13649,13 +15451,22 @@ "node_modules/snyk/node_modules/rx-lite": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", - "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", + "integrity": "sha512-Cun9QucwK6MIrp3mry/Y7hqD1oFqTYLQ4pGxaHTjIdaFDWRGGLikqp6u8LcWJnzpoALg9hap+JGk8sFIUuEGNA==", "dev": true }, + "node_modules/snyk/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, "node_modules/snyk/node_modules/strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", "dev": true, "dependencies": { "ansi-regex": "^3.0.0" @@ -13667,7 +15478,8 @@ "node_modules/socks": { "version": "1.1.10", "resolved": "https://registry.npmjs.org/socks/-/socks-1.1.10.tgz", - "integrity": "sha1-W4t/x8jzQcU+0FbpKbe/Tei6e1o=", + "integrity": "sha512-ArX4vGPULWjKDKgUnW8YzfI2uXW7kzgkJuB0GnFBA/PfT3exrrOk+7Wk2oeb894Qf20u1PWv9LEgrO0Z82qAzA==", + "deprecated": "If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0", "dev": true, "dependencies": { "ip": "^1.1.4", @@ -13706,7 +15518,7 @@ "node_modules/source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", "engines": { "node": ">=0.10.0" } @@ -13715,6 +15527,7 @@ "version": "0.5.3", "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", "dev": true, "dependencies": { "atob": "^2.1.2", @@ -13725,9 +15538,9 @@ } }, "node_modules/source-map-support": { - "version": "0.5.19", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", - "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", "dev": true, "dependencies": { "buffer-from": "^1.0.0", @@ -13744,16 +15557,18 @@ } }, "node_modules/source-map-url": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", + "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", + "deprecated": "See https://github.com/lydell/source-map-url#deprecated", "dev": true }, "node_modules/spawn-sync": { "version": "1.0.15", "resolved": "https://registry.npmjs.org/spawn-sync/-/spawn-sync-1.0.15.tgz", - "integrity": "sha1-sAeZVX63+wyDdsKdROih6mfldHY=", + "integrity": "sha512-9DWBgrgYZzNghseho0JOuh+5fg9u6QWhAWa51QC7+U5rCheZ/j1DrEZnyE0RBBRqZ9uEXGPgSSM0nky6burpVw==", "dev": true, + "hasInstallScript": true, "dependencies": { "concat-stream": "^1.4.7", "os-shim": "^0.1.2" @@ -13786,15 +15601,15 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", - "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", + "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==", "dev": true }, "node_modules/split": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/split/-/split-0.3.3.tgz", - "integrity": "sha1-zQ7qXmOiEd//frDwkcQTPi0N0o8=", + "integrity": "sha512-wD2AeVmxXRBoX44wAycgjVpMhvbwdI2aZjCkvfNcH1YqHQvJVa1duWc73OyVGJUc05fhFaTZeQ/PYsrmyH0JVA==", "dev": true, "dependencies": { "through": "2" @@ -13815,16 +15630,52 @@ "node": ">=0.10.0" } }, + "node_modules/split-string/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/split-string/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/split-string/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/sprintf-js": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", - "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", - "dev": true + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" }, "node_modules/sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", + "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", "dev": true, "dependencies": { "asn1": "~0.2.3", @@ -13858,7 +15709,7 @@ "node_modules/static-extend": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "integrity": "sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==", "dev": true, "dependencies": { "define-property": "^0.2.5", @@ -13868,30 +15719,101 @@ "node": ">=0.10.0" } }, - "node_modules/static-extend/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "node_modules/static-extend/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "dev": true, "dependencies": { - "is-descriptor": "^0.1.0" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" }, "engines": { "node": ">=0.10.0" } }, + "node_modules/static-extend/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "engines": { - "node": ">= 0.6" + "node": ">= 0.8" } }, "node_modules/stealthy-require": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", - "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", + "integrity": "sha512-ZnWpYnYugiOVEY5GkcuJK1io5V8QmNYChG62gSit9pQVGErXtrKuPC55ITaVSukmMta5qpMU7vqLt2Lnni4f/g==", "dev": true, "engines": { "node": ">=0.10.0" @@ -13933,12 +15855,27 @@ "node_modules/stream-parser": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/stream-parser/-/stream-parser-0.3.1.tgz", - "integrity": "sha1-FhhUhpRCACGhGC/wrxkRwSl2F3M=", + "integrity": "sha512-bJ/HgKq41nlKvlhccD5kaCr/P+Hu0wPNKPJOH7en+YrJu/9EgqUF+88w5Jb6KNcjOFMhfX4B2asfeAtIGuHObQ==", "dev": true, "dependencies": { "debug": "2" } }, + "node_modules/stream-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/stream-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "node_modules/stream-shift": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", @@ -13948,7 +15885,7 @@ "node_modules/stream-to-array": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/stream-to-array/-/stream-to-array-2.3.0.tgz", - "integrity": "sha1-u/azn19D7DC8cbq8s3VXrOzzQ1M=", + "integrity": "sha512-UsZtOYEn4tWU2RGLOXr/o/xjRBftZRlG3dEWoaHr8j4GuypJ3isitGbVyjQKAuMu+xbiop8q224TjiZWc4XTZA==", "dev": true, "dependencies": { "any-promise": "^1.1.0" @@ -13957,7 +15894,7 @@ "node_modules/stream-to-promise": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/stream-to-promise/-/stream-to-promise-2.2.0.tgz", - "integrity": "sha1-se2y4cjLESidG1A8CNPyrvUeZQ8=", + "integrity": "sha512-HAGUASw8NT0k8JvIVutB2Y/9iBk7gpgEyAudXwNJmZERdMITGdajOa4VJfD/kNiA3TppQpTP4J+CtcHwdzKBAw==", "dev": true, "dependencies": { "any-promise": "~1.3.0", @@ -13968,7 +15905,7 @@ "node_modules/stream-to-promise/node_modules/end-of-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.1.0.tgz", - "integrity": "sha1-6TUyWLqpEIll78QcsO+K3i88+wc=", + "integrity": "sha512-EoulkdKF/1xa92q25PbjuDcgJ9RDHYU2Rs3SCIvs2/dSQ3BpmxneNHmA/M7fe60M3PrV7nNGTTNbkK62l6vXiQ==", "dev": true, "dependencies": { "once": "~1.3.0" @@ -13977,22 +15914,31 @@ "node_modules/stream-to-promise/node_modules/once": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", - "integrity": "sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA=", + "integrity": "sha512-6vaNInhu+CHxtONf3zw3vq4SP2DOQhjBvIa3rNcG0+P7eKWlYH6Peu7rHizSloRU2EwMz6GraLieis9Ac9+p1w==", "dev": true, "dependencies": { "wrappy": "1" } }, "node_modules/string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", "dev": true }, "node_modules/string-template": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz", - "integrity": "sha1-QpMuWYo1LQH8IuwzZ9nYTuxsmt0=", + "integrity": "sha512-Yptehjogou2xm4UJbxJ4CxgZx12HBfeystp0y3x7s4Dj32ltVVG1Gg8YhKjHZkHicuKpZX/ffilA8505VbUbpw==", "dev": true }, "node_modules/string-width": { @@ -14009,9 +15955,9 @@ } }, "node_modules/string-width/node_modules/ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", "dev": true, "engines": { "node": ">=4" @@ -14020,7 +15966,7 @@ "node_modules/string-width/node_modules/strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", "dev": true, "dependencies": { "ansi-regex": "^3.0.0" @@ -14043,29 +15989,37 @@ } }, "node_modules/string.prototype.trimend": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", - "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", + "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", "dev": true, "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/string.prototype.trimstart": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", - "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", + "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", "dev": true, "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", "dev": true, "dependencies": { "ansi-regex": "^2.0.0" @@ -14077,7 +16031,7 @@ "node_modules/strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", "dev": true, "engines": { "node": ">=4" @@ -14086,7 +16040,7 @@ "node_modules/strip-bom-buf": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-1.0.0.tgz", - "integrity": "sha1-HLRar1dTD0yvhsf3UXnSyaUd1XI=", + "integrity": "sha512-1sUIL1jck0T1mhOLP2c696BIznzT525Lkub+n4jjMHjhjhoAQA6Ye659DxdlZBr0aLDMQoTxKIpnlqxgtwjsuQ==", "dev": true, "dependencies": { "is-utf8": "^0.2.1" @@ -14098,7 +16052,7 @@ "node_modules/strip-bom-stream": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-3.0.0.tgz", - "integrity": "sha1-lWvMXYRDD2klapDtgjdlzYWOFZw=", + "integrity": "sha512-2di6sulSHfspbuEJHwwF6vzwijA4uaKsKYtviRQsJsOdxxb6yexiDcZFQ5oY10J50YxmCdHn/1sQmxDKbrGOVw==", "dev": true, "dependencies": { "first-chunk-stream": "^2.0.0", @@ -14111,7 +16065,7 @@ "node_modules/strip-eof": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==", "dev": true, "engines": { "node": ">=0.10.0" @@ -14120,7 +16074,7 @@ "node_modules/strip-json-comments": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", "dev": true, "engines": { "node": ">=0.10.0" @@ -14148,15 +16102,6 @@ "node": "*" } }, - "node_modules/stylus/node_modules/css-parse": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-2.0.0.tgz", - "integrity": "sha1-pGjuZnwW2BzPBcWMONKpfHgNv9Q=", - "dev": true, - "dependencies": { - "css": "^2.0.0" - } - }, "node_modules/stylus/node_modules/debug": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", @@ -14166,37 +16111,16 @@ "ms": "2.0.0" } }, - "node_modules/stylus/node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true, - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/stylus/node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "node_modules/stylus/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, - "node_modules/stylus/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/stylus/node_modules/source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", "dev": true, "engines": { "node": ">= 8" @@ -14214,10 +16138,21 @@ "node": ">=4" } }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/symbol-observable": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", - "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=", + "integrity": "sha512-Kb3PrPYz4HanVF1LVGuAdW6LoVgIwjUYJGzFe7NDrBLCN4lsV/5J0MFurV+ygS4bRVwrCEt2c7MQ1R2a72oJDw==", "dev": true, "engines": { "node": ">=0.10.0" @@ -14270,7 +16205,7 @@ "node_modules/temp-dir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", - "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "integrity": "sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ==", "dev": true, "engines": { "node": ">=4" @@ -14279,7 +16214,7 @@ "node_modules/tempfile": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-2.0.0.tgz", - "integrity": "sha1-awRGhWqbERTRhW/8vlCczLCXcmU=", + "integrity": "sha512-ZOn6nJUgvgC09+doCEF3oB+r3ag7kUvlsXEGX069QRD60p+P3uP7XG9N2/at+EyIRGSN//ZY3LyEotA1YpmjuA==", "dev": true, "dependencies": { "temp-dir": "^1.0.0", @@ -14292,7 +16227,7 @@ "node_modules/term-size": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", - "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", + "integrity": "sha512-7dPUZQGy/+m3/wjVz3ZW5dobSoD/02NxJpoXUX0WIyjfVS3l0c+b/+9phIDFA7FHzkYtwtMFgeGZ/Y8jVTeqQQ==", "dev": true, "dependencies": { "execa": "^0.7.0" @@ -14304,7 +16239,7 @@ "node_modules/term-size/node_modules/cross-spawn": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==", "dev": true, "dependencies": { "lru-cache": "^4.0.1", @@ -14315,7 +16250,7 @@ "node_modules/term-size/node_modules/execa": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "integrity": "sha512-RztN09XglpYI7aBBrJCPW95jEH7YF1UEPOoX9yDhUTPdp7mK+CQvnLTuD10BNXZ3byLTu2uehZ8EcKT/4CGiFw==", "dev": true, "dependencies": { "cross-spawn": "^5.0.1", @@ -14330,10 +16265,22 @@ "node": ">=4" } }, + "node_modules/term-size/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, "node_modules/terser": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", - "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz", + "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==", "dev": true, "dependencies": { "commander": "^2.20.0", @@ -14348,16 +16295,16 @@ } }, "node_modules/terser-webpack-plugin": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.4.tgz", - "integrity": "sha512-U4mACBHIegmfoEe5fdongHESNJWqsGU+W0S/9+BmYGVQDw1+c2Ow05TpMhxjPK1sRb7cuYq1BPl1e5YHJMTCqA==", + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz", + "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==", "dev": true, "dependencies": { "cacache": "^12.0.2", "find-cache-dir": "^2.1.0", "is-wsl": "^1.1.0", "schema-utils": "^1.0.0", - "serialize-javascript": "^3.1.0", + "serialize-javascript": "^4.0.0", "source-map": "^0.6.1", "terser": "^4.1.2", "webpack-sources": "^1.4.0", @@ -14365,6 +16312,9 @@ }, "engines": { "node": ">= 6.9.0" + }, + "peerDependencies": { + "webpack": "^4.0.0" } }, "node_modules/terser-webpack-plugin/node_modules/cacache": { @@ -14390,6 +16340,45 @@ "y18n": "^4.0.0" } }, + "node_modules/terser-webpack-plugin/node_modules/find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dev": true, + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/terser-webpack-plugin/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/terser-webpack-plugin/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/terser-webpack-plugin/node_modules/lru-cache": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", @@ -14399,6 +16388,19 @@ "yallist": "^3.0.2" } }, + "node_modules/terser-webpack-plugin/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/terser-webpack-plugin/node_modules/mississippi": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", @@ -14420,6 +16422,60 @@ "node": ">=4.0.0" } }, + "node_modules/terser-webpack-plugin/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/terser-webpack-plugin/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/terser-webpack-plugin/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/terser-webpack-plugin/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/terser-webpack-plugin/node_modules/pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "dependencies": { + "find-up": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/terser-webpack-plugin/node_modules/pump": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", @@ -14456,10 +16512,19 @@ "node": ">= 4" } }, + "node_modules/terser-webpack-plugin/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, "node_modules/terser-webpack-plugin/node_modules/serialize-javascript": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-3.1.0.tgz", - "integrity": "sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", + "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", "dev": true, "dependencies": { "randombytes": "^2.1.0" @@ -14475,9 +16540,9 @@ } }, "node_modules/terser-webpack-plugin/node_modules/ssri": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", - "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", + "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", "dev": true, "dependencies": { "figgy-pudding": "^3.5.1" @@ -14501,13 +16566,13 @@ "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, "node_modules/then-fs": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/then-fs/-/then-fs-2.0.0.tgz", - "integrity": "sha1-cveS3Z0xcFqRrhnr/Piz+WjIHaI=", + "integrity": "sha512-5ffcBcU+vFUCYDNi/o507IqjqrTkuGsLVZ1Fp50hwgZRY7ufVFa9jFfTy5uZ2QnSKacKigWKeaXkOqLa4DsjLw==", "dev": true, "dependencies": { "promise": ">=3.2 <8" @@ -14525,7 +16590,7 @@ "node_modules/thenify-all": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", - "integrity": "sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY=", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", "dev": true, "dependencies": { "thenify": ">= 3.1.0 < 4" @@ -14537,7 +16602,7 @@ "node_modules/through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", "dev": true }, "node_modules/through2": { @@ -14553,22 +16618,22 @@ "node_modules/thunkify": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/thunkify/-/thunkify-2.1.2.tgz", - "integrity": "sha1-+qDp0jDFGsyVyhOjYawFyn4EVT0=", + "integrity": "sha512-w9foI80XcGImrhMQ19pxunaEC5Rp2uzxZZg4XBAFRfiLOplk3F0l7wo+bO16vC2/nlQfR/mXZxcduo0MF2GWLg==", "dev": true }, "node_modules/timed-out": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", + "integrity": "sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/timers-browserify": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", - "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", + "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", "dev": true, "dependencies": { "setimmediate": "^1.0.4" @@ -14592,20 +16657,14 @@ } }, "node_modules/tiny-lr/node_modules/debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { "ms": "^2.1.1" } }, - "node_modules/tiny-lr/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "node_modules/tippy.js": { "version": "2.6.0", "resolved": "https://registry.npmjs.org/tippy.js/-/tippy.js-2.6.0.tgz", @@ -14630,7 +16689,7 @@ "node_modules/to-arraybuffer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", - "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", + "integrity": "sha512-okFlQcoGTi4LQBG/PgSYblw9VOyptsz2KJZqc6qtgGdes8VktzUQkj4BI2blit072iS8VODNcMA+tvnS9dnuMA==", "dev": true }, "node_modules/to-buffer": { @@ -14642,7 +16701,7 @@ "node_modules/to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", "dev": true, "engines": { "node": ">=4" @@ -14651,7 +16710,7 @@ "node_modules/to-object-path": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "integrity": "sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==", "dev": true, "dependencies": { "kind-of": "^3.0.2" @@ -14663,7 +16722,7 @@ "node_modules/to-object-path/node_modules/kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "dependencies": { "is-buffer": "^1.1.5" @@ -14690,20 +16749,57 @@ "node_modules/to-regex-range": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "dev": true, + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "dev": true, "dependencies": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" + "isobject": "^3.0.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/toidentifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", - "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", "engines": { "node": ">=0.6" } @@ -14711,7 +16807,7 @@ "node_modules/token-stream": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-0.0.1.tgz", - "integrity": "sha1-zu78cXp2xDFvEm0LnbqlXX598Bo=" + "integrity": "sha512-nfjOAu/zAWmX9tgwi5NRp7O7zTDUD1miHiB40klUnAh9qnL1iXdgzcz/i5dMaL5jahcBAaSfmNOBBJBLJW8TEg==" }, "node_modules/toml": { "version": "2.3.6", @@ -14722,7 +16818,7 @@ "node_modules/tosource": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/tosource/-/tosource-1.0.0.tgz", - "integrity": "sha1-QtiN0RZhi88A1hBt1URvNCeQL/E=", + "integrity": "sha512-N6g8eQ1eerw6Y1pBhdgkubWIiPFwXa2POSUrlL8jth5CyyEWNWzoGKRkO3CaO7Jx27hlJP54muB3btIAbx4MPg==", "dev": true, "engines": { "node": ">=0.4.0" @@ -14742,18 +16838,14 @@ } }, "node_modules/tr46": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", - "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" }, "node_modules/traverse": { "version": "0.4.6", "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.4.6.tgz", - "integrity": "sha1-0EsigOTHkqWBVCnve4tgxkyczDQ=", + "integrity": "sha512-eIHWCq7YzOYYst5xsHyBbjPNP7PYkL9OYukWxUY2SopyxkTQSo2LkUmqWvkdkYhfDTtUCbaNTUnyo0b+ErjbIA==", "dev": true, "engines": { "node": "*" @@ -14762,28 +16854,28 @@ "node_modules/trim-right": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", - "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "integrity": "sha512-WZGXGstmCWgeevgTL54hrCuw1dyMQIzWy7ZfqRJfSmJZBwklI15egmQytFP6bPidmw3M8d5yEowl1niq4vmqZw==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/tslib": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", - "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", + "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==", "dev": true }, "node_modules/tty-browserify": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", + "integrity": "sha512-JVa5ijo+j/sOoHGjw0sxw734b1LhBkQ3bvUGNdxnVXDCX81Yx7TFgnZygxrIIWn23hbfTaMYLwRmAxFyDuFmIw==", "dev": true }, "node_modules/tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", "dev": true, "dependencies": { "safe-buffer": "^5.0.1" @@ -14795,7 +16887,7 @@ "node_modules/tv4": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/tv4/-/tv4-1.3.0.tgz", - "integrity": "sha1-0CDIRvrdUMhVq7JeuuzGj8EPeWM=", + "integrity": "sha512-afizzfpJgvPr+eDkREK4MxJ/+r8nEEHcmitwgnPUqpaP+FpwQyadnxNoSACbgc/b1LsZYtODGoPiFxQrgJgjvw==", "dev": true, "engines": { "node": ">= 0.8.0" @@ -14804,7 +16896,7 @@ "node_modules/tv4-formats": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/tv4-formats/-/tv4-formats-3.0.3.tgz", - "integrity": "sha1-a3l43S3IqjnQrCWU3dtvbAy/2SE=", + "integrity": "sha512-T8qYFu5k0O8QamObivhw+giNF9v4EeN8Am1jo8HmArKowmg50H2zN/1Bffi0gf6BhsMd5qx/UUfLD8NNcRe/WA==", "dev": true, "dependencies": { "moment": "^2.10.6", @@ -14814,7 +16906,7 @@ "node_modules/tweetnacl": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", "dev": true }, "node_modules/type": { @@ -14826,7 +16918,7 @@ "node_modules/type-check": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", "dev": true, "dependencies": { "prelude-ls": "~1.1.2" @@ -14859,7 +16951,7 @@ "node_modules/typedarray": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", "dev": true }, "node_modules/uc.micro": { @@ -14867,10 +16959,42 @@ "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" }, + "node_modules/uglify-es": { + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", + "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "deprecated": "support for ECMAScript is superseded by `uglify-js` as of v3.13.0", + "dev": true, + "dependencies": { + "commander": "~2.13.0", + "source-map": "~0.6.1" + }, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/uglify-es/node_modules/commander": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", + "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==", + "dev": true + }, + "node_modules/uglify-es/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/uglify-js": { "version": "2.8.29", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", - "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", + "integrity": "sha512-qLq/4y2pjcU3vhlhseXGGJ7VbFO4pBANu0kwl8VCa9KEI0V8VfZIx2Fy3w01iSTA/pGwKZSmu/+I4etLNDdt5w==", "dependencies": { "source-map": "~0.5.1", "yargs": "~3.10.0" @@ -14888,7 +17012,7 @@ "node_modules/uglify-to-browserify": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", - "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", + "integrity": "sha512-vb2s1lYx2xBtUgy+ta+b2J/GLVUR+wmpINwHePmPRhOsIVCG2wDzKJ0n14GslH1BifsqVzSOwQhRaCAsZ/nI4Q==", "optional": true }, "node_modules/uglifyjs-webpack-plugin": { @@ -14908,18 +17032,15 @@ }, "engines": { "node": ">= 4.8 < 5.0.0 || >= 5.10" + }, + "peerDependencies": { + "webpack": "^2.0.0 || ^3.0.0 || ^4.0.0" } }, - "node_modules/uglifyjs-webpack-plugin/node_modules/commander": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", - "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==", - "dev": true - }, "node_modules/uglifyjs-webpack-plugin/node_modules/find-cache-dir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", - "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "integrity": "sha512-46TFiBOzX7xq/PcSWfFwkyjpemdRnMe31UQF+os0y+1W3k95f6R4SEt02Hj4p3X0Mir9gfrkmOtshFidS0VPUg==", "dev": true, "dependencies": { "commondir": "^1.0.1", @@ -14933,7 +17054,7 @@ "node_modules/uglifyjs-webpack-plugin/node_modules/find-up": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==", "dev": true, "dependencies": { "locate-path": "^2.0.0" @@ -14945,7 +17066,7 @@ "node_modules/uglifyjs-webpack-plugin/node_modules/locate-path": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==", "dev": true, "dependencies": { "p-locate": "^2.0.0", @@ -14982,7 +17103,7 @@ "node_modules/uglifyjs-webpack-plugin/node_modules/p-locate": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", "dev": true, "dependencies": { "p-limit": "^1.1.0" @@ -14994,16 +17115,16 @@ "node_modules/uglifyjs-webpack-plugin/node_modules/p-try": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", "dev": true, "engines": { "node": ">=4" } }, - "node_modules/uglifyjs-webpack-plugin/node_modules/pify": { + "node_modules/uglifyjs-webpack-plugin/node_modules/path-exists": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", "dev": true, "engines": { "node": ">=4" @@ -15012,7 +17133,7 @@ "node_modules/uglifyjs-webpack-plugin/node_modules/pkg-dir": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "integrity": "sha512-ojakdnUgL5pzJYWw2AIDEupaQCX5OPbM688ZevubICjdIX01PRSYKqm33fJoCOJBRseYCTUlQRnBNX+Pchaejw==", "dev": true, "dependencies": { "find-up": "^2.1.0" @@ -15043,94 +17164,96 @@ "node": ">=0.10.0" } }, - "node_modules/uglifyjs-webpack-plugin/node_modules/uglify-es": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", - "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", "dev": true, "dependencies": { - "commander": "~2.13.0", - "source-map": "~0.6.1" + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" }, - "bin": { - "uglifyjs": "bin/uglifyjs" - }, - "engines": { - "node": ">=0.8.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/unc-path-regex": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", - "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=", + "integrity": "sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/undefsafe": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.3.tgz", - "integrity": "sha512-nrXZwwXrD/T/JXeygJqdCO6NZZ1L66HrxM/Z7mIq2oPanoN0F1nLx3lwJMu6AwJY69hdixaFQOuoYsMjE5/C2A==", - "dev": true, - "dependencies": { - "debug": "^2.2.0" - } + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz", + "integrity": "sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==", + "dev": true }, "node_modules/underscore": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=", + "integrity": "sha512-z4o1fvKUojIWh9XuaVLUDdf86RQiq13AC1dmHbTpoyuu+bquHms76v16CjycCbec87J7z0k//SiQVk0sMdFmpQ==", "dev": true }, "node_modules/underscore.string": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.5.tgz", - "integrity": "sha512-g+dpmgn+XBneLmXXo+sGlW5xQEt4ErkS3mgeN2GFbremYeMBSJKr9Wf2KJplQVaiPY/f7FN6atosWYNm9ovrYg==", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.6.tgz", + "integrity": "sha512-VoC83HWXmCrF6rgkyxS9GHv8W9Q5nhMKho+OadDJGzL2oDYbYEppBaCMH6pFlwLeqj2QS+hhkw2kpXkSdD1JxQ==", "dev": true, "dependencies": { - "sprintf-js": "^1.0.3", + "sprintf-js": "^1.1.1", "util-deprecate": "^1.0.2" }, "engines": { "node": "*" } }, + "node_modules/underscore.string/node_modules/sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", + "dev": true + }, "node_modules/unicode-canonical-property-names-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", - "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", "dev": true, "engines": { "node": ">=4" } }, "node_modules/unicode-match-property-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", - "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", "dev": true, "dependencies": { - "unicode-canonical-property-names-ecmascript": "^1.0.4", - "unicode-property-aliases-ecmascript": "^1.0.4" + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" }, "engines": { "node": ">=4" } }, "node_modules/unicode-match-property-value-ecmascript": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", - "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", + "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", "dev": true, "engines": { "node": ">=4" } }, "node_modules/unicode-property-aliases-ecmascript": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", - "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", "dev": true, "engines": { "node": ">=4" @@ -15172,7 +17295,7 @@ "node_modules/unique-string": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", - "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", + "integrity": "sha512-ODgiYu03y5g76A1I9Gt0/chLCzQjvzDy7DsZGsLOE/1MrF6wriEskSncj1+/C58Xk/kPZDppSctDybCwOSaGAg==", "dev": true, "dependencies": { "crypto-random-string": "^1.0.0" @@ -15198,7 +17321,7 @@ "node_modules/unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", "engines": { "node": ">= 0.8" } @@ -15206,7 +17329,7 @@ "node_modules/unset-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "integrity": "sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==", "dev": true, "dependencies": { "has-value": "^0.3.1", @@ -15219,7 +17342,7 @@ "node_modules/unset-value/node_modules/has-value": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "integrity": "sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==", "dev": true, "dependencies": { "get-value": "^2.0.3", @@ -15233,7 +17356,7 @@ "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", "dev": true, "dependencies": { "isarray": "1.0.0" @@ -15245,7 +17368,7 @@ "node_modules/unset-value/node_modules/has-values": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "integrity": "sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==", "dev": true, "engines": { "node": ">=0.10.0" @@ -15254,7 +17377,7 @@ "node_modules/unzip-response": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", - "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", + "integrity": "sha512-N0XH6lqDtFH84JxptQoZYmloF4nzrQqqrAymNj+/gW60AO2AZgOcf4O/nUXJcYfyQkqvMo9lSupBZmmgvuVXlw==", "dev": true, "engines": { "node": ">=4" @@ -15269,10 +17392,36 @@ "node": ">=4" } }, + "node_modules/update-browserslist-db": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist-lint": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, "node_modules/update-notifier": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.3.0.tgz", - "integrity": "sha1-TognpruRUUCrCTVZ1wFOPruDdFE=", + "integrity": "sha512-KBLtk9uq+79OJkHB+hdxbikPrYwPc1JoiSbpU/bKknBG3z2gzFzYabHI7jNkQXzMDqipUnvNsKnowCq6PoEakg==", "dev": true, "dependencies": { "boxen": "^1.2.1", @@ -15290,9 +17439,9 @@ } }, "node_modules/uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, "dependencies": { "punycode": "^2.1.0" @@ -15301,13 +17450,14 @@ "node_modules/urix": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "integrity": "sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==", + "deprecated": "Please see https://github.com/lydell/urix#deprecated", "dev": true }, "node_modules/url": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", "dev": true, "dependencies": { "punycode": "1.3.2", @@ -15317,7 +17467,7 @@ "node_modules/url-parse-lax": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", - "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "integrity": "sha512-BVA4lR5PIviy2PMseNd2jbFQ+jwSwQGdJejf5ctd1rEXt0Ypd7yanUK9+lYechVlN5VaTJGsu2U/3MDDu6KgBA==", "dev": true, "dependencies": { "prepend-http": "^1.0.1" @@ -15329,9 +17479,19 @@ "node_modules/url/node_modules/punycode": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==", "dev": true }, + "node_modules/url/node_modules/querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==", + "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", + "dev": true, + "engines": { + "node": ">=0.4.x" + } + }, "node_modules/use": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", @@ -15344,7 +17504,7 @@ "node_modules/user-home": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/user-home/-/user-home-2.0.0.tgz", - "integrity": "sha1-nHC/2Babwdy/SGBODwS4tJzenp8=", + "integrity": "sha512-KMWqdlOcjCYdtIJpicDSFBQ8nFwS2i9sslAd6f4+CBGcU4gist2REnr2fxj2YocvJFxSF3ZOHLYLVZnUxv4BZQ==", "dev": true, "dependencies": { "os-homedir": "^1.0.0" @@ -15365,13 +17525,19 @@ "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/util/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", "dev": true }, "node_modules/utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", "engines": { "node": ">= 0.4.0" } @@ -15380,15 +17546,16 @@ "version": "3.4.0", "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", "dev": true, "bin": { "uuid": "bin/uuid" } }, "node_modules/v8flags": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.1.3.tgz", - "integrity": "sha512-amh9CCg3ZxkzQ48Mhcb8iX7xpAfYJgePHxWMQCBWECpOSqJUXgY26ncA61UTV0BkPqfhcy6mzwCIoP4ygxpW8w==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.2.0.tgz", + "integrity": "sha512-mH8etigqMfiGWdeXpaaqGfs6BndypxusHHcv2qSHyZkGEznCd/qAXCWWRzeowtL54147cktFOC4P5y+kl8d8Jg==", "dev": true, "dependencies": { "homedir-polyfill": "^1.0.1" @@ -15419,7 +17586,7 @@ "node_modules/vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", "engines": { "node": ">= 0.8" } @@ -15427,7 +17594,7 @@ "node_modules/verror": { "version": "1.10.0", "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", "dev": true, "engines": [ "node >=0.6.0" @@ -15438,6 +17605,12 @@ "extsprintf": "^1.2.0" } }, + "node_modules/verror/node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", + "dev": true + }, "node_modules/vm-browserify": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", @@ -15447,21 +17620,21 @@ "node_modules/void-elements": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", + "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", "engines": { "node": ">=0.10.0" } }, "node_modules/vscode-languageserver-types": { - "version": "3.15.1", - "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.15.1.tgz", - "integrity": "sha512-+a9MPUQrNGRrGU630OGbYVQ+11iOIovjCkqxajPa9w57Sd5ruK8WQNsslzpa0x/QJqC8kRc2DUxWjIFwoNm4ZQ==", + "version": "3.17.2", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.2.tgz", + "integrity": "sha512-zHhCWatviizPIq9B7Vh9uvrH6x3sK8itC84HkamnBWoDFJtzBf7SWlpLCZUit72b3os45h6RWQNC9xHRDF8dRA==", "dev": true }, "node_modules/walkdir": { "version": "0.0.11", "resolved": "https://registry.npmjs.org/walkdir/-/walkdir-0.0.11.tgz", - "integrity": "sha1-oW0CXrkxvQO1LzCMrtD0D86+lTI=", + "integrity": "sha512-lMFYXGpf7eg+RInVL021ZbJJT4hqsvsBvq5sZBp874jfhs3IWlA7OPoG0ojQrYcXHuUSi+Nqp6qGN+pPGaMgPQ==", "dev": true, "engines": { "node": ">=0.6.0" @@ -15479,22 +17652,19 @@ } }, "node_modules/watchpack-chokidar2": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz", - "integrity": "sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz", + "integrity": "sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww==", "dev": true, "optional": true, "dependencies": { "chokidar": "^2.1.8" - }, - "engines": { - "node": "<8.10.0" } }, "node_modules/wcwidth": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", "dev": true, "dependencies": { "defaults": "^1.0.3" @@ -15548,19 +17718,10 @@ "npm": ">=3.0.0" } }, - "node_modules/web-ext/node_modules/camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/web-ext/node_modules/cliui": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "integrity": "sha512-0yayqDxWQbqk3ojkYqUKqaAQ6AfNKeKWRNA8kR0WXzAsdHpP4BIaOmMAG87JGuO6qcobyW4GjxHd9PmhEd+T9w==", "dev": true, "dependencies": { "string-width": "^1.0.1", @@ -15568,22 +17729,10 @@ "wrap-ansi": "^2.0.0" } }, - "node_modules/web-ext/node_modules/decamelize": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", - "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", - "dev": true, - "dependencies": { - "xregexp": "4.0.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/web-ext/node_modules/invert-kv": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", - "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "integrity": "sha512-xgs2NH9AE66ucSq4cNG1nhSFghr5l6tdL15Pk+jl46bmmBapgoaY/AacXyaDznAqmGL99TiLSQgO/XazFSKYeQ==", "dev": true, "engines": { "node": ">=0.10.0" @@ -15592,7 +17741,7 @@ "node_modules/web-ext/node_modules/is-fullwidth-code-point": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", "dev": true, "dependencies": { "number-is-nan": "^1.0.0" @@ -15604,7 +17753,7 @@ "node_modules/web-ext/node_modules/lcid": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "integrity": "sha512-YiGkH6EnGrDGqLMITnGjXtGmNtjoXw9SVUzcaos8RBi7Ps0VBylkq+vOcY9QE5poLasPCR849ucFUkl0UzUyOw==", "dev": true, "dependencies": { "invert-kv": "^1.0.0" @@ -15616,13 +17765,14 @@ "node_modules/web-ext/node_modules/minimist": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "integrity": "sha512-miQKw5Hv4NS1Psg2517mV4e4dYNaO3++hjAvLOAzKqZ61rH8NS1SK+vbfBWZ5PY/Me/bEWhUwqMghEW5Fb9T7Q==", "dev": true }, "node_modules/web-ext/node_modules/mkdirp": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "integrity": "sha512-SknJC52obPfGQPnjIkXbmA6+5H15E+fR+E4iR2oQ3zzCLbd7/ONua69R/Gw7AgkTLsRG+r5fzksYwWe1AgTyWA==", + "deprecated": "Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)", "dev": true, "dependencies": { "minimist": "0.0.8" @@ -15646,7 +17796,7 @@ "node_modules/web-ext/node_modules/os-locale": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", - "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "integrity": "sha512-PRT7ZORmwu2MEFt4/fv3Q+mEfN4zetKxufQrkShY2oGvUms9r8otu5HfdyIFHkYXjO7laNsoVGmM2MANfuTA8g==", "dev": true, "dependencies": { "lcid": "^1.0.0" @@ -15682,7 +17832,7 @@ "node_modules/web-ext/node_modules/string-width": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", "dev": true, "dependencies": { "code-point-at": "^1.0.0", @@ -15696,25 +17846,19 @@ "node_modules/web-ext/node_modules/which-module": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", - "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", - "dev": true - }, - "node_modules/web-ext/node_modules/xregexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", - "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", + "integrity": "sha512-F6+WgncZi/mJDrammbTuHe1q0R5hOXv/mBaiNA2TCNT/LTHusX0V+CJnj9XT8ki5ln2UZyyddDgHfCzyrOH7MQ==", "dev": true }, "node_modules/web-ext/node_modules/y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.2.tgz", + "integrity": "sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==", "dev": true }, "node_modules/web-ext/node_modules/yargs": { "version": "6.6.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz", - "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=", + "integrity": "sha512-6/QWTdisjnu5UHUzQGst+UOEuEVwIzFVGBjq3jMTFNs5WJQsH/X6nMURSaScIdF5txylr1Ao9bvbWiKi2yXbwA==", "dev": true, "dependencies": { "camelcase": "^3.0.0", @@ -15735,7 +17879,7 @@ "node_modules/web-ext/node_modules/yargs-parser": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-4.2.1.tgz", - "integrity": "sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=", + "integrity": "sha512-+QQWqC2xeL0N5/TE+TY6OGEqyNRM+g2/r712PDNYgiCdXYCApXf1vzfmDSLBxfGRwV+moTq/V8FnMI24JCm2Yg==", "dev": true, "dependencies": { "camelcase": "^3.0.0" @@ -15744,7 +17888,7 @@ "node_modules/web-ext/node_modules/yargs-parser/node_modules/camelcase": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "integrity": "sha512-4nhGqUkc4BqbBBB4Q6zLuD7lzzrHYrjKGeYaEji/3tFR5VdJu9v+LilhGIVe8wxEJPPOeWo7eg8dwY13TZ1BNg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -15753,7 +17897,7 @@ "node_modules/web-ext/node_modules/yargs/node_modules/camelcase": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "integrity": "sha512-4nhGqUkc4BqbBBB4Q6zLuD7lzzrHYrjKGeYaEji/3tFR5VdJu9v+LilhGIVe8wxEJPPOeWo7eg8dwY13TZ1BNg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -15762,22 +17906,21 @@ "node_modules/web-ext/node_modules/yargs/node_modules/decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/webidl-conversions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", - "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", - "dev": true + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" }, "node_modules/webpack": { - "version": "4.44.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.44.1.tgz", - "integrity": "sha512-4UOGAohv/VGUNQJstzEywwNxqX417FnjZgZJpJQegddzPmTvph37eBIRbRTfdySXzVtJXLJfbMN3mMYhM6GdmQ==", + "version": "4.46.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.46.0.tgz", + "integrity": "sha512-6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q==", "dev": true, "dependencies": { "@webassemblyjs/ast": "1.9.0", @@ -15788,7 +17931,7 @@ "ajv": "^6.10.2", "ajv-keywords": "^3.4.1", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^4.3.0", + "enhanced-resolve": "^4.5.0", "eslint-scope": "^4.0.3", "json-parse-better-errors": "^1.0.2", "loader-runner": "^2.4.0", @@ -15809,6 +17952,18 @@ }, "engines": { "node": ">=6.11.5" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + }, + "webpack-command": { + "optional": true + } } }, "node_modules/webpack-merge": { @@ -15840,9 +17995,9 @@ } }, "node_modules/webpack/node_modules/acorn": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", - "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", + "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -15852,9 +18007,9 @@ } }, "node_modules/webpack/node_modules/anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", "dev": true, "optional": true, "dependencies": { @@ -15866,9 +18021,9 @@ } }, "node_modules/webpack/node_modules/binary-extensions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", - "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", "dev": true, "optional": true, "engines": { @@ -15889,23 +18044,31 @@ } }, "node_modules/webpack/node_modules/chokidar": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.1.tgz", - "integrity": "sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g==", - "dev": true, + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], "optional": true, "dependencies": { - "anymatch": "~3.1.1", + "anymatch": "~3.1.2", "braces": "~3.0.2", - "fsevents": "~2.1.2", - "glob-parent": "~5.1.0", + "glob-parent": "~5.1.2", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", - "readdirp": "~3.4.0" + "readdirp": "~3.6.0" }, "engines": { "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, "node_modules/webpack/node_modules/fill-range": { @@ -15922,10 +18085,11 @@ } }, "node_modules/webpack/node_modules/fsevents": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "dev": true, + "hasInstallScript": true, "optional": true, "os": [ "darwin" @@ -15935,9 +18099,9 @@ } }, "node_modules/webpack/node_modules/glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, "optional": true, "dependencies": { @@ -15960,19 +18124,6 @@ "node": ">=8" } }, - "node_modules/webpack/node_modules/is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, - "optional": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/webpack/node_modules/is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", @@ -15983,6 +18134,44 @@ "node": ">=0.12.0" } }, + "node_modules/webpack/node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/webpack/node_modules/loader-utils": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.1.tgz", + "integrity": "sha512-1Qo97Y2oKaU+Ro2xnDMR26g1BwMT29jNbem1EvcujW2jqt+j5COXyscjM7bLQkM9HaxI7pkWeW7gnI072yMI9Q==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/webpack/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, "node_modules/webpack/node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -15994,9 +18183,9 @@ } }, "node_modules/webpack/node_modules/readdirp": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", - "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, "optional": true, "dependencies": { @@ -16034,9 +18223,9 @@ } }, "node_modules/webpack/node_modules/watchpack": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.4.tgz", - "integrity": "sha512-aWAgTW4MoSJzZPAicljkO1hsi1oKj/RRq/OJQh2PKI2UKL04c2Bs+MBOB+BBABHTXJpf9mCwHN7ANCvYsvY2sg==", + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz", + "integrity": "sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ==", "dev": true, "dependencies": { "graceful-fs": "^4.1.2", @@ -16044,7 +18233,7 @@ }, "optionalDependencies": { "chokidar": "^3.4.1", - "watchpack-chokidar2": "^2.0.0" + "watchpack-chokidar2": "^2.0.1" } }, "node_modules/websocket-driver": { @@ -16071,38 +18260,55 @@ } }, "node_modules/whatwg-url": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.0.0.tgz", - "integrity": "sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ==", - "dev": true, + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", "dependencies": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" } }, "node_modules/when": { "version": "3.7.7", "resolved": "https://registry.npmjs.org/when/-/when-3.7.7.tgz", - "integrity": "sha1-q6A/w7tzbWyIsJHQE9io5ZDYRxg=", + "integrity": "sha512-9lFZp/KHoqH6bPKjbWqa+3Dg/K/r2v0X/3/G2x4DBGchVS2QX2VXL3cZV994WQVnTM1/PD71Az25nAzryEUugw==", "dev": true }, "node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, "dependencies": { "isexe": "^2.0.0" }, "bin": { - "which": "bin/which" + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/which-module": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==", "dev": true }, "node_modules/widest-line": { @@ -16120,7 +18326,7 @@ "node_modules/win-release": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/win-release/-/win-release-1.1.1.tgz", - "integrity": "sha1-X6VeAr58qTTt/BJmVjLoSbcuUgk=", + "integrity": "sha512-iCRnKVvGxOQdsKhcQId2PXV1vV3J/sDPXKA4Oe9+Eti2nb2ESEsYHRYls/UjoUW3bIc5ZDO8dTH50A/5iVN+bw==", "dev": true, "dependencies": { "semver": "^5.0.1" @@ -16129,10 +18335,19 @@ "node": ">=0.10.0" } }, + "node_modules/win-release/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, "node_modules/window-size": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", - "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", + "integrity": "sha512-1pTPQDKTdd61ozlKGNCjhNRd+KPmgLSGa3mZTHoOliaGcESD8G1PXhh7c1fgiPjVbNVfgy2Faw4BI8/m0cC8Mg==", "engines": { "node": ">= 0.8.0" } @@ -16140,18 +18355,29 @@ "node_modules/winreg": { "version": "0.0.12", "resolved": "https://registry.npmjs.org/winreg/-/winreg-0.0.12.tgz", - "integrity": "sha1-BxBVVLoanQiXklHRKUdb/64wBrc=", + "integrity": "sha512-typ/+JRmi7RqP1NanzFULK36vczznSNN8kWVA9vIqXyv8GhghUlwhGp1Xj3Nms1FsPcNnsQrJOR10N58/nQ9hQ==", "dev": true }, "node_modules/with": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/with/-/with-5.1.1.tgz", - "integrity": "sha1-+k2qktrzLE6pTtRTyB8EaGtXXf4=", + "integrity": "sha512-uAnSsFGfSpF6DNhBXStvlZILfHJfJu4eUkfbRGk94kGO1Ta7bg6FwfvoOhhyHAJuFbCw+0xk4uJ3u57jLvlCJg==", "dependencies": { "acorn": "^3.1.0", "acorn-globals": "^3.0.0" } }, + "node_modules/with/node_modules/acorn": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", + "integrity": "sha512-OLUyIIZ7mF5oaAUT1w0TFqQS81q3saT46x8t7ukpPjMNk+nbs4ZHhs7ToV8EWnLYLepjETXd4XaCE4uxkMeqUw==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/word-wrap": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", @@ -16164,7 +18390,7 @@ "node_modules/wordwrap": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", + "integrity": "sha512-xSBsCeh+g+dinoBv3GAOWM4LcVVO68wLXRanibtBSdUvkGWQRGeE9P7IwU9EmDDi4jA6L44lz15CGMwdw9N5+Q==", "engines": { "node": ">=0.4.0" } @@ -16181,7 +18407,7 @@ "node_modules/wrap-ansi": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "integrity": "sha512-vAaEaDM946gbNpH5pLVNR+vX2ht6n0Bt3GXwVB1AuAqZosOvHNF3P7wDnh8KLkSqgUh0uh77le7Owgoz+Z9XBw==", "dev": true, "dependencies": { "string-width": "^1.0.1", @@ -16194,7 +18420,7 @@ "node_modules/wrap-ansi/node_modules/is-fullwidth-code-point": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", "dev": true, "dependencies": { "number-is-nan": "^1.0.0" @@ -16206,7 +18432,7 @@ "node_modules/wrap-ansi/node_modules/string-width": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", "dev": true, "dependencies": { "code-point-at": "^1.0.0", @@ -16220,12 +18446,12 @@ "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, "node_modules/write": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz", - "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", + "integrity": "sha512-CJ17OoULEKXpA5pef3qLj5AxTJ6mSt7g84he2WIskKwqFO4T97d5V7Tadl0DYDk7qyUOQD5WlUlOMChaYrhxeA==", "dev": true, "dependencies": { "mkdirp": "^0.5.1" @@ -16245,10 +18471,22 @@ "signal-exit": "^3.0.2" } }, + "node_modules/write/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, "node_modules/ws": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz", - "integrity": "sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==", + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz", + "integrity": "sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==", "dev": true, "dependencies": { "async-limiter": "~1.0.0" @@ -16257,7 +18495,7 @@ "node_modules/xdg-basedir": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", - "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", + "integrity": "sha512-1Dly4xqlulvPD3fZUQJLY+FUIeqN3N2MM3uqe4rCJftAvOjFa3jFGfctOgluGx4ahPbUCsZkmJILiP0Vi4T6lQ==", "dev": true, "engines": { "node": ">=4" @@ -16286,12 +18524,6 @@ "node": ">=4.0.0" } }, - "node_modules/xml2js/node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - }, "node_modules/xmlbuilder": { "version": "11.0.1", "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", @@ -16304,20 +18536,18 @@ "node_modules/xmldom": { "version": "0.1.27", "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.27.tgz", - "integrity": "sha1-1QH5ezvbQDr4757MIFcxh6rawOk=", + "integrity": "sha512-7WpJBYwyhvsddFJA51SOIU0Be9W44sbGGjc6Z3ly8Wx/Wl7nriMPZ5xf6Np9ASlJ6gACfXcTLukm4DtX372lFw==", + "deprecated": "Deprecated due to CVE-2021-21366 resolved in 0.5.0", "dev": true, "engines": { "node": ">=0.1" } }, "node_modules/xregexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz", - "integrity": "sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM=", - "dev": true, - "engines": { - "node": "*" - } + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", + "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", + "dev": true }, "node_modules/xtend": { "version": "4.0.2", @@ -16329,21 +18559,21 @@ } }, "node_modules/y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", "dev": true }, "node_modules/yallist": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", "dev": true }, "node_modules/yargs": { "version": "3.10.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", - "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", + "integrity": "sha512-QFzUah88GAGy9lyDKGBqZdkYApt63rCXYBGYnEP4xDJPXNqXXnBDACnbrXnViV6jRSqAePwrATi2i8mfYm4L1A==", "dependencies": { "camelcase": "^1.0.2", "cliui": "^2.1.0", @@ -16352,28 +18582,34 @@ } }, "node_modules/yargs-parser": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", - "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", "dev": true, "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" + "camelcase": "^4.1.0" } }, - "node_modules/yargs-parser/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, + "node_modules/yargs/node_modules/camelcase": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", + "integrity": "sha512-wzLkDa4K/mzI1OSITC+DUyjgIl/ETNHE9QvYgy6J6Jvqyyz4C0Xfd+lQhb19sX2jMpZV4IssUn0VDVmglV+s4g==", "engines": { - "node": ">=6" + "node": ">=0.10.0" + } + }, + "node_modules/yargs/node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "engines": { + "node": ">=0.10.0" } }, "node_modules/yauzl": { "version": "2.10.0", "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", "dev": true, "dependencies": { "buffer-crc32": "~0.2.3", @@ -16383,7 +18619,7 @@ "node_modules/zip-dir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/zip-dir/-/zip-dir-1.0.2.tgz", - "integrity": "sha1-JT+QeurWKiGs2HIdi4gDKyQRwFE=", + "integrity": "sha512-OZ4WThDcFqvamrq4e2lSdz+q6a9fnD55ktBzsfQ95R0YrnZDd7Cz1gTI8OMveqlASz8PXVN0av8Bi7Ky+uJ+SA==", "dev": true, "dependencies": { "async": "^1.5.2", @@ -16391,9 +18627,9 @@ } }, "node_modules/zip-dir/node_modules/jszip": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-2.6.1.tgz", - "integrity": "sha1-uI86ey5noqBIFSmCx6N1bZxIKPA=", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-2.7.0.tgz", + "integrity": "sha512-JIsRKRVC3gTRo2vM4Wy9WBC3TRcfnIZU8k65Phi3izkvPH975FowRYtKGT6PxevA0XnJ/yO8b0QwV0ydVyQwfw==", "dev": true, "dependencies": { "pako": "~1.0.2" @@ -16402,7 +18638,7 @@ "node_modules/zip-stream": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-1.2.0.tgz", - "integrity": "sha1-qLxF9MG0lpnGuQGYuqyqzbzUugQ=", + "integrity": "sha512-2olrDUuPM4NvRIgGPhvrp84f7/HmWR6RiQrgwFF2VctmnssFiogtYL3DcA8Vl2bsSmju79sVXe38TsII7JleUg==", "dev": true, "dependencies": { "archiver-utils": "^1.3.0", @@ -16416,472 +18652,518 @@ } }, "dependencies": { - "@babel/code-frame": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", - "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", + "@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", "dev": true, "requires": { - "@babel/highlight": "^7.10.4" + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" } }, - "@babel/compat-data": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.11.0.tgz", - "integrity": "sha512-TPSvJfv73ng0pfnEOh17bYMPQbI95+nGWc71Ss4vZdRBHTDqmM9Z8ZV4rYz8Ks7sfzc95n30k6ODIq5UGnXcYQ==", + "@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", "dev": true, "requires": { - "browserslist": "^4.12.0", - "invariant": "^2.2.4", - "semver": "^5.5.0" + "@babel/highlight": "^7.18.6" } }, + "@babel/compat-data": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.1.tgz", + "integrity": "sha512-EWZ4mE2diW3QALKvDMiXnbZpRvlj+nayZ112nK93SnhqOtpdsbVD4W+2tEoT3YNBAG9RBR0ISY758ZkOgsn6pQ==", + "dev": true + }, "@babel/core": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.11.1.tgz", - "integrity": "sha512-XqF7F6FWQdKGGWAzGELL+aCO1p+lRY5Tj5/tbT3St1G8NaH70jhhDIKknIZaDans0OQBG5wRAldROLHSt44BgQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.11.0", - "@babel/helper-module-transforms": "^7.11.0", - "@babel/helpers": "^7.10.4", - "@babel/parser": "^7.11.1", - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.11.0", - "@babel/types": "^7.11.0", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.2.tgz", + "integrity": "sha512-w7DbG8DtMrJcFOi4VrLm+8QM4az8Mo+PuLBKLp2zrYRCow8W/f9xiXm5sN53C8HksCyDQwCKha9JiDoIyPjT2g==", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.2", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-module-transforms": "^7.20.2", + "@babel/helpers": "^7.20.1", + "@babel/parser": "^7.20.2", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.2", "convert-source-map": "^1.7.0", "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", - "json5": "^2.1.2", - "lodash": "^4.17.19", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" + } + }, + "@babel/generator": { + "version": "7.20.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.4.tgz", + "integrity": "sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==", + "dev": true, + "requires": { + "@babel/types": "^7.20.2", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" }, "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", "dev": true, "requires": { - "ms": "^2.1.1" + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true } } }, - "@babel/generator": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.11.0.tgz", - "integrity": "sha512-fEm3Uzw7Mc9Xi//qU20cBKatTfs2aOtKqmvy/Vm7RkJEGFQ4xc9myCfbXxqK//ZS8MR/ciOHw6meGASJuKmDfQ==", - "dev": true, - "requires": { - "@babel/types": "^7.11.0", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - } - }, "@babel/helper-annotate-as-pure": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.10.4.tgz", - "integrity": "sha512-XQlqKQP4vXFB7BN8fEEerrmYvHp3fK/rBkRFz9jaJbzK0B1DSfej9Kc7ZzE8Z/OnId1jpJdNAZ3BFQjWG68rcA==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", + "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", "dev": true, "requires": { - "@babel/types": "^7.10.4" + "@babel/types": "^7.18.6" } }, "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.10.4.tgz", - "integrity": "sha512-L0zGlFrGWZK4PbT8AszSfLTM5sDU1+Az/En9VrdT8/LmEiJt4zXt+Jve9DCAnQcbqDhCI+29y/L93mrDzddCcg==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", + "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", "dev": true, "requires": { - "@babel/helper-explode-assignable-expression": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/helper-explode-assignable-expression": "^7.18.6", + "@babel/types": "^7.18.9" } }, "@babel/helper-compilation-targets": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.10.4.tgz", - "integrity": "sha512-a3rYhlsGV0UHNDvrtOXBg8/OpfV0OKTkxKPzIplS1zpx7CygDcWWxckxZeDd3gzPzC4kUT0A4nVFDK0wGMh4MQ==", + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz", + "integrity": "sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==", "dev": true, "requires": { - "@babel/compat-data": "^7.10.4", - "browserslist": "^4.12.0", - "invariant": "^2.2.4", - "levenary": "^1.1.1", - "semver": "^5.5.0" + "@babel/compat-data": "^7.20.0", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", + "semver": "^6.3.0" } }, "@babel/helper-create-class-features-plugin": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.10.5.tgz", - "integrity": "sha512-0nkdeijB7VlZoLT3r/mY3bUkw3T8WG/hNw+FATs/6+pG2039IJWjTYL0VTISqsNHMUTEnwbVnc89WIJX9Qed0A==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.20.2.tgz", + "integrity": "sha512-k22GoYRAHPYr9I+Gvy2ZQlAe5mGy8BqWst2wRt8cwIufWTxrsVshhIBvYNqC80N0GSFWTsqRVexOtfzlgOEDvA==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-member-expression-to-functions": "^7.10.5", - "@babel/helper-optimise-call-expression": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.10.4" + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-member-expression-to-functions": "^7.18.9", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-replace-supers": "^7.19.1", + "@babel/helper-split-export-declaration": "^7.18.6" } }, "@babel/helper-create-regexp-features-plugin": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.10.4.tgz", - "integrity": "sha512-2/hu58IEPKeoLF45DBwx3XFqsbCXmkdAay4spVr2x0jYgRxrSNp+ePwvSsy9g6YSaNDcKIQVPXk1Ov8S2edk2g==", + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.19.0.tgz", + "integrity": "sha512-htnV+mHX32DF81amCDrwIDr8nrp1PTm+3wfBN9/v8QJOLEioOCOG7qNyq0nHeFiWbT3Eb7gsPwEmV64UCQ1jzw==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.10.4", - "@babel/helper-regex": "^7.10.4", - "regexpu-core": "^4.7.0" + "@babel/helper-annotate-as-pure": "^7.18.6", + "regexpu-core": "^5.1.0" } }, - "@babel/helper-define-map": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.10.5.tgz", - "integrity": "sha512-fMw4kgFB720aQFXSVaXr79pjjcW5puTCM16+rECJ/plGS+zByelE8l9nCpV1GibxTnFVmUuYG9U8wYfQHdzOEQ==", + "@babel/helper-define-polyfill-provider": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", + "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.10.4", - "@babel/types": "^7.10.5", - "lodash": "^4.17.19" + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" } }, + "@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "dev": true + }, "@babel/helper-explode-assignable-expression": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.10.4.tgz", - "integrity": "sha512-4K71RyRQNPRrR85sr5QY4X3VwG4wtVoXZB9+L3r1Gp38DhELyHCtovqydRi7c1Ovb17eRGiQ/FD5s8JdU0Uy5A==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", + "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", "dev": true, "requires": { - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/types": "^7.18.6" } }, "@babel/helper-function-name": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz", - "integrity": "sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz", - "integrity": "sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A==", + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", + "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", "dev": true, "requires": { - "@babel/types": "^7.10.4" + "@babel/template": "^7.18.10", + "@babel/types": "^7.19.0" } }, "@babel/helper-hoist-variables": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.10.4.tgz", - "integrity": "sha512-wljroF5PgCk2juF69kanHVs6vrLwIPNp6DLD+Lrl3hoQ3PpPPikaDRNFA+0t81NOoMt2DL6WW/mdU8k4k6ZzuA==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", "dev": true, "requires": { - "@babel/types": "^7.10.4" + "@babel/types": "^7.18.6" } }, "@babel/helper-member-expression-to-functions": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.11.0.tgz", - "integrity": "sha512-JbFlKHFntRV5qKw3YC0CvQnDZ4XMwgzzBbld7Ly4Mj4cbFy3KywcR8NtNctRToMWJOVvLINJv525Gd6wwVEx/Q==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz", + "integrity": "sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg==", "dev": true, "requires": { - "@babel/types": "^7.11.0" + "@babel/types": "^7.18.9" } }, "@babel/helper-module-imports": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.10.4.tgz", - "integrity": "sha512-nEQJHqYavI217oD9+s5MUBzk6x1IlvoS9WTPfgG43CbMEeStE0v+r+TucWdx8KFGowPGvyOkDT9+7DHedIDnVw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", "dev": true, "requires": { - "@babel/types": "^7.10.4" + "@babel/types": "^7.18.6" } }, "@babel/helper-module-transforms": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.11.0.tgz", - "integrity": "sha512-02EVu8COMuTRO1TAzdMtpBPbe6aQ1w/8fePD2YgQmxZU4gpNWaL9gK3Jp7dxlkUlUCJOTaSeA+Hrm1BRQwqIhg==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz", + "integrity": "sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4", - "@babel/helper-simple-access": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/template": "^7.10.4", - "@babel/types": "^7.11.0", - "lodash": "^4.17.19" + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.2" } }, "@babel/helper-optimise-call-expression": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.4.tgz", - "integrity": "sha512-n3UGKY4VXwXThEiKrgRAoVPBMqeoPgHVqiHZOanAJCG9nQUL2pLRQirUzl0ioKclHGpGqRgIOkgcIJaIWLpygg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", + "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", "dev": true, "requires": { - "@babel/types": "^7.10.4" + "@babel/types": "^7.18.6" } }, "@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", "dev": true }, - "@babel/helper-regex": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.10.5.tgz", - "integrity": "sha512-68kdUAzDrljqBrio7DYAEgCoJHxppJOERHOgOrDN7WjOzP0ZQ1LsSDRXcemzVZaLvjaJsJEESb6qt+znNuENDg==", - "dev": true, - "requires": { - "lodash": "^4.17.19" - } - }, "@babel/helper-remap-async-to-generator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.10.4.tgz", - "integrity": "sha512-86Lsr6NNw3qTNl+TBcF1oRZMaVzJtbWTyTko+CQL/tvNvcGYEFKbLXDPxtW0HKk3McNOk4KzY55itGWCAGK5tg==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", + "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.10.4", - "@babel/helper-wrap-function": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-wrap-function": "^7.18.9", + "@babel/types": "^7.18.9" } }, "@babel/helper-replace-supers": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.10.4.tgz", - "integrity": "sha512-sPxZfFXocEymYTdVK1UNmFPBN+Hv5mJkLPsYWwGBxZAxaWfFu+xqp7b6qWD0yjNuNL2VKc6L5M18tOXUP7NU0A==", + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.19.1.tgz", + "integrity": "sha512-T7ahH7wV0Hfs46SFh5Jz3s0B6+o8g3c+7TMxu7xKfmHikg7EAZ3I2Qk9LFhjxXq8sL7UkP5JflezNwoZa8WvWw==", "dev": true, "requires": { - "@babel/helper-member-expression-to-functions": "^7.10.4", - "@babel/helper-optimise-call-expression": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-member-expression-to-functions": "^7.18.9", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/traverse": "^7.19.1", + "@babel/types": "^7.19.0" } }, "@babel/helper-simple-access": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.10.4.tgz", - "integrity": "sha512-0fMy72ej/VEvF8ULmX6yb5MtHG4uH4Dbd6I/aHDb/JVg0bbivwt9Wg+h3uMvX+QSFtwr5MeItvazbrc4jtRAXw==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", "dev": true, "requires": { - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/types": "^7.20.2" } }, "@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.11.0.tgz", - "integrity": "sha512-0XIdiQln4Elglgjbwo9wuJpL/K7AGCY26kmEt0+pRP0TAj4jjyNq1MjoRvikrTVqKcx4Gysxt4cXvVFXP/JO2Q==", + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", + "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", "dev": true, "requires": { - "@babel/types": "^7.11.0" + "@babel/types": "^7.20.0" } }, "@babel/helper-split-export-declaration": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.11.0.tgz", - "integrity": "sha512-74Vejvp6mHkGE+m+k5vHY93FX2cAtrw1zXrZXRlG4l410Nm9PxfEiVTn1PjDPV5SnmieiueY4AFg2xqhNFuuZg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", "dev": true, "requires": { - "@babel/types": "^7.11.0" + "@babel/types": "^7.18.6" } }, + "@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "dev": true + }, "@babel/helper-validator-identifier": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz", - "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==", + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "dev": true + }, + "@babel/helper-validator-option": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", + "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", "dev": true }, "@babel/helper-wrap-function": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.10.4.tgz", - "integrity": "sha512-6py45WvEF0MhiLrdxtRjKjufwLL1/ob2qDJgg5JgNdojBAZSAKnAjkyOCNug6n+OBl4VW76XjvgSFTdaMcW0Ug==", + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.19.0.tgz", + "integrity": "sha512-txX8aN8CZyYGTwcLhlk87KRqncAzhh5TpQamZUa0/u3an36NtDpUP6bQgBCBcLeBs09R/OwQu3OjK0k/HwfNDg==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/helper-function-name": "^7.19.0", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.19.0", + "@babel/types": "^7.19.0" } }, "@babel/helpers": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.10.4.tgz", - "integrity": "sha512-L2gX/XeUONeEbI78dXSrJzGdz4GQ+ZTA/aazfUsFaWjSe95kiCuOZ5HsXvkiw3iwF+mFHSRUfJU8t6YavocdXA==", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.1.tgz", + "integrity": "sha512-J77mUVaDTUJFZ5BpP6mMn6OIl3rEWymk2ZxDBQJUG3P+PbmyMcF3bYWvz0ma69Af1oobDqT/iAsvzhB58xhQUg==", "dev": true, "requires": { - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.0" } }, "@babel/highlight": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", - "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.10.4", + "@babel/helper-validator-identifier": "^7.18.6", "chalk": "^2.0.0", "js-tokens": "^4.0.0" } }, "@babel/parser": { - "version": "7.11.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", + "version": "7.20.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.3.tgz", + "integrity": "sha512-OP/s5a94frIPXwjzEcv5S/tpQfc6XhxYUnmWpgdqMWGgYCuErA3SzozaRAMQgSZWKeTJxht9aWAkUY+0UzvOFg==", "dev": true }, + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", + "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.18.9.tgz", + "integrity": "sha512-AHrP9jadvH7qlOj6PINbgSuphjQUAK7AOT7DPjBo9EHoLhQTnnK5u45e1Hd4DbSQEO9nqPWtQ89r+XEOWFScKg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", + "@babel/plugin-proposal-optional-chaining": "^7.18.9" + } + }, "@babel/plugin-proposal-async-generator-functions": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.10.5.tgz", - "integrity": "sha512-cNMCVezQbrRGvXJwm9fu/1sJj9bHdGAgKodZdLqOQIpfoH3raqmRPBM17+lh7CzhiKRRBrGtZL9WcjxSoGYUSg==", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.1.tgz", + "integrity": "sha512-Gh5rchzSwE4kC+o/6T8waD0WHEQIsDmjltY8WnWRXHUdH8axZhuH86Ov9M72YhJfDrZseQwuuWaaIT/TmePp3g==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-remap-async-to-generator": "^7.10.4", - "@babel/plugin-syntax-async-generators": "^7.8.0" + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" } }, "@babel/plugin-proposal-class-properties": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.10.4.tgz", - "integrity": "sha512-vhwkEROxzcHGNu2mzUC0OFFNXdZ4M23ib8aRRcJSsW8BZK9pQMD7QB7csl97NBbgGZO7ZyHUyKDnxzOaP4IrCg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", "dev": true, "requires": { - "@babel/helper-create-class-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-proposal-class-static-block": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.6.tgz", + "integrity": "sha512-+I3oIiNxrCpup3Gi8n5IGMwj0gOCAjcJUSQEcotNnCCPMEnixawOQ+KeJPlgfjzx+FKQ1QSyZOWe7wmoJp7vhw==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-class-static-block": "^7.14.5" } }, "@babel/plugin-proposal-dynamic-import": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.10.4.tgz", - "integrity": "sha512-up6oID1LeidOOASNXgv/CFbgBqTuKJ0cJjz6An5tWD+NVBNlp3VNSBxv2ZdU7SYl3NxJC7agAQDApZusV6uFwQ==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", + "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-dynamic-import": "^7.8.0" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" } }, "@babel/plugin-proposal-export-namespace-from": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.10.4.tgz", - "integrity": "sha512-aNdf0LY6/3WXkhh0Fdb6Zk9j1NMD8ovj3F6r0+3j837Pn1S1PdNtcwJ5EG9WkVPNHPxyJDaxMaAOVq4eki0qbg==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", + "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-plugin-utils": "^7.18.9", "@babel/plugin-syntax-export-namespace-from": "^7.8.3" } }, "@babel/plugin-proposal-json-strings": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.10.4.tgz", - "integrity": "sha512-fCL7QF0Jo83uy1K0P2YXrfX11tj3lkpN7l4dMv9Y9VkowkhkQDwFHFd8IiwyK5MZjE8UpbgokkgtcReH88Abaw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", + "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-json-strings": "^7.8.0" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-json-strings": "^7.8.3" } }, "@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.11.0.tgz", - "integrity": "sha512-/f8p4z+Auz0Uaf+i8Ekf1iM7wUNLcViFUGiPxKeXvxTSl63B875YPiVdUDdem7hREcI0E0kSpEhS8tF5RphK7Q==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.18.9.tgz", + "integrity": "sha512-128YbMpjCrP35IOExw2Fq+x55LMP42DzhOhX2aNNIdI9avSWl2PI0yuBWarr3RYpZBSPtabfadkH2yeRiMD61Q==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-plugin-utils": "^7.18.9", "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" } }, "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.10.4.tgz", - "integrity": "sha512-wq5n1M3ZUlHl9sqT2ok1T2/MTt6AXE0e1Lz4WzWBr95LsAZ5qDXe4KnFuauYyEyLiohvXFMdbsOTMyLZs91Zlw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", + "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" } }, "@babel/plugin-proposal-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.10.4.tgz", - "integrity": "sha512-73/G7QoRoeNkLZFxsoCCvlg4ezE4eM+57PnOqgaPOozd5myfj7p0muD1mRVJvbUWbOzD+q3No2bWbaKy+DJ8DA==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", + "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4", + "@babel/helper-plugin-utils": "^7.18.6", "@babel/plugin-syntax-numeric-separator": "^7.10.4" } }, "@babel/plugin-proposal-object-rest-spread": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.11.0.tgz", - "integrity": "sha512-wzch41N4yztwoRw0ak+37wxwJM2oiIiy6huGCoqkvSTA9acYWcPfn9Y4aJqmFFJ70KTJUu29f3DQ43uJ9HXzEA==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.2.tgz", + "integrity": "sha512-Ks6uej9WFK+fvIMesSqbAto5dD8Dz4VuuFvGJFKgIGSkJuRGcrwGECPA1fDgQK3/DbExBJpEkTeYeB8geIFCSQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-transform-parameters": "^7.10.4" + "@babel/compat-data": "^7.20.1", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.1" } }, "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.10.4.tgz", - "integrity": "sha512-LflT6nPh+GK2MnFiKDyLiqSqVHkQnVf7hdoAvyTnnKj9xB3docGRsdPuxp6qqqW19ifK3xgc9U5/FwrSaCNX5g==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", + "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" } }, "@babel/plugin-proposal-optional-chaining": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.11.0.tgz", - "integrity": "sha512-v9fZIu3Y8562RRwhm1BbMRxtqZNFmFA2EG+pT2diuU8PT3H6T/KXoZ54KgYisfOFZHV6PfvAiBIZ9Rcz+/JCxA==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.18.9.tgz", + "integrity": "sha512-v5nwt4IqBXihxGsW2QmCWMDS3B3bzGIk/EQVZz2ei7f3NJl8NzAJVvUmpDW5q1CRNY+Beb/k58UAH1Km1N411w==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-skip-transparent-expression-wrappers": "^7.11.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.0" + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" } }, "@babel/plugin-proposal-private-methods": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.10.4.tgz", - "integrity": "sha512-wh5GJleuI8k3emgTg5KkJK6kHNsGEr0uBTDBuQUBJwckk9xs1ez79ioheEVVxMLyPscB0LfkbVHslQqIzWV6Bw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", + "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", "dev": true, "requires": { - "@babel/helper-create-class-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-proposal-private-property-in-object": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.18.6.tgz", + "integrity": "sha512-9Rysx7FOctvT5ouj5JODjAFAkgGoudQuLPamZb0v1TGLpapdNaftzifU8NTWQm0IRjqoYypdrSmyWgkocDQ8Dw==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" } }, "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.10.4.tgz", - "integrity": "sha512-H+3fOgPnEXFL9zGYtKQe4IDOPKYlZdF1kqFDQRRb8PK4B8af1vAGK04tF5iQAAsui+mHNBQSAtd2/ndEDe9wuA==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-syntax-async-generators": { @@ -16894,12 +19176,21 @@ } }, "@babel/plugin-syntax-class-properties": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.10.4.tgz", - "integrity": "sha512-GCSBF7iUle6rNugfURwNmCGG3Z/2+opxAMLs1nND4bhEG5PuxTIggDBoeYYSujAlLtsupzOHYJQgPS3pivwXIA==", + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.12.13" + } + }, + "@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-syntax-dynamic-import": { @@ -16920,6 +19211,15 @@ "@babel/helper-plugin-utils": "^7.8.3" } }, + "@babel/plugin-syntax-import-assertions": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", + "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.19.0" + } + }, "@babel/plugin-syntax-json-strings": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", @@ -16983,334 +19283,342 @@ "@babel/helper-plugin-utils": "^7.8.0" } }, + "@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, "@babel/plugin-syntax-top-level-await": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.10.4.tgz", - "integrity": "sha512-ni1brg4lXEmWyafKr0ccFWkJG0CeMt4WV1oyeBW6EFObF4oOHclbkj5cARxAPQyAQ2UTuplJyK4nfkXIMMFvsQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-arrow-functions": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.10.4.tgz", - "integrity": "sha512-9J/oD1jV0ZCBcgnoFWFq1vJd4msoKb/TCpGNFyyLt0zABdcvgK3aYikZ8HjzB14c26bc7E3Q1yugpwGy2aTPNA==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz", + "integrity": "sha512-9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-async-to-generator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.10.4.tgz", - "integrity": "sha512-F6nREOan7J5UXTLsDsZG3DXmZSVofr2tGNwfdrVwkDWHfQckbQXnXSPfD7iO+c/2HGqycwyLST3DnZ16n+cBJQ==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz", + "integrity": "sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-remap-async-to-generator": "^7.10.4" + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-remap-async-to-generator": "^7.18.6" } }, "@babel/plugin-transform-block-scoped-functions": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.10.4.tgz", - "integrity": "sha512-WzXDarQXYYfjaV1szJvN3AD7rZgZzC1JtjJZ8dMHUyiK8mxPRahynp14zzNjU3VkPqPsO38CzxiWO1c9ARZ8JA==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", + "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-block-scoping": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.11.1.tgz", - "integrity": "sha512-00dYeDE0EVEHuuM+26+0w/SCL0BH2Qy7LwHuI4Hi4MH5gkC8/AqMN5uWFJIsoXZrAphiMm1iXzBw6L2T+eA0ew==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.20.2.tgz", + "integrity": "sha512-y5V15+04ry69OV2wULmwhEA6jwSWXO1TwAtIwiPXcvHcoOQUqpyMVd2bDsQJMW8AurjulIyUV8kDqtjSwHy1uQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.20.2" } }, "@babel/plugin-transform-classes": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.10.4.tgz", - "integrity": "sha512-2oZ9qLjt161dn1ZE0Ms66xBncQH4In8Sqw1YWgBUZuGVJJS5c0OFZXL6dP2MRHrkU/eKhWg8CzFJhRQl50rQxA==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.10.4", - "@babel/helper-define-map": "^7.10.4", - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-optimise-call-expression": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.10.4", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.20.2.tgz", + "integrity": "sha512-9rbPp0lCVVoagvtEyQKSo5L8oo0nQS/iif+lwlAz29MccX2642vWDlSZK+2T2buxbopotId2ld7zZAzRfz9j1g==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-replace-supers": "^7.19.1", + "@babel/helper-split-export-declaration": "^7.18.6", "globals": "^11.1.0" } }, "@babel/plugin-transform-computed-properties": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.10.4.tgz", - "integrity": "sha512-JFwVDXcP/hM/TbyzGq3l/XWGut7p46Z3QvqFMXTfk6/09m7xZHJUN9xHfsv7vqqD4YnfI5ueYdSJtXqqBLyjBw==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.18.9.tgz", + "integrity": "sha512-+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.9" } }, "@babel/plugin-transform-destructuring": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.10.4.tgz", - "integrity": "sha512-+WmfvyfsyF603iPa6825mq6Qrb7uLjTOsa3XOFzlYcYDHSS4QmpOWOL0NNBY5qMbvrcf3tq0Cw+v4lxswOBpgA==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.2.tgz", + "integrity": "sha512-mENM+ZHrvEgxLTBXUiQ621rRXZes3KWUv6NdQlrnr1TkWVw+hUjQBZuP2X32qKlrlG2BzgR95gkuCRSkJl8vIw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.20.2" } }, "@babel/plugin-transform-dotall-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.10.4.tgz", - "integrity": "sha512-ZEAVvUTCMlMFAbASYSVQoxIbHm2OkG2MseW6bV2JjIygOjdVv8tuxrCTzj1+Rynh7ODb8GivUy7dzEXzEhuPaA==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", + "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-duplicate-keys": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.10.4.tgz", - "integrity": "sha512-GL0/fJnmgMclHiBTTWXNlYjYsA7rDrtsazHG6mglaGSTh0KsrW04qml+Bbz9FL0LcJIRwBWL5ZqlNHKTkU3xAA==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", + "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.9" } }, "@babel/plugin-transform-exponentiation-operator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.10.4.tgz", - "integrity": "sha512-S5HgLVgkBcRdyQAHbKj+7KyuWx8C6t5oETmUuwz1pt3WTWJhsUV0WIIXuVvfXMxl/QQyHKlSCNNtaIamG8fysw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", + "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", "dev": true, "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-for-of": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.10.4.tgz", - "integrity": "sha512-ItdQfAzu9AlEqmusA/65TqJ79eRcgGmpPPFvBnGILXZH975G0LNjP1yjHvGgfuCxqrPPueXOPe+FsvxmxKiHHQ==", + "version": "7.18.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz", + "integrity": "sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-function-name": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.10.4.tgz", - "integrity": "sha512-OcDCq2y5+E0dVD5MagT5X+yTRbcvFjDI2ZVAottGH6tzqjx/LKpgkUepu3hp/u4tZBzxxpNGwLsAvGBvQ2mJzg==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", + "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-function-name": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9" } }, "@babel/plugin-transform-literals": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.10.4.tgz", - "integrity": "sha512-Xd/dFSTEVuUWnyZiMu76/InZxLTYilOSr1UlHV+p115Z/Le2Fi1KXkJUYz0b42DfndostYlPub3m8ZTQlMaiqQ==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", + "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.9" } }, "@babel/plugin-transform-member-expression-literals": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.10.4.tgz", - "integrity": "sha512-0bFOvPyAoTBhtcJLr9VcwZqKmSjFml1iVxvPL0ReomGU53CX53HsM4h2SzckNdkQcHox1bpAqzxBI1Y09LlBSw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", + "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-modules-amd": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.10.5.tgz", - "integrity": "sha512-elm5uruNio7CTLFItVC/rIzKLfQ17+fX7EVz5W0TMgIHFo1zY0Ozzx+lgwhL4plzl8OzVn6Qasx5DeEFyoNiRw==", + "version": "7.19.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.19.6.tgz", + "integrity": "sha512-uG3od2mXvAtIFQIh0xrpLH6r5fpSQN04gIVovl+ODLdUMANokxQLZnPBHcjmv3GxRjnqwLuHvppjjcelqUFZvg==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.10.5", - "@babel/helper-plugin-utils": "^7.10.4", - "babel-plugin-dynamic-import-node": "^2.3.3" + "@babel/helper-module-transforms": "^7.19.6", + "@babel/helper-plugin-utils": "^7.19.0" } }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.10.4.tgz", - "integrity": "sha512-Xj7Uq5o80HDLlW64rVfDBhao6OX89HKUmb+9vWYaLXBZOma4gA6tw4Ni1O5qVDoZWUV0fxMYA0aYzOawz0l+1w==", + "version": "7.19.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.19.6.tgz", + "integrity": "sha512-8PIa1ym4XRTKuSsOUXqDG0YaOlEuTVvHMe5JCfgBMOtHvJKw/4NGovEGN33viISshG/rZNVrACiBmPQLvWN8xQ==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-simple-access": "^7.10.4", - "babel-plugin-dynamic-import-node": "^2.3.3" + "@babel/helper-module-transforms": "^7.19.6", + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/helper-simple-access": "^7.19.4" } }, "@babel/plugin-transform-modules-systemjs": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.10.5.tgz", - "integrity": "sha512-f4RLO/OL14/FP1AEbcsWMzpbUz6tssRaeQg11RH1BP/XnPpRoVwgeYViMFacnkaw4k4wjRSjn3ip1Uw9TaXuMw==", + "version": "7.19.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.19.6.tgz", + "integrity": "sha512-fqGLBepcc3kErfR9R3DnVpURmckXP7gj7bAlrTQyBxrigFqszZCkFkcoxzCp2v32XmwXLvbw+8Yq9/b+QqksjQ==", "dev": true, "requires": { - "@babel/helper-hoist-variables": "^7.10.4", - "@babel/helper-module-transforms": "^7.10.5", - "@babel/helper-plugin-utils": "^7.10.4", - "babel-plugin-dynamic-import-node": "^2.3.3" + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-module-transforms": "^7.19.6", + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/helper-validator-identifier": "^7.19.1" } }, "@babel/plugin-transform-modules-umd": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.10.4.tgz", - "integrity": "sha512-mohW5q3uAEt8T45YT7Qc5ws6mWgJAaL/8BfWD9Dodo1A3RKWli8wTS+WiQ/knF+tXlPirW/1/MqzzGfCExKECA==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", + "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-module-transforms": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.10.4.tgz", - "integrity": "sha512-V6LuOnD31kTkxQPhKiVYzYC/Jgdq53irJC/xBSmqcNcqFGV+PER4l6rU5SH2Vl7bH9mLDHcc0+l9HUOe4RNGKA==", + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.19.1.tgz", + "integrity": "sha512-oWk9l9WItWBQYS4FgXD4Uyy5kq898lvkXpXQxoJEY1RnvPk4R/Dvu2ebXU9q8lP+rlMwUQTFf2Ok6d78ODa0kw==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.10.4" + "@babel/helper-create-regexp-features-plugin": "^7.19.0", + "@babel/helper-plugin-utils": "^7.19.0" } }, "@babel/plugin-transform-new-target": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.10.4.tgz", - "integrity": "sha512-YXwWUDAH/J6dlfwqlWsztI2Puz1NtUAubXhOPLQ5gjR/qmQ5U96DY4FQO8At33JN4XPBhrjB8I4eMmLROjjLjw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", + "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-object-super": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.10.4.tgz", - "integrity": "sha512-5iTw0JkdRdJvr7sY0vHqTpnruUpTea32JHmq/atIWqsnNussbRzjEDyWep8UNztt1B5IusBYg8Irb0bLbiEBCQ==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", + "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-replace-supers": "^7.18.6" } }, "@babel/plugin-transform-parameters": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.10.5.tgz", - "integrity": "sha512-xPHwUj5RdFV8l1wuYiu5S9fqWGM2DrYc24TMvUiRrPVm+SM3XeqU9BcokQX/kEUe+p2RBwy+yoiR1w/Blq6ubw==", + "version": "7.20.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.3.tgz", + "integrity": "sha512-oZg/Fpx0YDrj13KsLyO8I/CX3Zdw7z0O9qOd95SqcoIzuqy/WTGWvePeHAnZCN54SfdyjHcb1S30gc8zlzlHcA==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.20.2" } }, "@babel/plugin-transform-property-literals": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.10.4.tgz", - "integrity": "sha512-ofsAcKiUxQ8TY4sScgsGeR2vJIsfrzqvFb9GvJ5UdXDzl+MyYCaBj/FGzXuv7qE0aJcjWMILny1epqelnFlz8g==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", + "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-regenerator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.10.4.tgz", - "integrity": "sha512-3thAHwtor39A7C04XucbMg17RcZ3Qppfxr22wYzZNcVIkPHfpM9J0SO8zuCV6SZa265kxBJSrfKTvDCYqBFXGw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.6.tgz", + "integrity": "sha512-poqRI2+qiSdeldcz4wTSTXBRryoq3Gc70ye7m7UD5Ww0nE29IXqMl6r7Nd15WBgRd74vloEMlShtH6CKxVzfmQ==", "dev": true, "requires": { - "regenerator-transform": "^0.14.2" + "@babel/helper-plugin-utils": "^7.18.6", + "regenerator-transform": "^0.15.0" } }, "@babel/plugin-transform-reserved-words": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.10.4.tgz", - "integrity": "sha512-hGsw1O6Rew1fkFbDImZIEqA8GoidwTAilwCyWqLBM9f+e/u/sQMQu7uX6dyokfOayRuuVfKOW4O7HvaBWM+JlQ==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", + "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-shorthand-properties": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.10.4.tgz", - "integrity": "sha512-AC2K/t7o07KeTIxMoHneyX90v3zkm5cjHJEokrPEAGEy3UCp8sLKfnfOIGdZ194fyN4wfX/zZUWT9trJZ0qc+Q==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", + "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-spread": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.11.0.tgz", - "integrity": "sha512-UwQYGOqIdQJe4aWNyS7noqAnN2VbaczPLiEtln+zPowRNlD+79w3oi2TWfYe0eZgd+gjZCbsydN7lzWysDt+gw==", + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.19.0.tgz", + "integrity": "sha512-RsuMk7j6n+r752EtzyScnWkQyuJdli6LdO5Klv8Yx0OfPVTcQkIUfS8clx5e9yHXzlnhOZF3CbQ8C2uP5j074w==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-skip-transparent-expression-wrappers": "^7.11.0" + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9" } }, "@babel/plugin-transform-sticky-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.10.4.tgz", - "integrity": "sha512-Ddy3QZfIbEV0VYcVtFDCjeE4xwVTJWTmUtorAJkn6u/92Z/nWJNV+mILyqHKrUxXYKA2EoCilgoPePymKL4DvQ==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", + "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-regex": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-template-literals": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.10.5.tgz", - "integrity": "sha512-V/lnPGIb+KT12OQikDvgSuesRX14ck5FfJXt6+tXhdkJ+Vsd0lDCVtF6jcB4rNClYFzaB2jusZ+lNISDk2mMMw==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", + "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.9" } }, "@babel/plugin-transform-typeof-symbol": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.10.4.tgz", - "integrity": "sha512-QqNgYwuuW0y0H+kUE/GWSR45t/ccRhe14Fs/4ZRouNNQsyd4o3PG4OtHiIrepbM2WKUBDAXKCAK/Lk4VhzTaGA==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", + "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.9" } }, "@babel/plugin-transform-unicode-escapes": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.10.4.tgz", - "integrity": "sha512-y5XJ9waMti2J+e7ij20e+aH+fho7Wb7W8rNuu72aKRwCHFqQdhkdU2lo3uZ9tQuboEJcUFayXdARhcxLQ3+6Fg==", + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", + "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.18.9" } }, "@babel/plugin-transform-unicode-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.10.4.tgz", - "integrity": "sha512-wNfsc4s8N2qnIwpO/WP2ZiSyjfpTamT2C9V9FDH/Ljub9zw6P3SjkXcFmc0RQUt96k2fmIvtla2MMjgTwIAC+A==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", + "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/polyfill": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.10.4.tgz", - "integrity": "sha512-8BYcnVqQ5kMD2HXoHInBH7H1b/uP3KdnwCYXOqFnXqguOyuu443WXusbIUbWEfY3Z0Txk0M1uG/8YuAMhNl6zg==", + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.12.1.tgz", + "integrity": "sha512-X0pi0V6gxLi6lFZpGmeNa4zxtwEmCs42isWLNjZZDE0Y8yVfgu0T2OAHlzBbdYlqbW/YXVvoBHpATEM+goCj8g==", "dev": true, "requires": { "core-js": "^2.6.5", @@ -17318,85 +19626,92 @@ } }, "@babel/preset-env": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.11.0.tgz", - "integrity": "sha512-2u1/k7rG/gTh02dylX2kL3S0IJNF+J6bfDSp4DI2Ma8QN6Y9x9pmAax59fsCk6QUQG0yqH47yJWA+u1I1LccAg==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.11.0", - "@babel/helper-compilation-targets": "^7.10.4", - "@babel/helper-module-imports": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-proposal-async-generator-functions": "^7.10.4", - "@babel/plugin-proposal-class-properties": "^7.10.4", - "@babel/plugin-proposal-dynamic-import": "^7.10.4", - "@babel/plugin-proposal-export-namespace-from": "^7.10.4", - "@babel/plugin-proposal-json-strings": "^7.10.4", - "@babel/plugin-proposal-logical-assignment-operators": "^7.11.0", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.10.4", - "@babel/plugin-proposal-numeric-separator": "^7.10.4", - "@babel/plugin-proposal-object-rest-spread": "^7.11.0", - "@babel/plugin-proposal-optional-catch-binding": "^7.10.4", - "@babel/plugin-proposal-optional-chaining": "^7.11.0", - "@babel/plugin-proposal-private-methods": "^7.10.4", - "@babel/plugin-proposal-unicode-property-regex": "^7.10.4", - "@babel/plugin-syntax-async-generators": "^7.8.0", - "@babel/plugin-syntax-class-properties": "^7.10.4", - "@babel/plugin-syntax-dynamic-import": "^7.8.0", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.20.2.tgz", + "integrity": "sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.20.1", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-async-generator-functions": "^7.20.1", + "@babel/plugin-proposal-class-properties": "^7.18.6", + "@babel/plugin-proposal-class-static-block": "^7.18.6", + "@babel/plugin-proposal-dynamic-import": "^7.18.6", + "@babel/plugin-proposal-export-namespace-from": "^7.18.9", + "@babel/plugin-proposal-json-strings": "^7.18.6", + "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", + "@babel/plugin-proposal-numeric-separator": "^7.18.6", + "@babel/plugin-proposal-object-rest-spread": "^7.20.2", + "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", + "@babel/plugin-proposal-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-private-methods": "^7.18.6", + "@babel/plugin-proposal-private-property-in-object": "^7.18.6", + "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.0", + "@babel/plugin-syntax-import-assertions": "^7.20.0", + "@babel/plugin-syntax-json-strings": "^7.8.3", "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.0", - "@babel/plugin-syntax-top-level-await": "^7.10.4", - "@babel/plugin-transform-arrow-functions": "^7.10.4", - "@babel/plugin-transform-async-to-generator": "^7.10.4", - "@babel/plugin-transform-block-scoped-functions": "^7.10.4", - "@babel/plugin-transform-block-scoping": "^7.10.4", - "@babel/plugin-transform-classes": "^7.10.4", - "@babel/plugin-transform-computed-properties": "^7.10.4", - "@babel/plugin-transform-destructuring": "^7.10.4", - "@babel/plugin-transform-dotall-regex": "^7.10.4", - "@babel/plugin-transform-duplicate-keys": "^7.10.4", - "@babel/plugin-transform-exponentiation-operator": "^7.10.4", - "@babel/plugin-transform-for-of": "^7.10.4", - "@babel/plugin-transform-function-name": "^7.10.4", - "@babel/plugin-transform-literals": "^7.10.4", - "@babel/plugin-transform-member-expression-literals": "^7.10.4", - "@babel/plugin-transform-modules-amd": "^7.10.4", - "@babel/plugin-transform-modules-commonjs": "^7.10.4", - "@babel/plugin-transform-modules-systemjs": "^7.10.4", - "@babel/plugin-transform-modules-umd": "^7.10.4", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.10.4", - "@babel/plugin-transform-new-target": "^7.10.4", - "@babel/plugin-transform-object-super": "^7.10.4", - "@babel/plugin-transform-parameters": "^7.10.4", - "@babel/plugin-transform-property-literals": "^7.10.4", - "@babel/plugin-transform-regenerator": "^7.10.4", - "@babel/plugin-transform-reserved-words": "^7.10.4", - "@babel/plugin-transform-shorthand-properties": "^7.10.4", - "@babel/plugin-transform-spread": "^7.11.0", - "@babel/plugin-transform-sticky-regex": "^7.10.4", - "@babel/plugin-transform-template-literals": "^7.10.4", - "@babel/plugin-transform-typeof-symbol": "^7.10.4", - "@babel/plugin-transform-unicode-escapes": "^7.10.4", - "@babel/plugin-transform-unicode-regex": "^7.10.4", - "@babel/preset-modules": "^0.1.3", - "@babel/types": "^7.11.0", - "browserslist": "^4.12.0", - "core-js-compat": "^3.6.2", - "invariant": "^2.2.2", - "levenary": "^1.1.1", - "semver": "^5.5.0" + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.18.6", + "@babel/plugin-transform-async-to-generator": "^7.18.6", + "@babel/plugin-transform-block-scoped-functions": "^7.18.6", + "@babel/plugin-transform-block-scoping": "^7.20.2", + "@babel/plugin-transform-classes": "^7.20.2", + "@babel/plugin-transform-computed-properties": "^7.18.9", + "@babel/plugin-transform-destructuring": "^7.20.2", + "@babel/plugin-transform-dotall-regex": "^7.18.6", + "@babel/plugin-transform-duplicate-keys": "^7.18.9", + "@babel/plugin-transform-exponentiation-operator": "^7.18.6", + "@babel/plugin-transform-for-of": "^7.18.8", + "@babel/plugin-transform-function-name": "^7.18.9", + "@babel/plugin-transform-literals": "^7.18.9", + "@babel/plugin-transform-member-expression-literals": "^7.18.6", + "@babel/plugin-transform-modules-amd": "^7.19.6", + "@babel/plugin-transform-modules-commonjs": "^7.19.6", + "@babel/plugin-transform-modules-systemjs": "^7.19.6", + "@babel/plugin-transform-modules-umd": "^7.18.6", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.19.1", + "@babel/plugin-transform-new-target": "^7.18.6", + "@babel/plugin-transform-object-super": "^7.18.6", + "@babel/plugin-transform-parameters": "^7.20.1", + "@babel/plugin-transform-property-literals": "^7.18.6", + "@babel/plugin-transform-regenerator": "^7.18.6", + "@babel/plugin-transform-reserved-words": "^7.18.6", + "@babel/plugin-transform-shorthand-properties": "^7.18.6", + "@babel/plugin-transform-spread": "^7.19.0", + "@babel/plugin-transform-sticky-regex": "^7.18.6", + "@babel/plugin-transform-template-literals": "^7.18.9", + "@babel/plugin-transform-typeof-symbol": "^7.18.9", + "@babel/plugin-transform-unicode-escapes": "^7.18.10", + "@babel/plugin-transform-unicode-regex": "^7.18.6", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.20.2", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "core-js-compat": "^3.25.1", + "semver": "^6.3.0" } }, "@babel/preset-modules": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.3.tgz", - "integrity": "sha512-Ra3JXOHBq2xd56xSF7lMKXdjBn3T772Y1Wet3yWnkDly9zHvJki029tAFzvAAK5cf4YV3yoxuP61crYRol6SVg==", + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.0.0", @@ -17424,7 +19739,7 @@ "find-cache-dir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", - "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "integrity": "sha512-46TFiBOzX7xq/PcSWfFwkyjpemdRnMe31UQF+os0y+1W3k95f6R4SEt02Hj4p3X0Mir9gfrkmOtshFidS0VPUg==", "dev": true, "requires": { "commondir": "^1.0.1", @@ -17435,7 +19750,7 @@ "find-up": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==", "dev": true, "requires": { "locate-path": "^2.0.0" @@ -17444,13 +19759,13 @@ "home-or-tmp": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-3.0.0.tgz", - "integrity": "sha1-V6j+JM8zzdUkhgoVgh3cJchmcfs=", + "integrity": "sha512-pj6ktgQDedSIbzwrC108F9aZadnF2ZJ8mP8QbGq2nLPOmqpdqKWMoU4JPJaFEzpoTl6X/jOwE8BlkTOfVPR98A==", "dev": true }, "locate-path": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==", "dev": true, "requires": { "p-locate": "^2.0.0", @@ -17466,6 +19781,15 @@ "pify": "^3.0.0" } }, + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + }, "p-limit": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", @@ -17478,7 +19802,7 @@ "p-locate": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", "dev": true, "requires": { "p-limit": "^1.1.0" @@ -17487,19 +19811,19 @@ "p-try": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", "dev": true }, - "pify": { + "path-exists": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", "dev": true }, "pkg-dir": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "integrity": "sha512-ojakdnUgL5pzJYWw2AIDEupaQCX5OPbM688ZevubICjdIX01PRSYKqm33fJoCOJBRseYCTUlQRnBNX+Pchaejw==", "dev": true, "requires": { "find-up": "^2.1.0" @@ -17508,67 +19832,51 @@ } }, "@babel/runtime": { - "version": "7.11.2", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.11.2.tgz", - "integrity": "sha512-TeWkU52so0mPtDcaCTxNBI/IHiz0pZgr8VEFqXFtZWpYD08ZB6FaSwVAS8MKRQAP3bYKiVjwysOJgMFY28o6Tw==", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.1.tgz", + "integrity": "sha512-mrzLkl6U9YLF8qpqI7TB82PESyEGjm/0Ly91jG575eVxMMlb8fYfOXFZIJ8XfLrJZQbm7dlKry2bJmXBUEkdFg==", "dev": true, "requires": { - "regenerator-runtime": "^0.13.4" + "regenerator-runtime": "^0.13.10" } }, "@babel/template": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz", - "integrity": "sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==", + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", + "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", "dev": true, "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.18.10", + "@babel/types": "^7.18.10" } }, "@babel/traverse": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.11.0.tgz", - "integrity": "sha512-ZB2V+LskoWKNpMq6E5UUCrjtDUh5IOTAyIl0dTjIEoXum/iKWkoIEKIRDnUucO6f+2FzNkE0oD4RLKoPIufDtg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.11.0", - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/parser": "^7.11.0", - "@babel/types": "^7.11.0", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.1.tgz", + "integrity": "sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.1", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.20.1", + "@babel/types": "^7.20.0", "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.19" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } + "globals": "^11.1.0" } }, "@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.2.tgz", + "integrity": "sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", "to-fast-properties": "^2.0.0" } }, @@ -17585,7 +19893,7 @@ "colors": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/colors/-/colors-0.5.1.tgz", - "integrity": "sha1-fQAj6usVTo7p/Oddy5I9DtFmd3Q=", + "integrity": "sha512-XjsuUwpDeY98+yz959OlUK6m7mLBM+1MEG5oaenfuQnNnrQk1WvtcvFgN3FNDP3f2NmZ211t0mNEfSEN1h0eIg==", "dev": true } } @@ -17603,143 +19911,165 @@ "es6-promise": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-2.3.0.tgz", - "integrity": "sha1-lu258v2wGZWCKyY92KratnSBgbw=", + "integrity": "sha512-oyOjMhyKMLEjOOtvkwg0G4pAzLQ9WdbbeX7WdqKzvYXu+UFgD0Zo/Brq5Q49zNmnGPPzV5rmYvrr0jz1zWx8Iw==", "dev": true } } }, + "@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "dev": true + }, + "@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, "@octokit/auth-token": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.4.4.tgz", - "integrity": "sha512-LNfGu3Ro9uFAYh10MUZVaT7X2CnNm2C8IDQmabx+3DygYIQjs9FwzFAHN/0t6mu5HEPhxcb1XOuxdpY82vCg2Q==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz", + "integrity": "sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==", "requires": { - "@octokit/types": "^6.0.0" + "@octokit/types": "^6.0.3" } }, "@octokit/core": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@octokit/core/-/core-3.2.4.tgz", - "integrity": "sha512-d9dTsqdePBqOn7aGkyRFe7pQpCXdibSJ5SFnrTr0axevObZrpz3qkWm7t/NjYv5a66z6vhfteriaq4FRz3e0Qg==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz", + "integrity": "sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q==", "requires": { "@octokit/auth-token": "^2.4.4", "@octokit/graphql": "^4.5.8", - "@octokit/request": "^5.4.12", + "@octokit/request": "^5.6.3", + "@octokit/request-error": "^2.0.5", "@octokit/types": "^6.0.3", - "before-after-hook": "^2.1.0", + "before-after-hook": "^2.2.0", "universal-user-agent": "^6.0.0" } }, "@octokit/endpoint": { - "version": "6.0.10", - "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.10.tgz", - "integrity": "sha512-9+Xef8nT7OKZglfkOMm7IL6VwxXUQyR7DUSU0LH/F7VNqs8vyd7es5pTfz9E7DwUIx7R3pGscxu1EBhYljyu7Q==", + "version": "6.0.12", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz", + "integrity": "sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==", "requires": { - "@octokit/types": "^6.0.0", - "is-plain-object": "^5.0.0", - "universal-user-agent": "^6.0.0" - }, - "dependencies": { - "is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==" - } + "@octokit/types": "^6.0.3", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" } }, "@octokit/graphql": { - "version": "4.5.8", - "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.5.8.tgz", - "integrity": "sha512-WnCtNXWOrupfPJgXe+vSmprZJUr0VIu14G58PMlkWGj3cH+KLZEfKMmbUQ6C3Wwx6fdhzVW1CD5RTnBdUHxhhA==", + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.8.0.tgz", + "integrity": "sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg==", "requires": { - "@octokit/request": "^5.3.0", - "@octokit/types": "^6.0.0", + "@octokit/request": "^5.6.0", + "@octokit/types": "^6.0.3", "universal-user-agent": "^6.0.0" } }, "@octokit/openapi-types": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-2.0.0.tgz", - "integrity": "sha512-J4bfM7lf8oZvEAdpS71oTvC1ofKxfEZgU5vKVwzZKi4QPiL82udjpseJwxPid9Pu2FNmyRQOX4iEj6W1iOSnPw==" + "version": "12.11.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.11.0.tgz", + "integrity": "sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ==" }, "@octokit/plugin-paginate-rest": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.6.2.tgz", - "integrity": "sha512-3Dy7/YZAwdOaRpGQoNHPeT0VU1fYLpIUdPyvR37IyFLgd6XSij4j9V/xN/+eSjF2KKvmfIulEh9LF1tRPjIiDA==", + "version": "2.21.3", + "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.21.3.tgz", + "integrity": "sha512-aCZTEf0y2h3OLbrgKkrfFdjRL6eSOo8komneVQJnYecAxIej7Bafor2xhuDJOIFau4pk0i/P28/XgtbyPF0ZHw==", "requires": { - "@octokit/types": "^6.0.1" + "@octokit/types": "^6.40.0" } }, "@octokit/plugin-request-log": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.2.tgz", - "integrity": "sha512-oTJSNAmBqyDR41uSMunLQKMX0jmEXbwD1fpz8FG27lScV3RhtGfBa1/BBLym+PxcC16IBlF7KH9vP1BUYxA+Eg==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz", + "integrity": "sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==", "requires": {} }, "@octokit/plugin-rest-endpoint-methods": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-4.4.1.tgz", - "integrity": "sha512-+v5PcvrUcDeFXf8hv1gnNvNLdm4C0+2EiuWt9EatjjUmfriM1pTMM+r4j1lLHxeBQ9bVDmbywb11e3KjuavieA==", + "version": "5.16.2", + "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.16.2.tgz", + "integrity": "sha512-8QFz29Fg5jDuTPXVtey05BLm7OB+M8fnvE64RNegzX7U+5NUXcOcnpTIK0YfSHBg8gYd0oxIq3IZTe9SfPZiRw==", "requires": { - "@octokit/types": "^6.1.0", + "@octokit/types": "^6.39.0", "deprecation": "^2.3.1" } }, "@octokit/request": { - "version": "5.4.12", - "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.4.12.tgz", - "integrity": "sha512-MvWYdxengUWTGFpfpefBBpVmmEYfkwMoxonIB3sUGp5rhdgwjXL1ejo6JbgzG/QD9B/NYt/9cJX1pxXeSIUCkg==", + "version": "5.6.3", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz", + "integrity": "sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A==", "requires": { "@octokit/endpoint": "^6.0.1", - "@octokit/request-error": "^2.0.0", - "@octokit/types": "^6.0.3", - "deprecation": "^2.0.0", + "@octokit/request-error": "^2.1.0", + "@octokit/types": "^6.16.1", "is-plain-object": "^5.0.0", - "node-fetch": "^2.6.1", - "once": "^1.4.0", + "node-fetch": "^2.6.7", "universal-user-agent": "^6.0.0" - }, - "dependencies": { - "is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==" - } } }, "@octokit/request-error": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.0.4.tgz", - "integrity": "sha512-LjkSiTbsxIErBiRh5wSZvpZqT4t0/c9+4dOe0PII+6jXR+oj/h66s7E4a/MghV7iT8W9ffoQ5Skoxzs96+gBPA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz", + "integrity": "sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==", "requires": { - "@octokit/types": "^6.0.0", + "@octokit/types": "^6.0.3", "deprecation": "^2.0.0", "once": "^1.4.0" } }, "@octokit/rest": { - "version": "18.0.12", - "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-18.0.12.tgz", - "integrity": "sha512-hNRCZfKPpeaIjOVuNJzkEL6zacfZlBPV8vw8ReNeyUkVvbuCvvrrx8K8Gw2eyHHsmd4dPlAxIXIZ9oHhJfkJpw==", + "version": "18.12.0", + "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-18.12.0.tgz", + "integrity": "sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q==", "requires": { - "@octokit/core": "^3.2.3", - "@octokit/plugin-paginate-rest": "^2.6.2", - "@octokit/plugin-request-log": "^1.0.2", - "@octokit/plugin-rest-endpoint-methods": "4.4.1" + "@octokit/core": "^3.5.1", + "@octokit/plugin-paginate-rest": "^2.16.8", + "@octokit/plugin-request-log": "^1.0.4", + "@octokit/plugin-rest-endpoint-methods": "^5.12.0" } }, "@octokit/types": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.1.1.tgz", - "integrity": "sha512-btm3D6S7VkRrgyYF31etUtVY/eQ1KzrNRqhFt25KSe2mKlXuLXJilglRC6eDA2P6ou94BUnk/Kz5MPEolXgoiw==", + "version": "6.41.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz", + "integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==", "requires": { - "@octokit/openapi-types": "^2.0.0", - "@types/node": ">= 8" + "@octokit/openapi-types": "^12.11.0" } }, "@sinonjs/commons": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.1.tgz", - "integrity": "sha512-892K+kWUUi3cl+LlqEWIDrhvLgdL79tECi8JZUyq6IviKy/DNhuzCRlbHUjxK89f4ypPMMaFnFuR9Ie6DoIMsw==", + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.5.tgz", + "integrity": "sha512-rTpCA0wG1wUxglBSFdMMY0oTrKYvgf4fNgv/sXbfCVAdf+FnPBdKJR/7XbpTCwbCrvCbdPYnlWaUUYz4V2fPDA==", "dev": true, "requires": { "type-detect": "4.0.8" @@ -17766,34 +20096,35 @@ } }, "@sinonjs/text-encoding": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", - "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz", + "integrity": "sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==", "dev": true }, "@types/babel-types": { - "version": "7.0.8", - "resolved": "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.8.tgz", - "integrity": "sha512-jvu8g4LR7+p6ao30RhTREnEhHxmP4/R9D9/rOR/Kq14FztORty9SKgtOZUNZNMB9CXLxZ54EWu4dArUE8WdTsw==" + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.11.tgz", + "integrity": "sha512-pkPtJUUY+Vwv6B1inAz55rQvivClHJxc9aVEPPmaq2cbyeMLCiDpbKpcKyX4LAwpNGi+SHBv0tHv6+0gXv0P2A==" }, "@types/babylon": { - "version": "6.16.5", - "resolved": "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.5.tgz", - "integrity": "sha512-xH2e58elpj1X4ynnKp9qSnWlsRTIs6n3tgLGNfwAGHwePw0mulHQllV34n0T25uYSu1k0hRKkWXF890B1yS47w==", + "version": "6.16.6", + "resolved": "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.6.tgz", + "integrity": "sha512-G4yqdVlhr6YhzLXFKy5F7HtRBU8Y23+iWy7UKthMq/OSQnL1hbsoeXESQ2LY8zEDlknipDG3nRGhUC9tkwvy/w==", "requires": { "@types/babel-types": "*" } }, "@types/json-schema": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.5.tgz", - "integrity": "sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ==", + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", "dev": true }, "@types/node": { - "version": "14.0.27", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.27.tgz", - "integrity": "sha512-kVrqXhbclHNHGu9ztnAwSncIgJv/FaxmzXJvGXNdcCpV1b8u1/Mi6z6m0vwy0LzKeXFTPLH0NzwmoJ3fNCIq0g==" + "version": "18.11.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.9.tgz", + "integrity": "sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==", + "dev": true }, "@webassemblyjs/ast": { "version": "1.9.0", @@ -17994,40 +20325,44 @@ "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, "accepts": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", - "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", "requires": { - "mime-types": "~2.1.24", - "negotiator": "0.6.2" + "mime-types": "~2.1.34", + "negotiator": "0.6.3" } }, "acorn": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", - "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=" + "version": "4.0.13", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", + "integrity": "sha512-fu2ygVGuMmlzG8ZeRJ0bvR41nsAkxxhbyk8bZ1SS521Z7vmgJFTQQlfz/Mp/nJexGBz+v8sC9bM6+lNgskt4Ug==" }, "acorn-globals": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz", - "integrity": "sha1-/YJw9x+7SZawBPqIDuXUZXOnMb8=", + "integrity": "sha512-uWttZCk96+7itPxK8xCzY86PnxKTMrReKDqrHzv42VQY0K30PUO8WY13WMOuI+cOdX4EIdzdvQ8k6jkuGRFMYw==", "requires": { "acorn": "^4.0.4" + } + }, + "acorn-jsx": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", + "integrity": "sha512-AU7pnZkguthwBjKgCg6998ByQNIMjbuDQZ8bb78QAFZwPfmKia8AIzgY/gWgqCjnht8JLdXmB4YxA0KaV60ncQ==", + "dev": true, + "requires": { + "acorn": "^3.0.4" }, "dependencies": { "acorn": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", - "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=" + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", + "integrity": "sha512-OLUyIIZ7mF5oaAUT1w0TFqQS81q3saT46x8t7ukpPjMNk+nbs4ZHhs7ToV8EWnLYLepjETXd4XaCE4uxkMeqUw==", + "dev": true } } }, - "acorn-jsx": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", - "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", - "dev": true - }, "adbkit": { "version": "2.11.0", "resolved": "https://registry.npmjs.org/adbkit/-/adbkit-2.11.0.tgz", @@ -18046,7 +20381,22 @@ "bluebird": { "version": "2.9.34", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-2.9.34.tgz", - "integrity": "sha1-L3tOyAIWMoqf3evfacjUlC/v99g=", + "integrity": "sha512-ZDzCb87X7/IP1uzQ5eJZB+WoQRGTnKL5DHWvPw6kkMbQseouiQIrEi3P1UGE0D1k0N5/+aP/5GMCyHZ1xYJyHQ==", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, "node-forge": { @@ -18060,13 +20410,13 @@ "adbkit-logcat": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/adbkit-logcat/-/adbkit-logcat-1.1.0.tgz", - "integrity": "sha1-Adf5sM75CTowvLOwB+//MBUIli8=", + "integrity": "sha512-57iYRLdjmhI1fnc890KyflzWpnIb/aq5ET3fbn3axdyyeyKeP4Ji/GhnfBNguG1Tw7SQRL2eBnA+hvbwIsTtNg==", "dev": true }, "adbkit-monkey": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/adbkit-monkey/-/adbkit-monkey-1.0.1.tgz", - "integrity": "sha1-8pG+cBou/FZ6Y/x6pq/N7TFDC+E=", + "integrity": "sha512-uU8p+p4sv7gLsjO/At4iPufoPD3R16kVbzDVecdIerR9RzhEK6PcyAJghdOXwrYKbhm7SmPQWsxVRloDBMINDA==", "dev": true, "requires": { "async": "~0.2.9" @@ -18075,7 +20425,7 @@ "async": { "version": "0.2.10", "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", - "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=", + "integrity": "sha512-eAkdoKxU6/LkKDBzLpT+t6Ff5EtfSF4wx1WfJiPEEV7WNLnDaRXk0oVysiEPm262roaachGexwUv94WhSgN5TQ==", "dev": true } } @@ -18151,15 +20501,9 @@ } }, "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", "dev": true }, "chalk": { @@ -18184,27 +20528,27 @@ "wrap-ansi": "^2.0.0" } }, - "decamelize": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", - "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", - "dev": true, - "requires": { - "xregexp": "4.0.0" - } - }, "esprima": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", + "integrity": "sha512-AWwVMNxwhN8+NIPQzAQZCm7RkLC4RbM3B1OobMuyp3i+w73X57KCKaVIxaRZb+DYCojq7rspo+fmuQfAboyhFg==", "dev": true }, "fast-deep-equal": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "integrity": "sha512-bCK/2Z4zLidyB4ReuIsvALH6w31YfAQDmXMqMx6FyfHqvBxtjC0eRumeSu4Bs3XtXwpyIywtSTrVT99BxY1f9w==", "dev": true }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, "glob": { "version": "7.1.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", @@ -18219,6 +20563,31 @@ "path-is-absolute": "^1.0.0" } }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "dev": true + }, "regenerator-runtime": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", @@ -18250,18 +20619,38 @@ "strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", "dev": true, "requires": { "ansi-regex": "^3.0.0" } }, - "xregexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", - "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", + "tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", "dev": true }, + "whatwg-url": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.0.0.tgz", + "integrity": "sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ==", + "dev": true, + "requires": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + }, "yargs": { "version": "12.0.2", "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.2.tgz", @@ -18282,19 +20671,10 @@ "yargs-parser": "^10.1.0" } }, - "yargs-parser": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", - "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", - "dev": true, - "requires": { - "camelcase": "^4.1.0" - } - }, "yauzl": { "version": "2.9.2", "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.9.2.tgz", - "integrity": "sha1-T7G8euH8L1cDe1SvasyP4QMcW3c=", + "integrity": "sha512-yyeepe1mQuFKOWHNhvnLzoPPyjjunG8XY/BtRIFAcyyYe4w24diqUHnR4T+ZzfhH/Vas/wk3uClYNgu+GKLYhg==", "dev": true, "requires": { "buffer-crc32": "~0.2.3", @@ -18319,9 +20699,9 @@ } }, "ajv": { - "version": "6.12.3", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.3.tgz", - "integrity": "sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA==", + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -18334,13 +20714,15 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "dev": true + "dev": true, + "requires": {} }, "ajv-keywords": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true + "dev": true, + "requires": {} }, "ajv-merge-patch": { "version": "4.1.0", @@ -18355,7 +20737,7 @@ "align-text": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", - "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", + "integrity": "sha512-GrTZLRpmp6wIC2ztrWW9MjjTgSKccffgFagbNDOX95/dcjEcYZibYTeaOntySQLcdw1ztBoFkviiUvTMbb9MYg==", "requires": { "kind-of": "^3.0.2", "longest": "^1.0.1", @@ -18365,23 +20747,17 @@ "kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "requires": { "is-buffer": "^1.1.5" } } } }, - "amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", - "dev": true - }, "ansi-align": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", - "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", + "integrity": "sha512-TdlOggdA/zURfMYa7ABC66j+oqfMew58KpJMbUlH3bcZP1b+cBHIHDDn5uH9INsxrHBPjsqM0tDB4jPTF/vgJA==", "dev": true, "requires": { "string-width": "^2.0.0" @@ -18396,7 +20772,7 @@ "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", "dev": true }, "ansi-styles": { @@ -18411,13 +20787,13 @@ "ansicolors": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz", - "integrity": "sha1-ZlWX3oap/+Oqm/vmyuXG6kJrSXk=", + "integrity": "sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==", "dev": true }, "any-promise": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", - "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", "dev": true }, "anymatch": { @@ -18439,7 +20815,7 @@ "archiver": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/archiver/-/archiver-1.3.0.tgz", - "integrity": "sha1-TyGU1tj5nfP1MeaIHxTxXVX6ryI=", + "integrity": "sha512-4q/CtGPNVyC5aT9eYHhFP7SAEjKYzQIDIJWXfexUIPNxitNs1y6hORdX+sYxERSZ6qPeNNBJ5UolFsJdWTU02g==", "dev": true, "requires": { "archiver-utils": "^1.3.0", @@ -18454,9 +20830,9 @@ }, "dependencies": { "async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", "dev": true, "requires": { "lodash": "^4.17.14" @@ -18467,7 +20843,7 @@ "archiver-utils": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-1.3.0.tgz", - "integrity": "sha1-5QtMCccL89aA4y/xt5lOn52JUXQ=", + "integrity": "sha512-h+hTREBXcW5e1L9RihGXdH4PHHdGipG/jE2sMZrqIH6BmZAxeGU5IWjVsKhokdCSWX7km6Kkh406zZNEElHFPQ==", "dev": true, "requires": { "glob": "^7.0.0", @@ -18481,7 +20857,7 @@ "archy": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", - "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", + "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", "dev": true }, "argparse": { @@ -18490,19 +20866,12 @@ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "requires": { "sprintf-js": "~1.0.2" - }, - "dependencies": { - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" - } } }, "arr-diff": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==", "dev": true }, "arr-flatten": { @@ -18514,48 +20883,48 @@ "arr-union": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", "dev": true }, "array-differ": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", - "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", + "integrity": "sha512-LeZY+DZDRnvP7eMuQ6LHfCzUGxAAIViUBliK24P3hWXL6y4SortgR6Nim6xrkfSLlmH0+k+9NYNwVC2s53ZrYQ==", "dev": true }, "array-each": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", - "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=", + "integrity": "sha512-zHjL5SZa68hkKHBFBK6DJCTtr9sfTCPCaph/L7tMSLcTFgy+zX7E+6q5UArbtOtMBCtxdICpfTCspRse+ywyXA==", "dev": true }, "array-filter": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", - "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=", + "integrity": "sha512-VW0FpCIhjZdarWjIz8Vpva7U95fl2Jn+b+mmFFMLn8PIVscOQcAgEznwUzTEuUHuqZqIxwzRlcaN/urTFFQoiw==", "dev": true }, "array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" }, "array-from": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", - "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", + "integrity": "sha512-GQTc6Uupx1FCavi5mPzBvVT7nEOeWMmUA9P95wpfpW1XwMSKs+KaymD5C2Up7KAUKg/mYwbsUYzdZWcoajlNZg==", "dev": true }, "array-map": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz", - "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=", + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.1.tgz", + "integrity": "sha512-sxHIeJTGEsRC8/hYkZzdJNNPZ41EXHVys7pqMw1iwE/Kx8/hto0UbDuGQsSJ0ujPovj9qUZl6EOY/EiZ2g3d9Q==", "dev": true }, "array-reduce": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz", - "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=", + "integrity": "sha512-8jR+StqaC636u7h3ye1co3lQRefgVVUQUhuAmRbDqIMeR2yuXzRvkCNQiQ5J/wbREmoBLNtp13dhaaVpZQDRUw==", "dev": true }, "array-slice": { @@ -18567,7 +20936,7 @@ "array-union": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "integrity": "sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==", "dev": true, "requires": { "array-uniq": "^1.0.1" @@ -18576,47 +20945,48 @@ "array-uniq": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==", "dev": true }, "array-unique": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==", "dev": true }, "arrify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", "dev": true }, "asap": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" }, "asn1": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", - "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=", + "integrity": "sha512-6i37w/+EhlWlGUJff3T/Q8u1RGmP5wgbiwYnOnbOqvtrPxT63/sYFyP9RcpxtxGymtfA075IvmOnL7ycNOWl3w==", "dev": true }, "asn1.js": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", - "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", "dev": true, "requires": { "bn.js": "^4.0.0", "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" }, "dependencies": { "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true } } @@ -18634,13 +21004,13 @@ "inherits": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "integrity": "sha512-8nWq2nLTAwd02jTqJExUYFSD/fKq6VH9Y/oG2accc/kdI0V98Bag8d5a4gi3XHz73rDWa2PvTtvcWYquKqSENA==", "dev": true }, "util": { "version": "0.10.3", "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "integrity": "sha512-5KiHfsmkqacuKjkRkdV7SsfDJ2EGiPsK92s2MhNSY0craxjTdKTtqKsJaCWp4LW33ZZ0OPUv1WO/TFvNQRiQxQ==", "dev": true, "requires": { "inherits": "2.0.1" @@ -18651,7 +21021,7 @@ "assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", "dev": true }, "assertion-error": { @@ -18663,19 +21033,22 @@ "assign-symbols": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "integrity": "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==", "dev": true }, "ast-types": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.3.tgz", - "integrity": "sha512-XTZ7xGML849LkQP86sWdQzfhwbt3YwIO6MqbX9mUNYY98VKaaVZP7YNNm70IpwecbkkxmfC5IYAzOQ/2p29zRA==", - "dev": true + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.14.2.tgz", + "integrity": "sha512-O0yuUDnZeQDL+ncNGlJ78BiO4jnYI3bvMsD5prT0/nsgijG/LpNBIr63gTjVTNsiGkgQhiyCShTgxt8oXOrklA==", + "dev": true, + "requires": { + "tslib": "^2.0.1" + } }, "async": { "version": "1.5.2", "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "integrity": "sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w==", "dev": true }, "async-each": { @@ -18693,7 +21066,7 @@ "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", "dev": true }, "atob": { @@ -18705,19 +21078,19 @@ "aws-sign2": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", "dev": true }, "aws4": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.0.tgz", - "integrity": "sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA==", + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", "dev": true }, "babel-code-frame": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "integrity": "sha512-XqYMR2dfdGMW+hd0IUZ2PwK+fGeFkOxZJ0wY+JaQAHzt1Zx8LcvpiZD2NiGkEG8qx0CfkAOr5xt76d1e8vG90g==", "dev": true, "requires": { "chalk": "^1.1.3", @@ -18728,13 +21101,13 @@ "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "dev": true }, "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dev": true, "requires": { "ansi-styles": "^2.2.1", @@ -18747,13 +21120,13 @@ "js-tokens": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "integrity": "sha512-RjTcuD4xjtthQkaWH7dFlH85L+QaVtSoOyGdZ3g6HFhS9dFNDfLyqgm2NFe2X6cQpeFmt0452FJjFG5UameExg==", "dev": true }, "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "dev": true } } @@ -18785,10 +21158,25 @@ "source-map": "^0.5.7" }, "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, "json5": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "integrity": "sha512-4xrs1aW+6N5DalkqSVA8fxh458CXvR99WU8WLKmq4v8eWAL86Xo3BVqyd3SkA9wEVjCMqyvvRRkshAdOnBp5rw==", + "dev": true + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true } } @@ -18812,7 +21200,7 @@ "jsesc": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", - "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", + "integrity": "sha512-Mke0DA0QjUWuJlhsE0ZPPhYiJkRap642SmI/4ztCFaUs6V2AiH1sfecc+57NgaryfAA2VR3v6O+CSjC1jZJKOA==", "dev": true } } @@ -18820,7 +21208,7 @@ "babel-helper-function-name": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", - "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", + "integrity": "sha512-Oo6+e2iX+o9eVvJ9Y5eKL5iryeRdsIkwRYheCuhYdVHsdEQysbc2z2QkqCLIYnNxkT5Ss3ggrHdXiDI7Dhrn4Q==", "dev": true, "requires": { "babel-helper-get-function-arity": "^6.24.1", @@ -18833,7 +21221,7 @@ "babel-helper-get-function-arity": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", - "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", + "integrity": "sha512-WfgKFX6swFB1jS2vo+DwivRN4NB8XUdM3ij0Y1gnC21y1tdBoe6xjVnd7NSI6alv+gZXCtJqvrTeMW3fR/c0ng==", "dev": true, "requires": { "babel-runtime": "^6.22.0", @@ -18843,7 +21231,7 @@ "babel-helper-remap-async-to-generator": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", - "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", + "integrity": "sha512-RYqaPD0mQyQIFRu7Ho5wE2yvA/5jxqCIj/Lv4BXNq23mHYu/vxikOy2JueLiBxQknwapwrJeNCesvY0ZcfnlHg==", "dev": true, "requires": { "babel-helper-function-name": "^6.24.1", @@ -18856,7 +21244,7 @@ "babel-helpers": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", - "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", + "integrity": "sha512-n7pFrqQm44TCYvrCDb0MqabAF+JUBq+ijBvNMUxpkLjJaAu32faIexewMumrH5KLLJ1HDyT0PTEqRyAe/GwwuQ==", "dev": true, "requires": { "babel-runtime": "^6.22.0", @@ -18864,46 +21252,66 @@ } }, "babel-loader": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.1.0.tgz", - "integrity": "sha512-7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz", + "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==", "dev": true, "requires": { - "find-cache-dir": "^2.1.0", - "loader-utils": "^1.4.0", - "mkdirp": "^0.5.3", - "pify": "^4.0.1", + "find-cache-dir": "^3.3.1", + "loader-utils": "^2.0.0", + "make-dir": "^3.1.0", "schema-utils": "^2.6.5" } }, "babel-messages": { "version": "6.23.0", "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "integrity": "sha512-Bl3ZiA+LjqaMtNYopA9TYE9HP1tQ+E5dLxE0XrAzcIJeK2UqF0/EaqXwBn9esd4UmTfEab+P+UYQ1GnioFIb/w==", "dev": true, "requires": { "babel-runtime": "^6.22.0" } }, - "babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "babel-plugin-polyfill-corejs2": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", + "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.17.7", + "@babel/helper-define-polyfill-provider": "^0.3.3", + "semver": "^6.1.1" + } + }, + "babel-plugin-polyfill-corejs3": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", + "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.3", + "core-js-compat": "^3.25.1" + } + }, + "babel-plugin-polyfill-regenerator": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", + "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", "dev": true, "requires": { - "object.assign": "^4.1.0" + "@babel/helper-define-polyfill-provider": "^0.3.3" } }, "babel-plugin-syntax-async-functions": { "version": "6.13.0", "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", - "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", + "integrity": "sha512-4Zp4unmHgw30A1eWI5EpACji2qMocisdXhAftfhXoSV9j0Tvj6nRFE3tOmRY912E0FMRm/L5xWE7MGVT2FoLnw==", "dev": true }, "babel-plugin-transform-async-to-generator": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", - "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", + "integrity": "sha512-7BgYJujNCg0Ti3x0c/DL3tStvnKS6ktIYOmo9wginv/dfZOrbSZ+qG4IRRHMBOzZ5Awb1skTiAsQXg/+IWkZYw==", "dev": true, "requires": { "babel-helper-remap-async-to-generator": "^6.24.1", @@ -18914,7 +21322,7 @@ "babel-polyfill": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", - "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", + "integrity": "sha512-F2rZGQnAdaHWQ8YAoeRbukc7HS9QgdgeyJ0rQDd485v9opwuPvjpPFcOOT/WmkKTdgy9ESgSPXDcTNpzrGr6iQ==", "dev": true, "requires": { "babel-runtime": "^6.26.0", @@ -18925,7 +21333,7 @@ "regenerator-runtime": { "version": "0.10.5", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", - "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=", + "integrity": "sha512-02YopEIhAgiBHWeoTiA8aitHDt8z6w+rQqNuIftlM+ZtvSl/brTouaU7DW6GO/cHtvxJvS4Hwv2ibKdxIRi24w==", "dev": true } } @@ -18933,7 +21341,7 @@ "babel-register": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", - "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", + "integrity": "sha512-veliHlHX06wjaeY8xNITbveXSiI+ASFnOqvne/LaIJIqOWi2Ogmj91KOugEz/hoh/fwMhXNBJPCv8Xaz5CyM4A==", "dev": true, "requires": { "babel-core": "^6.26.0", @@ -18945,6 +21353,15 @@ "source-map-support": "^0.4.15" }, "dependencies": { + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + }, "source-map-support": { "version": "0.4.18", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", @@ -18959,7 +21376,7 @@ "babel-runtime": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "integrity": "sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==", "requires": { "core-js": "^2.4.0", "regenerator-runtime": "^0.11.0" @@ -18975,7 +21392,7 @@ "babel-template": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", - "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "integrity": "sha512-PCOcLFW7/eazGUKIoqH97sO9A2UYMahsn/yRQ7uOk37iutwjq7ODtcTNF+iFDSHNfkctqsLRjLP7URnOx0T1fg==", "dev": true, "requires": { "babel-runtime": "^6.26.0", @@ -18988,7 +21405,7 @@ "babel-traverse": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", - "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "integrity": "sha512-iSxeXx7apsjCHe9c7n8VtRXGzI2Bk1rBSOJgCCjfyXb6v1aCqE1KSEpq/8SXuVN8Ka/Rh1WDTF0MDzkvTA4MIA==", "dev": true, "requires": { "babel-code-frame": "^6.26.0", @@ -19002,18 +21419,33 @@ "lodash": "^4.17.4" }, "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, "globals": { "version": "9.18.0", "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", "dev": true + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true } } }, "babel-types": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "integrity": "sha512-zhe3V/26rCWsEZK8kZN+HaQj5yQ1CilTObixFzKW1UWjqG7618Twz6YEsCnjfg5gBcJh02DrpCkS9h98ZqDY+g==", "requires": { "babel-runtime": "^6.26.0", "esutils": "^2.0.2", @@ -19024,7 +21456,7 @@ "to-fast-properties": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" + "integrity": "sha512-lxrWP8ejsq+7E3nNjwYmUBMAgjMTZoTI+sdBOpvNyijeDLa29LUn9QaoXAHv4+Z578hbmHHJKZknzxVtvo77og==" } } }, @@ -19034,9 +21466,9 @@ "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" }, "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, "base": { @@ -19057,47 +21489,18 @@ "define-property": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", "dev": true, "requires": { "is-descriptor": "^1.0.0" } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } } } }, "base64-js": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", "dev": true }, "base64url": { @@ -19113,27 +21516,35 @@ "dev": true, "requires": { "safe-buffer": "5.1.2" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + } } }, "batch": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", "dev": true }, "bcrypt-pbkdf": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", "dev": true, "requires": { "tweetnacl": "^0.14.3" } }, "before-after-hook": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.1.0.tgz", - "integrity": "sha512-IWIbu7pMqyw3EAJHzzHbWa85b6oud/yfKYg5rqB5hNE8CeMi3nX+2C2sj0HswfblST86hpVEOAb9x34NZd6P7A==" + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", + "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==" }, "big.js": { "version": "5.2.2", @@ -19174,15 +21585,15 @@ "dev": true }, "bn.js": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.2.tgz", - "integrity": "sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", "dev": true }, "body": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/body/-/body-5.1.0.tgz", - "integrity": "sha1-5LoM5BCkaTYyM2dgnstOZVMSUGk=", + "integrity": "sha512-chUsBxGRtuElD6fmw1gHLpvnKdVLK302peeFa9ZqAEk8TyzZ3fygLyUEDDPTJvL9+Bor0dIwn6ePOsRM2y0zQQ==", "dev": true, "requires": { "continuable-cache": "^0.3.1", @@ -19194,42 +21605,65 @@ "bytes": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz", - "integrity": "sha1-NWnt6Lo0MV+rmcPpLLBMciDeH6g=", + "integrity": "sha512-/x68VkHLeTl3/Ll8IvxdwzhrT+IyKc52e/oyHhA2RwqPqswSnjVbSddfPRwAsJtbilMAPSRWwAlpxdYsSWOTKQ==", "dev": true }, "raw-body": { "version": "1.1.7", "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-1.1.7.tgz", - "integrity": "sha1-HQJ8K/oRasxmI7yo8AAWVyqH1CU=", + "integrity": "sha512-WmJJU2e9Y6M5UzTOkHaM7xJGAPQD8PNzx3bAd2+uhZAim6wDk6dAZxPVYLF67XhbR4hmKGh33Lpmh4XWrCH5Mg==", "dev": true, "requires": { "bytes": "1", "string_decoder": "0.10" } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true } } }, "body-parser": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", - "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", "requires": { - "bytes": "3.1.0", + "bytes": "3.1.2", "content-type": "~1.0.4", "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.7.2", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.7.0", - "raw-body": "2.4.0", - "type-is": "~1.6.17" + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } } }, "boolbase": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", "dev": true }, "bootstrap": { @@ -19257,14 +21691,6 @@ "string-width": "^2.0.0", "term-size": "^1.2.0", "widest-line": "^2.0.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - } } }, "brace-expansion": { @@ -19293,23 +21719,12 @@ "snapdragon-node": "^2.0.1", "split-string": "^3.0.2", "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } } }, "brorand": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==", "dev": true }, "browser-stdout": { @@ -19356,21 +21771,13 @@ } }, "browserify-rsa": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", "dev": true, "requires": { - "bn.js": "^4.1.0", + "bn.js": "^5.0.0", "randombytes": "^2.0.1" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } } }, "browserify-sign": { @@ -19390,36 +21797,15 @@ "safe-buffer": "^5.2.0" }, "dependencies": { - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, "readable-stream": { "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "dev": true, "requires": { - "safe-buffer": "~5.2.0" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" } } } @@ -19434,25 +21820,26 @@ } }, "browserslist": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.13.0.tgz", - "integrity": "sha512-MINatJ5ZNrLnQ6blGvePd/QOz9Xtu+Ne+x29iQSCHfkU5BugKVJwZKn/iiL8UbpIpa3JhviKjz+XxMo0m2caFQ==", + "version": "4.21.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", + "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001093", - "electron-to-chromium": "^1.3.488", - "escalade": "^3.0.1", - "node-releases": "^1.1.58" + "caniuse-lite": "^1.0.30001400", + "electron-to-chromium": "^1.4.251", + "node-releases": "^2.0.6", + "update-browserslist-db": "^1.0.9" } }, "buffer": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz", - "integrity": "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==", + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", + "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", "dev": true, "requires": { "base64-js": "^1.0.2", - "ieee754": "^1.1.4" + "ieee754": "^1.1.4", + "isarray": "^1.0.0" } }, "buffer-alloc": { @@ -19474,43 +21861,43 @@ "buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", "dev": true }, "buffer-equal-constant-time": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", - "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=", + "integrity": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==", "dev": true }, "buffer-fill": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", - "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=", + "integrity": "sha512-T7zexNBwiiaCOGDg9xNX9PBmjrubblRkENuptryuI64URkXDFum9il/JGL8Lm8wYfAXpredVXXZz7eMHilimiQ==", "dev": true }, "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", "dev": true }, "buffer-xor": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", "dev": true }, "builtin-status-codes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==", "dev": true }, "bunyan": { "version": "1.8.12", "resolved": "https://registry.npmjs.org/bunyan/-/bunyan-1.8.12.tgz", - "integrity": "sha1-8VDw9nSKvdcq6uhPBEA74u8RN5c=", + "integrity": "sha512-dmDUbGHeGcvCDLRFOscZkwx1ZO/aFz3bJOCi5nCgzdhFGPxwK+y5AcDBnqagNGlJZ7lje/l6JUEz9mQcutttdg==", "dev": true, "requires": { "dtrace-provider": "~0.8", @@ -19520,9 +21907,9 @@ } }, "bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" }, "cacache": { "version": "10.0.4", @@ -19545,6 +21932,15 @@ "y18n": "^4.0.0" }, "dependencies": { + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + }, "rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -19573,10 +21969,19 @@ "unset-value": "^1.0.0" } }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, "caller-path": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz", - "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", + "integrity": "sha512-UJiE1otjXPF5/x+T3zTnSFiTOEmJoGTD9HmBoxnCUwho61a2eSNn/VwtwuIBDAo2SEOv1AJ7ARI5gCmohFLu/g==", "dev": true, "requires": { "callsites": "^0.2.0" @@ -19585,52 +21990,61 @@ "callsites": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz", - "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=", + "integrity": "sha512-Zv4Dns9IbXXmPkgRRUjAaJQgfN4xX5p6+RQFhWUqscdvvK2xK/ZL8b3IXIJsj+4sD+f24NwnWy2BY8AJ82JB0A==", "dev": true }, "camelcase": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=" + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha512-FxAv7HpHrXbh3aPo4o2qxHay2lkLY3x5Mw3KeE4KQE8ysVfziWeRZDwcjauvwBSGEC/nXUPzZy8zeh4HokqOnw==", + "dev": true }, "caniuse-lite": { - "version": "1.0.30001111", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001111.tgz", - "integrity": "sha512-xnDje2wchd/8mlJu8sXvWxOGvMgv+uT3iZ3bkIAynKOzToCssWCmkz/ZIkQBs/2pUB4uwnJKVORWQ31UkbVjOg==", + "version": "1.0.30001431", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001431.tgz", + "integrity": "sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ==", "dev": true }, "capture-stack-trace": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz", - "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.2.tgz", + "integrity": "sha512-X/WM2UQs6VMHUtjUDnZTRI+i1crWteJySFzr9UpGoQa4WQffXVTTXuekjl7TjZRlcF2XfjgITT0HxZ9RnxeT0w==", "dev": true }, "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", "dev": true }, "center-align": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", - "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", + "integrity": "sha512-Baz3aNe2gd2LP2qk5U+sDk/m4oSuwSDcBfayTCTBoWpfIGO5XFxPmjILQII4NGiZjD6DoDI6kf7gKaxkf7s3VQ==", "requires": { "align-text": "^0.1.3", "lazy-cache": "^1.0.3" + }, + "dependencies": { + "lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha512-RE2g0b5VGZsOCFOCgP7omTRYFqydmZkBwl5oNnQ1lDYC57uyO9KqNnNVxT7COSHTxrRCWVcAVOcbjk+tvh/rgQ==" + } } }, "chai": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz", - "integrity": "sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw==", + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.7.tgz", + "integrity": "sha512-HLnAzZ2iupm25PlN0xFreAlBA5zaBSv3og0DdeGA4Ar6h6rJ3A0rolRUKJhSF2V10GZKDgWF/VmAEsNWjCRB+A==", "dev": true, "requires": { "assertion-error": "^1.1.0", "check-error": "^1.0.2", - "deep-eql": "^3.0.1", + "deep-eql": "^4.1.2", "get-func-name": "^2.0.0", - "pathval": "^1.1.0", + "loupe": "^2.3.1", + "pathval": "^1.1.1", "type-detect": "^4.0.5" } }, @@ -19673,7 +22087,7 @@ "character-parser": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", - "integrity": "sha1-x84o821LzZdE5f/CxfzeHHMmH8A=", + "integrity": "sha512-+UqJQjFEFaTAs3bNsF2j2kEN1baG/zghZbdqoYEDxGZtJo9LBzl1A+m0D4n3qKx8N2FNv8/Xp6yV9mQmBuptaw==", "requires": { "is-regex": "^1.0.3" } @@ -19681,19 +22095,19 @@ "chardet": { "version": "0.4.2", "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", - "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=", + "integrity": "sha512-j/Toj7f1z98Hh2cYo2BVr85EpIRWqUi7rtRSGxh/cqUjqrnJe9l9UE7IUGd2vQ2p+kSHLkSzObQPZPLUC6TQwg==", "dev": true }, "check-error": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", + "integrity": "sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==", "dev": true }, "cheerio": { "version": "1.0.0-rc.2", "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.2.tgz", - "integrity": "sha1-S59TqBsn5NXawxwP/Qz6A8xoMNs=", + "integrity": "sha512-9LDHQy1jHc/eXMzPN6/oah9Qba4CjdKECC7YYEE/2zge/tsGwt19NQp5NFdfd5Lx6TZlyC5SXNQkG41P9r6XDg==", "dev": true, "requires": { "css-select": "~1.2.0", @@ -19735,15 +22149,6 @@ "nan": "^2.12.1" } }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, "normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -19765,13 +22170,10 @@ "dev": true }, "chrome-trace-event": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", - "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "dev": true }, "cipher-base": { "version": "1.0.4", @@ -19804,18 +22206,75 @@ "define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", "dev": true, "requires": { "is-descriptor": "^0.1.0" } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true } } }, "clean-css": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz", - "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==", + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", + "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", "requires": { "source-map": "~0.6.0" }, @@ -19830,13 +22289,13 @@ "cli-boxes": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", - "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", + "integrity": "sha512-3Fo5wu8Ytle8q9iCzS4D2MWVL2X7JVWRiS1BnXbTFDhS9c/REkM9vd1AmabsoZoY5/dGi5TT9iKL8Kb6DeBRQg==", "dev": true }, "cli-cursor": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "integrity": "sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==", "dev": true, "requires": { "restore-cursor": "^2.0.0" @@ -19857,7 +22316,7 @@ "cliui": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", - "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", + "integrity": "sha512-GIOYRizG+TGoc7Wgc1LiOTLare95R3mzKgoln+Q/lE4ceiYH19gUpl0l0Ffq4lJDEf3FxujMe6IBfOCs7pfqNA==", "requires": { "center-align": "^0.1.1", "right-align": "^0.1.1", @@ -19867,13 +22326,13 @@ "clone": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", "dev": true }, "clone-deep": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-0.3.0.tgz", - "integrity": "sha1-NIxhrpzb4O3+BT2R/0zFIdeQ7eg=", + "integrity": "sha512-qp1do6NplYZZcLU+TQ93+A735g1kNcnH75QbC1olpKJphe36CqkjFEK0PyFSoZlI3/1jO5KnDg64xdwWiEH/zA==", "dev": true, "requires": { "for-own": "^1.0.0", @@ -19882,10 +22341,19 @@ "shallow-clone": "^0.1.2" }, "dependencies": { + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, "kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "requires": { "is-buffer": "^1.1.5" @@ -19896,25 +22364,25 @@ "co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", "dev": true }, "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "integrity": "sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==", "dev": true }, "codemirror": { - "version": "5.56.0", - "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.56.0.tgz", - "integrity": "sha512-MfKVmYgifXjQpLSgpETuih7A7WTTIsxvKfSLGseTY5+qt0E1UD1wblZGM6WLenORo8sgmf+3X+WTe2WF7mufyw==", + "version": "5.65.9", + "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.65.9.tgz", + "integrity": "sha512-19Jox5sAKpusTDgqgKB5dawPpQcY+ipQK7xoEI+MVucEF9qqFaXpeqY1KaoyGBso/wHQoDa4HMMxMjdsS3Zzzw==", "dev": true }, "collection-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "integrity": "sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==", "dev": true, "requires": { "map-visit": "^1.0.0", @@ -19933,19 +22401,19 @@ "color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "dev": true }, "colors": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", + "integrity": "sha512-ENwblkFQpqqia6b++zLD/KUWafYlVY/UNnAp7oz7LY7E924wmpye416wBOmvv/HMWzl8gL1kJlfvId/1Dg176w==", "dev": true }, "columnify": { "version": "1.5.4", "resolved": "https://registry.npmjs.org/columnify/-/columnify-1.5.4.tgz", - "integrity": "sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs=", + "integrity": "sha512-rFl+iXVT1nhLQPfGDw+3WcS8rmm7XsLKUmhsGE3ihzzpIikeGrTaZPIRKYWeLsLBypsHzjXIvYEltVUZS84XxQ==", "dev": true, "requires": { "strip-ansi": "^3.0.0", @@ -19976,7 +22444,7 @@ "commondir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", "dev": true }, "component-emitter": { @@ -19988,7 +22456,7 @@ "compress-commons": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz", - "integrity": "sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=", + "integrity": "sha512-SLTU8iWWmcORfUN+4351Z2aZXKJe1tr0jSilPMCZlLPzpdTXnkBW1LevW/MfuANBKJek8Xu9ggqrtVmQrChLtg==", "dev": true, "requires": { "buffer-crc32": "^0.2.1", @@ -20000,7 +22468,7 @@ "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "dev": true }, "concat-stream": { @@ -20016,12 +22484,12 @@ } }, "configstore": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", - "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.5.tgz", + "integrity": "sha512-nlOhI4+fdzoK5xmJ+NY+1gZK56bwEaWZr8fYuXohZ9Vkc1o3a4T/R3M+yE/w7x/ZVJ1zF8c+oaOvF0dztdUgmA==", "dev": true, "requires": { - "dot-prop": "^4.1.0", + "dot-prop": "^4.2.1", "graceful-fs": "^4.1.2", "make-dir": "^1.0.0", "unique-string": "^1.0.0", @@ -20037,12 +22505,6 @@ "requires": { "pify": "^3.0.0" } - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true } } }, @@ -20056,12 +22518,59 @@ "finalhandler": "1.1.2", "parseurl": "~1.3.3", "utils-merge": "1.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "dev": true, + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", + "dev": true, + "requires": { + "ee-first": "1.1.1" + } + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true + } } }, "connect-livereload": { "version": "0.5.4", "resolved": "https://registry.npmjs.org/connect-livereload/-/connect-livereload-0.5.4.tgz", - "integrity": "sha1-gBV9E3HJ83zBQDmrGJWXDRGdw7w=", + "integrity": "sha512-3KnRwsWf4VmP01I4hCDQqTc4e2UxOvJIi8i08GiwqX2oymzxNFY7PqjFkwHglYTJ0yzUJkO5yqdPxVaIz3Pbug==", "dev": true }, "console-browserify": { @@ -20084,15 +22593,15 @@ "constants-browserify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", + "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==", "dev": true }, "content-disposition": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", - "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", "requires": { - "safe-buffer": "5.1.2" + "safe-buffer": "5.2.1" } }, "content-type": { @@ -20103,27 +22612,24 @@ "continuable-cache": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/continuable-cache/-/continuable-cache-0.3.1.tgz", - "integrity": "sha1-vXJ6f67XfnH/OYWskzUakSczrQ8=", + "integrity": "sha512-TF30kpKhTH8AGCG3dut0rdd/19B7Z+qCnrMoBLpyQu/2drZdNrrpcjPEoJeSVsQM+8KmWG5O56oPDjSSUsuTyA==", "dev": true }, "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==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true }, "cookie": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", - "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==" + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==" }, "cookie-signature": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" }, "copy-concurrently": { "version": "1.0.5", @@ -20139,6 +22645,15 @@ "run-queue": "^1.0.0" }, "dependencies": { + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + }, "rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -20153,36 +22668,27 @@ "copy-descriptor": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "integrity": "sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==", "dev": true }, "core-js": { - "version": "2.6.11", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", - "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==" + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", + "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==" }, "core-js-compat": { - "version": "3.6.5", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.5.tgz", - "integrity": "sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng==", + "version": "3.26.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.26.0.tgz", + "integrity": "sha512-piOX9Go+Z4f9ZiBFLnZ5VrOpBl0h7IGCkiFUN11QTe6LjAvOT3ifL/5TdoizMh99hcGy5SoLyWbapIY/PIb/3A==", "dev": true, "requires": { - "browserslist": "^4.8.5", - "semver": "7.0.0" - }, - "dependencies": { - "semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true - } + "browserslist": "^4.21.4" } }, "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", "dev": true }, "crc": { @@ -20192,12 +22698,24 @@ "dev": true, "requires": { "buffer": "^5.1.0" + }, + "dependencies": { + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + } } }, "crc32-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz", - "integrity": "sha1-483TtN8xaN10494/u8t7KX/pCPQ=", + "integrity": "sha512-UjZSqFCbn+jZUHJIh6Y3vMF7EJLcJWNm4tKDf2peJRwlZKHvkkvOMTvAei6zjU9gO1xONVr3rRFw0gixm2eUng==", "dev": true, "requires": { "crc": "^3.4.4", @@ -20215,9 +22733,9 @@ }, "dependencies": { "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true } } @@ -20225,7 +22743,7 @@ "create-error-class": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", - "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", + "integrity": "sha512-gYTKKexFO3kh200H1Nit76sRwRtOY32vQd3jpAQKpLtZqyNsSQNfI4N7o3eP2wUjV35pTWKRYqFUDBvUha/Pkw==", "dev": true, "requires": { "capture-stack-trace": "^1.0.0" @@ -20269,12 +22787,29 @@ "semver": "^5.5.0", "shebang-command": "^1.2.0", "which": "^1.2.9" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + } } }, "crx": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/crx/-/crx-3.2.1.tgz", - "integrity": "sha1-Fyk+51790IxtHIs+F0nS1XV89Cs=", + "integrity": "sha512-UGgKNCy+6oXbMPaibiB2nLjiDCDC5akQbiODN1HWibH3l/0q52hPE10oqH3d2jyyM92nKuBwqD5t6Xg3FM8QTA==", "dev": true, "requires": { "archiver": "^1.1.0", @@ -20286,7 +22821,7 @@ "crx-parser": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/crx-parser/-/crx-parser-0.1.2.tgz", - "integrity": "sha1-fu7tnt3JXiLBiTguNGJARKiaWm0=", + "integrity": "sha512-B1XsIt+CDGa91o+72tAhMnuTzgO4G2HYvzzhZcL3+NetS1ENfX+6Y+ofWFBfuw+/y8uJAip65zphNNiHVlOyxQ==", "dev": true }, "crypto-browserify": { @@ -20311,7 +22846,7 @@ "crypto-random-string": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", - "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", + "integrity": "sha512-GsVpkFPlycH7/fRR7Dhcmnoii54gV1nz7y4CWyeFS14N+JVBBhY+r8amRHE4BwSYal7BPTDp8isvAlCxyFt3Hg==", "dev": true }, "css": { @@ -20335,15 +22870,18 @@ } }, "css-parse": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-1.7.0.tgz", - "integrity": "sha1-Mh9s9zeCpv91ERE5D8BeLGV9jJs=", - "dev": true + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-2.0.0.tgz", + "integrity": "sha512-UNIFik2RgSbiTwIW1IsFwXWn6vs+bYdq83LKTSOsx7NJR7WII9dxewkHLltfTLVppoUApHV0118a4RZRI9FLwA==", + "dev": true, + "requires": { + "css": "^2.0.0" + } }, "css-select": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", - "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "integrity": "sha512-dUQOBoqdR7QwV90WysXPLXG5LO7nhYBgiWVfxF80DKPF8zx1t/pUd2FYy73emg3zrjtM6dzmYgbHKfV2rxiHQA==", "dev": true, "requires": { "boolbase": "~1.0.0", @@ -20361,7 +22899,7 @@ "cyclist": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", - "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", + "integrity": "sha512-NJGVKPS81XejHcLhaLJS7plab0fK3slPh11mESeeDq2W4ZI5kUKK/LRRdVDvjJseojbPB7ZwjnyOybg3Igea/A==", "dev": true }, "d": { @@ -20377,7 +22915,7 @@ "dashdash": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", "dev": true, "requires": { "assert-plus": "^1.0.0" @@ -20402,28 +22940,33 @@ "dev": true }, "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, "requires": { - "ms": "2.0.0" + "ms": "2.1.2" } }, "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", + "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", + "dev": true, + "requires": { + "xregexp": "4.0.0" + } }, "decode-uri-component": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==", "dev": true }, "deep-eql": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", - "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.2.tgz", + "integrity": "sha512-gT18+YW4CcW/DBNTwAmqTtkJh7f9qqScu2qFVlx7kCoeY9tlBu9cUcr7+I+Z/noG8INehS3xQgLpTtd/QUTn4w==", "dev": true, "requires": { "type-detect": "^4.0.0" @@ -20461,19 +23004,19 @@ "deep-freeze": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/deep-freeze/-/deep-freeze-0.0.1.tgz", - "integrity": "sha1-OgsABd4YZygZ39OM0x+RF5yJPoQ=", + "integrity": "sha512-Z+z8HiAvsGwmjqlphnHW5oz6yWlOwu6EQfFTjmeTWlDeda3FS2yv3jhq35TX/ewmsnqB+RX2IdsIOyjJCQN5tg==", "dev": true }, "deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", "dev": true }, "deepcopy": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/deepcopy/-/deepcopy-0.6.3.tgz", - "integrity": "sha1-Y0eA8vhlardxr4+oQx7RzO5Vx7A=", + "integrity": "sha512-C7P+E1C5q9rF51zPXI2G03/y7mJ5tbjJUpUjhpghwnbCXi8rzsX/y1JzCX8+Oin9vN9E2BT32RCuDw6xEXDw1A==", "dev": true }, "deepmerge": { @@ -20483,21 +23026,22 @@ "dev": true }, "defaults": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", "dev": true, "requires": { "clone": "^1.0.2" } }, "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", "dev": true, "requires": { - "object-keys": "^1.0.12" + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" } }, "define-property": { @@ -20508,43 +23052,12 @@ "requires": { "is-descriptor": "^1.0.2", "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } } }, "degenerator": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-1.0.4.tgz", - "integrity": "sha1-/PSQo37OJmRk2cxDGrmMWBnO0JU=", + "integrity": "sha512-EMAC+riLSC64jKfOs1jp8J7M4ZXstUUwTdwFBEv6HOzL/Ae+eAzMKEK0nJnpof2fnw9IOjmE6u6qXFejVyk8AA==", "dev": true, "requires": { "ast-types": "0.x.x", @@ -20555,7 +23068,7 @@ "esprima": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", + "integrity": "sha512-AWwVMNxwhN8+NIPQzAQZCm7RkLC4RbM3B1OobMuyp3i+w73X57KCKaVIxaRZb+DYCojq7rspo+fmuQfAboyhFg==", "dev": true } } @@ -20563,13 +23076,13 @@ "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", "dev": true }, "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" }, "deprecation": { "version": "2.3.1", @@ -20589,24 +23102,24 @@ "desandro-matches-selector": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/desandro-matches-selector/-/desandro-matches-selector-2.0.2.tgz", - "integrity": "sha1-cXvu1NwT59jzdi9wem1YpndCGOE=", + "integrity": "sha512-+1q0nXhdzg1IpIJdMKalUwvvskeKnYyEe3shPRwedNcWtnhEKT3ZxvFjzywHDeGcKViIxTCAoOYQWP1qD7VNyg==", "dev": true }, "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" }, "detect-file": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", - "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", + "integrity": "sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q==", "dev": true }, "detect-indent": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", - "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "integrity": "sha512-BDKtmHlOzwI7iRuEkhzsnPoi5ypEhWAJB5RvHWe1kMr06js3uK5B3734i3ui5Yd+wOJV1cpE4JnivPD283GU/A==", "dev": true, "requires": { "repeating": "^2.0.0" @@ -20630,9 +23143,9 @@ }, "dependencies": { "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true } } @@ -20654,31 +23167,77 @@ }, "dependencies": { "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", "dev": true }, "async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", "dev": true, "requires": { "lodash": "^4.17.14" } }, - "cliui": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", - "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "dev": true + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" + "p-limit": "^2.0.0" } }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "dev": true + }, "pino": { "version": "5.8.1", "resolved": "https://registry.npmjs.org/pino/-/pino-5.8.1.tgz", @@ -20708,7 +23267,7 @@ "strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", "dev": true, "requires": { "ansi-regex": "^3.0.0" @@ -20733,6 +23292,16 @@ "y18n": "^3.2.1 || ^4.0.0", "yargs-parser": "^11.1.1" } + }, + "yargs-parser": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", + "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } } } }, @@ -20757,7 +23326,7 @@ "doctypes": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", - "integrity": "sha1-6oCxBqh1OHdOijpKWv4pPeSJ4Kk=" + "integrity": "sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==" }, "dom-serializer": { "version": "0.1.1", @@ -20799,7 +23368,7 @@ "domutils": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "integrity": "sha512-gSu5Oi/I+3wDENBsOWBiRK1eoGxcywYSqg3rR960/+EfY0CF4EX1VPkgHOZ3WiS/Jg2DtliF6BhWcHlfpYUcGw==", "dev": true, "requires": { "dom-serializer": "0", @@ -20816,9 +23385,9 @@ } }, "dotenv": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz", - "integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==" + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz", + "integrity": "sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==" }, "dtrace-provider": { "version": "0.8.8", @@ -20831,9 +23400,9 @@ } }, "duplexer3": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", + "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==", "dev": true }, "duplexify": { @@ -20851,7 +23420,7 @@ "ecc-jsbn": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", "dev": true, "requires": { "jsbn": "~0.1.0", @@ -20870,33 +23439,33 @@ "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, "electron-to-chromium": { - "version": "1.3.523", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.523.tgz", - "integrity": "sha512-D4/3l5DpciddD92IDRtpLearQSGzly8FwBJv+nITvLH8YJrFabpDFe4yuiOJh2MS4/EsXqyQTXyw1toeYPtshQ==", + "version": "1.4.284", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", + "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==", "dev": true }, "elliptic": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", - "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", "dev": true, "requires": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", + "bn.js": "^4.11.9", + "brorand": "^1.1.0", "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" }, "dependencies": { "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true } } @@ -20916,22 +23485,22 @@ "encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" }, "encoding": { "version": "0.1.13", "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "dev": true, + "devOptional": true, "requires": { "iconv-lite": "^0.6.2" }, "dependencies": { "iconv-lite": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz", - "integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==", - "dev": true, + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "devOptional": true, "requires": { "safer-buffer": ">= 2.1.2 < 3.0.0" } @@ -20948,9 +23517,9 @@ } }, "enhanced-resolve": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz", - "integrity": "sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz", + "integrity": "sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==", "dev": true, "requires": { "graceful-fs": "^4.1.2", @@ -20976,9 +23545,9 @@ "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" }, "errno": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", - "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", "dev": true, "requires": { "prr": "~1.0.1" @@ -21003,22 +23572,35 @@ } }, "es-abstract": { - "version": "1.17.6", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", - "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", + "version": "1.20.4", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.4.tgz", + "integrity": "sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==", "dev": true, "requires": { + "call-bind": "^1.0.2", "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.3", + "get-symbol-description": "^1.0.0", "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.0", - "is-regex": "^1.1.0", - "object-inspect": "^1.7.0", + "has-property-descriptors": "^1.0.0", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.2", "object-keys": "^1.1.1", - "object.assign": "^4.1.0", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trimend": "^1.0.5", + "string.prototype.trimstart": "^1.0.5", + "unbox-primitive": "^1.0.2" } }, "es-to-primitive": { @@ -21033,14 +23615,14 @@ } }, "es5-ext": { - "version": "0.10.53", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", - "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", + "version": "0.10.62", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz", + "integrity": "sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==", "dev": true, "requires": { - "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.3", - "next-tick": "~1.0.0" + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.3", + "next-tick": "^1.1.0" } }, "es6-error": { @@ -21052,7 +23634,7 @@ "es6-iterator": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==", "dev": true, "requires": { "d": "1", @@ -21063,7 +23645,7 @@ "es6-map": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", - "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", + "integrity": "sha512-mz3UqCh0uPCIqsw1SSAkB/p0rOzF/M0V++vyN7JqlPtSW/VsYgQBvVvqMLmfBuyMzTpLnNqi6JmcSizs4jy19A==", "dev": true, "requires": { "d": "1", @@ -21077,13 +23659,13 @@ "es6-promise": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz", - "integrity": "sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM=", + "integrity": "sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==", "dev": true }, "es6-promisify": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", - "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", + "integrity": "sha512-C+d6UdsYDk0lMebHNR4S2NybQMMngAOnOwYBQjTOiv0MkoJMP0Myw2mgpDLBcpfCmRLxyFqYhS/CfOENq4SJhQ==", "dev": true, "requires": { "es6-promise": "^4.0.3" @@ -21098,27 +23680,24 @@ } }, "es6-set": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", - "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.6.tgz", + "integrity": "sha512-TE3LgGLDIBX332jq3ypv6bcOpkLO0AslAQo7p2VqX/1N46YNsvIWgvjojjSEnWEGWMhr1qUbYeTSir5J6mFHOw==", "dev": true, "requires": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-symbol": "3.1.1", - "event-emitter": "~0.3.5" + "d": "^1.0.1", + "es5-ext": "^0.10.62", + "es6-iterator": "~2.0.3", + "es6-symbol": "^3.1.3", + "event-emitter": "^0.3.5", + "type": "^2.7.2" }, "dependencies": { - "es6-symbol": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", - "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "~0.10.14" - } + "type": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", + "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==", + "dev": true } } }, @@ -21145,20 +23724,20 @@ } }, "escalade": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.0.2.tgz", - "integrity": "sha512-gPYAU37hYCUhW5euPeR+Y74F7BL+IBsV93j5cvGriSaD1aG6MGsqsV1yamRdrWrb2j3aiZvb0X+UBOWpx3JWtQ==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", "dev": true }, "escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" }, "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true }, "escodegen": { @@ -21186,7 +23765,7 @@ "escope": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", - "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", + "integrity": "sha512-75IUQsusDdalQEW/G/2esa87J7raqdJF+Ca0/Xm5C3Q58Nr4yVYjZGp/P1+2xiEVgXRrA39dpRb8LcshajbqDQ==", "dev": true, "requires": { "es6-map": "^0.1.3", @@ -21242,30 +23821,39 @@ }, "dependencies": { "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", "dev": true }, "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true }, "strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", "dev": true, "requires": { "ansi-regex": "^3.0.0" @@ -21276,7 +23864,7 @@ "eslint-plugin-no-unsafe-innerhtml": { "version": "1.0.16", "resolved": "https://registry.npmjs.org/eslint-plugin-no-unsafe-innerhtml/-/eslint-plugin-no-unsafe-innerhtml-1.0.16.tgz", - "integrity": "sha1-fQKHjI6b95FriINtWsEitC8VGTI=", + "integrity": "sha512-zdymo/6S8sovPZPPcF07bblXIkflbzDoGXmWG2KIaiGY2DTWQxotCv4eRSpJp5xXS66uacLceMQXTzeI3im9+g==", "dev": true, "requires": { "eslint": "^3.7.1" @@ -21288,27 +23876,10 @@ "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==", "dev": true }, - "acorn-jsx": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", - "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", - "dev": true, - "requires": { - "acorn": "^3.0.4" - }, - "dependencies": { - "acorn": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", - "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", - "dev": true - } - } - }, "ajv": { "version": "4.11.8", "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", - "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", + "integrity": "sha512-I/bSHSNEcFFqXLf91nchoNB9D1Kie3QKcWdchYUaoIg1+1bdWDkdfdlvdIOJbi9U8xR0y+MWc5D+won9v95WlQ==", "dev": true, "requires": { "co": "^4.6.0", @@ -21318,25 +23889,26 @@ "ajv-keywords": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz", - "integrity": "sha1-MU3QpLM2j609/NxU7eYXG4htrzw=", - "dev": true + "integrity": "sha512-vuBv+fm2s6cqUyey2A7qYcvsik+GMDJsw8BARP2sDE76cqmaZVarsvHf7Vx6VJ0Xk8gLl+u3MoAPf6gKzJefeA==", + "dev": true, + "requires": {} }, "ansi-escapes": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", - "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", + "integrity": "sha512-wiXutNjDUlNEDWHcYH3jtZUhd3c4/VojassD8zHdHCY13xbZy2XbW+NKQwA0tWGBVzDA9qEzYwfoSsWmviidhw==", "dev": true }, "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "dev": true }, "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dev": true, "requires": { "ansi-styles": "^2.2.1", @@ -21349,16 +23921,25 @@ "cli-cursor": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", - "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", + "integrity": "sha512-25tABq090YNKkF6JH7lcwO0zFJTRke4Jcq9iX2nr/Sz0Cjjv4gckmwlW6Ty/aoyFd6z3ysR2hMGC2GFugmBo6A==", "dev": true, "requires": { "restore-cursor": "^1.0.1" } }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, "eslint": { "version": "3.19.0", "resolved": "https://registry.npmjs.org/eslint/-/eslint-3.19.0.tgz", - "integrity": "sha1-yPxiAcf0DdCJQbh8CFdnOGpnmsw=", + "integrity": "sha512-x6LJGXWCGB/4YOBhL48yeppZTo+YQUNC37N5qqCpC1b1kkNzydlQHQAtPuUSFoZSxgIadrysQoW2Hq602P+uEA==", "dev": true, "requires": { "babel-code-frame": "^6.16.0", @@ -21411,7 +23992,7 @@ "figures": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "integrity": "sha512-UxKlfCRuCBxSXU4C6t9scbDyWZ4VlaFFdojKtzJuSkuOBQ5CNFum+zZXFwHjo+CxBC1t6zlYPgHIgFjL8ggoEQ==", "dev": true, "requires": { "escape-string-regexp": "^1.0.5", @@ -21427,7 +24008,7 @@ "inquirer": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-0.12.0.tgz", - "integrity": "sha1-HvK/1jUE3wvHV4X/+MLEHfEvB34=", + "integrity": "sha512-bOetEz5+/WpgaW4D1NYOk1aD+JCqRjqu/FwRFgnIfiP7FC/zinsrfyO1vlS3nyH/R7S0IH3BIHBu4DBIDSqiGQ==", "dev": true, "requires": { "ansi-escapes": "^1.1.0", @@ -21443,39 +24024,76 @@ "string-width": "^1.0.1", "strip-ansi": "^3.0.0", "through": "^2.3.6" + }, + "dependencies": { + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + } } }, "is-fullwidth-code-point": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", "dev": true, "requires": { "number-is-nan": "^1.0.0" } }, + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "onetime": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", - "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", + "integrity": "sha512-GZ+g4jayMqzCRMgB2sol7GiCLjKfS1PINkjmx8spcKce1LiVqcbQreXwqs2YAFXC6R03VIG28ZS31t8M866v6A==", "dev": true }, "pluralize": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-1.2.1.tgz", - "integrity": "sha1-0aIUg/0iu0HlihL6NCGCMUCJfEU=", + "integrity": "sha512-TH+BeeL6Ct98C7as35JbZLf8lgsRzlNJb5gklRIGHKaPkGl1esOKBc5ALUMd+q08Sr6tiEKM+Icbsxg5vuhMKQ==", "dev": true }, "progress": { "version": "1.1.8", "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", - "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=", + "integrity": "sha512-UdA8mJ4weIkUBO224tIarHzuHs4HuYiJvsuGT7j/SPQiUJVjYvNDBIPa0hAorduOfjGohB/qHWRa/lrrWX/mXw==", "dev": true }, + "rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "dev": true, + "requires": { + "resolve": "^1.1.6" + } + }, "restore-cursor": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", - "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "integrity": "sha512-reSjH4HuiFlxlaBaFCiS6O76ZGG2ygKoSlCsipKdaZuKSPx/+bt9mULkn4l0asVzbEfQQmXRg6Wp6gv6m0wElw==", "dev": true, "requires": { "exit-hook": "^1.0.0", @@ -21485,7 +24103,7 @@ "run-async": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/run-async/-/run-async-0.1.0.tgz", - "integrity": "sha1-yK1KXhEGYeQCp9IbUw4AnyX444k=", + "integrity": "sha512-qOX+w+IxFgpUpJfkv2oGN0+ExPs68F4sZHfaRRx4dDexAQkG83atugKVEylyT5ARees3HBbfmuvnjbrd8j9Wjw==", "dev": true, "requires": { "once": "^1.3.0" @@ -21494,7 +24112,7 @@ "shelljs": { "version": "0.7.8", "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.8.tgz", - "integrity": "sha1-3svPh0sNHl+3LhSxZKloMEjprLM=", + "integrity": "sha512-/YF5Uk8hcwi7ima04ppkbA4RaRMdPMBfwAvAf8sufYOxsJRtbdoBsT8vGvlb+799BrlGdYrd+oczIA2eN2JdWA==", "dev": true, "requires": { "glob": "^7.0.0", @@ -21505,30 +24123,19 @@ "slice-ansi": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", - "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=", + "integrity": "sha512-up04hB2hR92PgjpyU3y/eg91yIBILyjVY26NvvciY3EVVPjybkMszMpXQ9QAkcS3I5rtJBDLoTxxg+qvW8c7rw==", "dev": true }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "dev": true }, "table": { "version": "3.8.3", "resolved": "https://registry.npmjs.org/table/-/table-3.8.3.tgz", - "integrity": "sha1-K7xULw/amGGnVdOUf+/Ys/UThV8=", + "integrity": "sha512-RZuzIOtzFbprLCE0AXhkI0Xi42ZJLZhCC+qkwuMLf/Vjz3maWpA8gz1qMdbmNoI9cOROT2Am/DxeRyXenrL11g==", "dev": true, "requires": { "ajv": "^4.7.0", @@ -21537,39 +24144,6 @@ "lodash": "^4.0.0", "slice-ansi": "0.0.4", "string-width": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } } } } @@ -21608,10 +24182,17 @@ }, "dependencies": { "acorn": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", - "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", + "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", "dev": true + }, + "acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "requires": {} } } }, @@ -21622,29 +24203,37 @@ "dev": true }, "esquery": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", - "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, "requires": { "estraverse": "^5.1.0" }, "dependencies": { "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true } } }, "esrecurse": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, "requires": { - "estraverse": "^4.1.0" + "estraverse": "^5.2.0" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } } }, "estraverse": { @@ -21661,7 +24250,7 @@ "etag": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==" }, "ev-emitter": { "version": "1.1.1", @@ -21672,7 +24261,7 @@ "event-emitter": { "version": "0.3.5", "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", - "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==", "dev": true, "requires": { "d": "1", @@ -21682,19 +24271,19 @@ "event-to-promise": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/event-to-promise/-/event-to-promise-0.8.0.tgz", - "integrity": "sha1-S4TxF3K28l93Uvx02XFTGsb1tiY=", + "integrity": "sha512-/J+h6lLXMhNrahk5XipFHjSOlTv4Zl+D5rXomuhT3MIUxkP7beRxazgCQ6ERYJTFPPM8WC8dbHIeQc1VaKrOxw==", "dev": true }, "eventemitter2": { "version": "0.4.14", "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz", - "integrity": "sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas=", + "integrity": "sha512-K7J4xq5xAD5jHsGM5ReWXRTFa3JRGofHiMcVgQ8PRwgWxzjHpMWCIzsmyf60+mh8KLsqYPcjUMa0AC4hd6lPyQ==", "dev": true }, "events": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.2.0.tgz", - "integrity": "sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", "dev": true }, "evp_bytestokey": { @@ -21725,19 +24314,19 @@ "exit": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", "dev": true }, "exit-hook": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", - "integrity": "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=", + "integrity": "sha512-MsG3prOVw1WtLXAZbM3KiYtooKR1LvxHh3VHsVtIy0uiUu8usxgB/94DP2HxtD/661lLdB6yzQ09lGJSQr6nkg==", "dev": true }, "expand-brackets": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "integrity": "sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==", "dev": true, "requires": { "debug": "^2.3.3", @@ -21749,90 +24338,169 @@ "to-regex": "^3.0.1" }, "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, "define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", "dev": true, "requires": { "is-descriptor": "^0.1.0" } }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "dev": true, "requires": { - "is-extendable": "^0.1.0" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" } + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true } } }, "expand-tilde": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", - "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", + "integrity": "sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==", "dev": true, "requires": { "homedir-polyfill": "^1.0.1" } }, "express": { - "version": "4.17.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", - "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", "requires": { - "accepts": "~1.3.7", + "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.19.0", - "content-disposition": "0.5.3", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.4.0", + "cookie": "0.5.0", "cookie-signature": "1.0.6", "debug": "2.6.9", - "depd": "~1.1.2", + "depd": "2.0.0", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "~1.1.2", + "finalhandler": "1.2.0", "fresh": "0.5.2", + "http-errors": "2.0.0", "merge-descriptors": "1.0.1", "methods": "~1.1.2", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "parseurl": "~1.3.3", "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.5", - "qs": "6.7.0", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", "range-parser": "~1.2.1", - "safe-buffer": "5.1.2", - "send": "0.17.1", - "serve-static": "1.14.1", - "setprototypeof": "1.1.1", - "statuses": "~1.5.0", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", "type-is": "~1.6.18", "utils-merge": "1.0.1", "vary": "~1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } } }, "express-sslify": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/express-sslify/-/express-sslify-1.2.0.tgz", - "integrity": "sha1-MOhLzu0VV+sYdnK74UMKCioQDZw=" + "integrity": "sha512-OOf2B3MxAVjEXPPWl4Z19wA2oMH+RCULJVhejPwuhiDDClr9QczZz5ycABLSnnN+oY8JcLs32ghs9cxOj0vi+w==" }, "ext": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", - "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", + "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", "dev": true, "requires": { - "type": "^2.0.0" + "type": "^2.7.2" }, "dependencies": { "type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", - "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==", + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", + "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==", "dev": true } } @@ -21844,24 +24512,12 @@ "dev": true }, "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "dev": true, "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } + "is-extendable": "^0.1.0" } }, "external-editor": { @@ -21878,64 +24534,26 @@ "extglob": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", "dev": true, "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" + "is-descriptor": "^1.0.0" } } } @@ -21950,12 +24568,38 @@ "debug": "^2.6.9", "mkdirp": "^0.5.4", "yauzl": "^2.10.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + } } }, "extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", "dev": true }, "fast-deep-equal": { @@ -21982,7 +24626,7 @@ "fast-deep-equal": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "integrity": "sha512-bCK/2Z4zLidyB4ReuIsvALH6w31YfAQDmXMqMx6FyfHqvBxtjC0eRumeSu4Bs3XtXwpyIywtSTrVT99BxY1f9w==", "dev": true } } @@ -21996,7 +24640,7 @@ "fast-levenshtein": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", "dev": true }, "fast-redact": { @@ -22006,15 +24650,15 @@ "dev": true }, "fast-safe-stringify": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz", - "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==", "dev": true }, "faye-websocket": { "version": "0.10.0", "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", - "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", + "integrity": "sha512-Xhj93RXbMSq8urNCUq4p9l0P6hnySJ/7YNRhYNug0bLOuii7pKO7xQFb5mx9xZXWCar88pLPb805PvUkwrLZpQ==", "dev": true, "requires": { "websocket-driver": ">=0.5.1" @@ -22023,7 +24667,7 @@ "fd-slicer": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", "dev": true, "requires": { "pend": "~1.2.0" @@ -22038,7 +24682,7 @@ "figures": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "integrity": "sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==", "dev": true, "requires": { "escape-string-regexp": "^1.0.5" @@ -22047,7 +24691,7 @@ "file-entry-cache": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", - "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", + "integrity": "sha512-uXP/zGzxxFvFfcZGgBIwotm+Tdc55ddPAzF7iHshP4YGaXMww7rSF9peD9D1sui5ebONg5UobsZv+FfgEpGv/w==", "dev": true, "requires": { "flat-cache": "^1.2.1", @@ -22057,7 +24701,7 @@ "file-sync-cmp": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/file-sync-cmp/-/file-sync-cmp-0.1.1.tgz", - "integrity": "sha1-peeo/7+kk7Q7kju9TKiaU7Y7YSs=", + "integrity": "sha512-0k45oWBokCqh2MOexeYKpyqmGKG+8mQ2Wd8iawx+uWd/weWJQAZ6SoPybagdCI4xFisag8iAR77WPm4h3pTfxA==", "dev": true }, "file-uri-to-path": { @@ -22069,64 +24713,69 @@ "fill-range": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", "dev": true, "requires": { "extend-shallow": "^2.0.1", "is-number": "^3.0.0", "repeat-string": "^1.6.1", "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } } }, "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", "requires": { "debug": "2.6.9", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "parseurl": "~1.3.3", - "statuses": "~1.5.0", + "statuses": "2.0.1", "unpipe": "~1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } } }, "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", "dev": true, "requires": { "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" } }, "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "requires": { - "locate-path": "^3.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" } }, "findup-sync": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz", - "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=", + "integrity": "sha512-z8Nrwhi6wzxNMIbxlrTzuUW6KWuKkogZ/7OdDVq+0+kxn77KUH1nipx8iU6suqkHqc4y6n7a9A8IpmxY/pTjWg==", "dev": true, "requires": { "glob": "~5.0.0" @@ -22135,7 +24784,7 @@ "glob": { "version": "5.0.15", "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "integrity": "sha512-c9IPMazfRITpmAAKi22dK1VKxGDX9ehhqfABDriL/lzO92xcUKEJPQHrVA/2YHSNFB4iFlykVmWvwo48nr3OxA==", "dev": true, "requires": { "inflight": "^1.0.4", @@ -22158,6 +24807,17 @@ "object.defaults": "^1.1.0", "object.pick": "^1.2.0", "parse-filepath": "^1.0.1" + }, + "dependencies": { + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + } } }, "firefox-profile": { @@ -22182,7 +24842,7 @@ "archiver": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/archiver/-/archiver-2.1.1.tgz", - "integrity": "sha1-/2YrSnggFJSj7lRNOjP+dJZQnrw=", + "integrity": "sha512-01psM0DMD3YItvhnAXZODfsViaeDidrJwfne3lsoVrbyYa/xFQwTbVjY+2WlEBm7qH1fCsyxAA1SgNr/XenTlQ==", "dev": true, "requires": { "archiver-utils": "^1.3.0", @@ -22209,7 +24869,7 @@ "first-chunk-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-2.0.0.tgz", - "integrity": "sha1-G97NuOCDwGZLkZRVgVd6Q6nzHXA=", + "integrity": "sha512-X8Z+b/0L4lToKYq+lwnKqi9X/Zek0NibLpsJgVsSxpoYq7JtiCtRb5HqKVEjEw/qAb/4AKKRLOwwKHlWNpm2Eg==", "dev": true, "requires": { "readable-stream": "^2.0.2" @@ -22262,7 +24922,7 @@ "flipclock": { "version": "0.7.8", "resolved": "https://registry.npmjs.org/flipclock/-/flipclock-0.7.8.tgz", - "integrity": "sha1-838ffKkETZAsH+4fGuf0vR7vGlQ=", + "integrity": "sha512-YkMQ5krRzxZJz38m8aJuyPqtphPdnXmas4kNLZbAwu3FNNwsRsg3gzUJM0onWDy34tDlh20IUSSmKiyuE8QJjg==", "dev": true, "requires": { "jquery": ">=1.7" @@ -22287,13 +24947,13 @@ "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", "dev": true }, "for-own": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", - "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "integrity": "sha512-0OABksIGrxKK8K4kynWkQ7y1zounQxP+CWnyclVwj81KW3vlLlGUx57DKGcP/LH216GzqnstnPocF16Nxs0Ycg==", "dev": true, "requires": { "for-in": "^1.0.1" @@ -22302,7 +24962,7 @@ "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", "dev": true }, "form-data": { @@ -22317,14 +24977,14 @@ } }, "forwarded": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==" }, "fragment-cache": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "integrity": "sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==", "dev": true, "requires": { "map-cache": "^0.2.2" @@ -22333,12 +24993,12 @@ "fresh": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==" }, "from2": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "integrity": "sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==", "dev": true, "requires": { "inherits": "^2.0.1", @@ -22365,7 +25025,7 @@ "fs-write-stream-atomic": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "integrity": "sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA==", "dev": true, "requires": { "graceful-fs": "^4.1.2", @@ -22377,7 +25037,7 @@ "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", "dev": true }, "fsevents": { @@ -22390,7 +25050,7 @@ "ftp": { "version": "0.3.10", "resolved": "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz", - "integrity": "sha1-kZfYYa2BQvPmPVqDv+TFn3MwiF0=", + "integrity": "sha512-faFVML1aBx2UoDStmLwv2Wptt4vw5x03xxX172nhA5Y5HBshW5JweqQ2W4xL4dezQTG8inJsuYcpPHHU3X5OTQ==", "dev": true, "requires": { "readable-stream": "1.1.x", @@ -22400,13 +25060,13 @@ "isarray": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", "dev": true }, "readable-stream": { "version": "1.1.14", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", "dev": true, "requires": { "core-util-is": "~1.0.0", @@ -22414,25 +25074,54 @@ "isarray": "0.0.1", "string_decoder": "~0.10.x" } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true + }, + "xregexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz", + "integrity": "sha512-xl/50/Cf32VsGq/1R8jJE5ajH1yMCQkpmoS10QbFZWl2Oor4H0Me64Pu2yxvsRWK3m6soJbmGfzSR7BYmDcWAA==", + "dev": true } } }, "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "function.prototype.name": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + } }, "functional-red-black-tree": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", + "dev": true + }, + "functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", "dev": true }, "fx-runner": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/fx-runner/-/fx-runner-1.0.9.tgz", - "integrity": "sha1-eyPzdz3HaqzELxHZr/J2lnXLY/A=", + "integrity": "sha512-/9YF7XcTd/Ee2p2EV/1ZwnXEg8WkwTXHW7GfYYq9eaz5YAwqF22J95A8lPo/rcKP+Qy+SwEwNRcpRZTUFna2DA==", "dev": true, "requires": { "commander": "2.9.0", @@ -22447,7 +25136,7 @@ "commander": { "version": "2.9.0", "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", - "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=", + "integrity": "sha512-bmkUukX8wAOjHdN26xj5c4ctEV22TQ7dQYhSmuckKhToXrkUn0iIaolHdIxYYqD55nhpSPA9zPQ1yP57GdXP2A==", "dev": true, "requires": { "graceful-readlink": ">= 1.0.0" @@ -22456,7 +25145,7 @@ "is-absolute": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-0.1.7.tgz", - "integrity": "sha1-hHSREZ/MtftDYhfMc39/qtUPYD8=", + "integrity": "sha512-Xi9/ZSn4NFapG8RP98iNPMOeaV3mXPisxKxzKtHVqr3g56j/fBn+yZmnxSVAA8lmZbl2J9b/a4kJvfU3hqQYgA==", "dev": true, "requires": { "is-relative": "^0.1.0" @@ -22465,13 +25154,13 @@ "is-relative": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-0.1.3.tgz", - "integrity": "sha1-kF/uiuhvRbPsYUvDwVyGnfCHboI=", + "integrity": "sha512-wBOr+rNM4gkAZqoLRJI4myw5WzzIdQosFAAbnvfXP5z1LyzgAI3ivOKehC5KfqlQJZoihVhirgtCBj378Eg8GA==", "dev": true }, "isexe": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/isexe/-/isexe-1.1.2.tgz", - "integrity": "sha1-NvPiLmB1CSD15yQaR2qMakInWtA=", + "integrity": "sha512-d2eJzK691yZwPHcv1LbeAOa91yMJ9QmfTgSO1oXB65ezVhXQsxBac2vEB4bMVms9cGzaA99n6V2viHMq82VLDw==", "dev": true }, "lodash": { @@ -22483,7 +25172,7 @@ "which": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/which/-/which-1.2.4.tgz", - "integrity": "sha1-FVf5YIBgTlsRs1meufRbUKnv1yI=", + "integrity": "sha512-zDRAqDSBudazdfM9zpiI30Fu9ve47htYXcGi3ln0wfKu2a7SmrT6F3VDoYONu//48V8Vz4TdCRNPjtvyRO3yBA==", "dev": true, "requires": { "is-absolute": "^0.1.7", @@ -22513,16 +25202,16 @@ "generate-object-property": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", - "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=", + "integrity": "sha512-TuOwZWgJ2VAMEGJvAyPWvpqxSANF0LDpmyHauMjFYzaACvn+QTT/AZomvPCzVBV7yDN3OmwHQ5OvHaeLKre3JQ==", "dev": true, "requires": { "is-property": "^1.0.0" } }, "gensync": { - "version": "1.0.0-beta.1", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", - "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==", + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "dev": true }, "get-caller-file": { @@ -22534,9 +25223,19 @@ "get-func-name": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", - "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=", + "integrity": "sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==", "dev": true }, + "get-intrinsic": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + } + }, "get-size": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/get-size/-/get-size-2.0.3.tgz", @@ -22546,9 +25245,19 @@ "get-stream": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "integrity": "sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==", "dev": true }, + "get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + } + }, "get-uri": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.4.tgz", @@ -22561,24 +25270,41 @@ "file-uri-to-path": "1", "ftp": "~0.3.10", "readable-stream": "2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + } } }, "get-value": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "integrity": "sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==", "dev": true }, "getobject": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/getobject/-/getobject-0.1.0.tgz", - "integrity": "sha1-BHpEl4n6Fg0Bj1SG7ZEyC27HiFw=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/getobject/-/getobject-1.0.2.tgz", + "integrity": "sha512-2zblDBaFcb3rB4rF77XVnuINOE2h2k/OnqXAiy0IrTxUfV1iFp3la33oAQVY9pCpWU268WFYVt2t71hlMuLsOg==", "dev": true }, "getpass": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", "dev": true, "requires": { "assert-plus": "^1.0.0" @@ -22587,7 +25313,7 @@ "gettext-parser": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/gettext-parser/-/gettext-parser-1.1.0.tgz", - "integrity": "sha1-LFpmONiTk0ubVQN9CtgstwBLJnk=", + "integrity": "sha512-zL3eayB0jF+cr6vogH/VJKoKcj7uQj2TPByaaj6a4k/3elk9iq7fiwCM2FqdzS/umo021RetSanVisarzeb9Wg==", "dev": true, "requires": { "encoding": "^0.1.11" @@ -22596,7 +25322,7 @@ "git-rev-sync": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/git-rev-sync/-/git-rev-sync-1.9.1.tgz", - "integrity": "sha1-oMLj3TkqvPa3aWLif8dfsyI0Sc4=", + "integrity": "sha512-n6yNICNnWOe0uR2XAQQyBIVMCCCEPFY6dkun9s+9QM39nJpmPxgU48BX4UlLh95MXU5cbkhpbIP7RHOw5ujPew==", "dev": true, "requires": { "escape-string-regexp": "1.0.5", @@ -22607,13 +25333,22 @@ "graceful-fs": { "version": "4.1.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "integrity": "sha512-9x6DLUuW+ROFdMTII9ec9t/FK8va6kYcC8/LggumssLM8kNv7IdFl3VrNUqgir2tJuBVxBga1QBoRziZacO5Zg==", "dev": true }, + "rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "dev": true, + "requires": { + "resolve": "^1.1.6" + } + }, "shelljs": { "version": "0.7.7", "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.7.tgz", - "integrity": "sha1-svXHfvlxSPS09uImguELuoZnz/E=", + "integrity": "sha512-5ZXTlakejjdxXAnFl23pgPDzCcyPoshqMVWYqMH8HiP1R+i4auEKHabljL6XQlhQV58jkSRTR33Fq7OlxyLLTg==", "dev": true, "requires": { "glob": "^7.0.0", @@ -22624,9 +25359,9 @@ } }, "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", "dev": true, "requires": { "fs.realpath": "^1.0.0", @@ -22640,11 +25375,22 @@ "glob-parent": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==", "dev": true, "requires": { "is-glob": "^3.1.0", "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } } }, "global": { @@ -22660,7 +25406,7 @@ "global-dirs": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", - "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", + "integrity": "sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg==", "dev": true, "requires": { "ini": "^1.3.4" @@ -22680,7 +25426,7 @@ "global-prefix": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", - "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", + "integrity": "sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg==", "dev": true, "requires": { "expand-tilde": "^2.0.2", @@ -22688,6 +25434,17 @@ "ini": "^1.3.4", "is-windows": "^1.0.1", "which": "^1.2.14" + }, + "dependencies": { + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + } } }, "globals": { @@ -22697,20 +25454,20 @@ "dev": true }, "globule": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.2.tgz", - "integrity": "sha512-7IDTQTIu2xzXkT+6mlluidnWo+BypnbSoEVVQCGfzqnl5Ik8d3e1d4wycb8Rj9tWW+Z39uPWsdlquqiqPCd/pA==", + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.4.tgz", + "integrity": "sha512-OPTIfhMBh7JbBYDpa5b+Q5ptmMWKwcNcFSR/0c6t8V4f3ZAVBEsKNY37QdVqmLRYSMhOUGYrY0QhSoEpzGr/Eg==", "dev": true, "requires": { "glob": "~7.1.1", - "lodash": "~4.17.10", + "lodash": "^4.17.21", "minimatch": "~3.0.2" } }, "got": { "version": "6.7.1", "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", - "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", + "integrity": "sha512-Y/K3EDuiQN9rTZhBvPRWMLXIKdeD1Rj0nzunfoi0Yyn5WBEbzxXKU9Ub2X41oZBagVWOBU3MuDonFMgPWQFnwg==", "dev": true, "requires": { "create-error-class": "^3.0.0", @@ -22727,15 +25484,15 @@ } }, "graceful-fs": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", - "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", "dev": true }, "graceful-readlink": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", - "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=", + "integrity": "sha512-8tLu60LgxF6XpdbK8OW3FA+IfTNBn1ZHGHKF4KQbEeSkajYw5PlYJcKluntgegDPTg8UkHjpet1T82vk6TQ68w==", "dev": true }, "graphlib": { @@ -22756,13 +25513,13 @@ "growly": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", - "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", + "integrity": "sha512-+xGQY0YyAWCnqy7Cd++hc2JqMYzlm0dG30Jd0beaA64sROr8C4nt8Yc9V5Ro3avlSUDTN0ulqP/VBKi1/lLygw==", "dev": true }, "grunt": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.2.1.tgz", - "integrity": "sha512-zgJjn9N56tScvRt/y0+1QA+zDBnKTrkpyeSBqQPLcZvbqTD/oyGMrdZQXmm6I3828s+FmPvxc3Xv+lgKFtudOw==", + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.5.3.tgz", + "integrity": "sha512-mKwmo4X2d8/4c/BmcOETHek675uOqw0RuA/zy12jaspWqvTp4+ZeQF1W+OTpcbncnaBsfbQJ6l0l4j+Sn/GmaQ==", "dev": true, "requires": { "dateformat": "~3.0.3", @@ -22770,37 +25527,29 @@ "exit": "~0.1.2", "findup-sync": "~0.3.0", "glob": "~7.1.6", - "grunt-cli": "~1.3.2", - "grunt-known-options": "~1.1.0", - "grunt-legacy-log": "~2.0.0", - "grunt-legacy-util": "~1.1.1", + "grunt-cli": "~1.4.3", + "grunt-known-options": "~2.0.0", + "grunt-legacy-log": "~3.0.0", + "grunt-legacy-util": "~2.0.1", "iconv-lite": "~0.4.13", "js-yaml": "~3.14.0", "minimatch": "~3.0.4", "mkdirp": "~1.0.4", "nopt": "~3.0.6", "rimraf": "~3.0.2" - }, - "dependencies": { - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - } } }, "grunt-cli": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.3.2.tgz", - "integrity": "sha512-8OHDiZZkcptxVXtMfDxJvmN7MVJNE8L/yIcPb4HB7TlyFD1kDvjHrb62uhySsU14wJx9ORMnTuhRMQ40lH/orQ==", + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.4.3.tgz", + "integrity": "sha512-9Dtx/AhVeB4LYzsViCjUQkd0Kw0McN2gYpdmGYKtE2a5Yt7v1Q+HYZVWhqXc/kGnxlMtqKDxSwotiGeFmkrCoQ==", "dev": true, "requires": { - "grunt-known-options": "~1.1.0", + "grunt-known-options": "~2.0.0", "interpret": "~1.1.0", - "liftoff": "~2.5.0", + "liftup": "~3.0.1", "nopt": "~4.0.1", - "v8flags": "~3.1.1" + "v8flags": "~3.2.0" }, "dependencies": { "nopt": { @@ -22818,7 +25567,7 @@ "grunt-contrib-clean": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/grunt-contrib-clean/-/grunt-contrib-clean-1.1.0.tgz", - "integrity": "sha1-Vkq/LQN4qYOhW54/MO51tzjEBjg=", + "integrity": "sha512-tET+TYTd8vCtKeGwbLjoH8+SdI8ngVzGbPr7vlWkewG7mYYHIccd2Ldxq+PK3DyBp5Www3ugdkfsjoNKUl5MTg==", "dev": true, "requires": { "async": "^1.5.2", @@ -22839,7 +25588,7 @@ "grunt-contrib-connect": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/grunt-contrib-connect/-/grunt-contrib-connect-1.0.2.tgz", - "integrity": "sha1-XPkzuRpnOGBEJzwLJERgPNmIebo=", + "integrity": "sha512-7OPoyfGrpOYzuiRPzGyzWDe/xFcjttXe1ztVSFS8TAVBtpfXeeOV9RiwuyqA4yN1UeOG2Pnpx8s0DcUDAu21Gw==", "dev": true, "requires": { "async": "^1.5.2", @@ -22856,7 +25605,7 @@ "grunt-contrib-copy": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/grunt-contrib-copy/-/grunt-contrib-copy-1.0.0.tgz", - "integrity": "sha1-cGDGWB6QS4qw0A8HbgqPbj58NXM=", + "integrity": "sha512-gFRFUB0ZbLcjKb67Magz1yOHGBkyU6uL29hiEW1tdQ9gQt72NuMKIy/kS6dsCbV0cZ0maNCb0s6y+uT1FKU7jA==", "dev": true, "requires": { "chalk": "^1.1.1", @@ -22866,13 +25615,13 @@ "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "dev": true }, "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dev": true, "requires": { "ansi-styles": "^2.2.1", @@ -22885,7 +25634,7 @@ "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "dev": true } } @@ -22893,7 +25642,7 @@ "grunt-contrib-pug": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/grunt-contrib-pug/-/grunt-contrib-pug-1.0.0.tgz", - "integrity": "sha1-tSWlwK/wRiL3Vw4x+SQQbxb4G0Y=", + "integrity": "sha512-VfP4Jzf8u2DK8oFsNWMKvJOjnNAYOBOCfcatt7VSJlpo6zQG2fFjPmbUqgtfff450HEnM7qY5m6ix77JyNuYmw==", "dev": true, "requires": { "chalk": "^1.0.0", @@ -22903,13 +25652,13 @@ "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "dev": true }, "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dev": true, "requires": { "ansi-styles": "^2.2.1", @@ -22922,7 +25671,7 @@ "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "dev": true } } @@ -22930,7 +25679,7 @@ "grunt-contrib-stylus": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/grunt-contrib-stylus/-/grunt-contrib-stylus-1.2.0.tgz", - "integrity": "sha1-R9RG7wVESW7/naQY0A9XdFQ0crs=", + "integrity": "sha512-L+XT68YNgvpucbwczexLhkCXYcQdI1ozQZprSuFzMY8/sodFWD3gZfqSu/HUeK87g/ov09Yla24mMiNBhfaKcg==", "dev": true, "requires": { "async": "^1.5.2", @@ -22943,13 +25692,13 @@ "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "dev": true }, "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dev": true, "requires": { "ansi-styles": "^2.2.1", @@ -22962,7 +25711,7 @@ "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "dev": true } } @@ -22980,9 +25729,9 @@ }, "dependencies": { "async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", "dev": true, "requires": { "lodash": "^4.17.14" @@ -22993,7 +25742,7 @@ "grunt-crx": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/grunt-crx/-/grunt-crx-1.0.5.tgz", - "integrity": "sha1-nU5QHO8WtyF3KmBBxNQdH5KFirU=", + "integrity": "sha512-CVmBxn3ScZX2uzyS7KQ24MpFVYFIi6pX4aEZ4zcKICzsRi7DFW8XMPY5QdKEzsNefK5XOnrOpXnbht5BUDl9Xw==", "dev": true, "requires": { "crx": "^3.0.1", @@ -23001,55 +25750,126 @@ "mkdirp": "^0.5.0", "os-homedir": "^1.0.1", "xtend": "^4.0.1" + }, + "dependencies": { + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + } } }, "grunt-exec": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/grunt-exec/-/grunt-exec-3.0.0.tgz", "integrity": "sha512-cgAlreXf3muSYS5LzW0Cc4xHK03BjFOYk0MqCQ/MZ3k1Xz2GU7D+IAJg4UKicxpO+XdONJdx/NJ6kpy2wI+uHg==", - "dev": true + "dev": true, + "requires": {} }, "grunt-known-options": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.1.tgz", - "integrity": "sha512-cHwsLqoighpu7TuYj5RonnEuxGVFnztcUqTqp5rXFGYL4OuPFofwC4Ycg7n9fYwvK6F5WbYgeVOwph9Crs2fsQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-2.0.0.tgz", + "integrity": "sha512-GD7cTz0I4SAede1/+pAbmJRG44zFLPipVtdL9o3vqx9IEyb7b4/Y3s7r6ofI3CchR5GvYJ+8buCSioDv5dQLiA==", "dev": true }, "grunt-legacy-log": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-2.0.0.tgz", - "integrity": "sha512-1m3+5QvDYfR1ltr8hjiaiNjddxGdQWcH0rw1iKKiQnF0+xtgTazirSTGu68RchPyh1OBng1bBUjLmX8q9NpoCw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-3.0.0.tgz", + "integrity": "sha512-GHZQzZmhyq0u3hr7aHW4qUH0xDzwp2YXldLPZTCjlOeGscAOWWPftZG3XioW8MasGp+OBRIu39LFx14SLjXRcA==", "dev": true, "requires": { "colors": "~1.1.2", - "grunt-legacy-log-utils": "~2.0.0", + "grunt-legacy-log-utils": "~2.1.0", "hooker": "~0.2.3", - "lodash": "~4.17.5" + "lodash": "~4.17.19" } }, "grunt-legacy-log-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.0.1.tgz", - "integrity": "sha512-o7uHyO/J+i2tXG8r2bZNlVk20vlIFJ9IEYyHMCQGfWYru8Jv3wTqKZzvV30YW9rWEjq0eP3cflQ1qWojIe9VFA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.1.0.tgz", + "integrity": "sha512-lwquaPXJtKQk0rUM1IQAop5noEpwFqOXasVoedLeNzaibf/OPWjKYvvdqnEHNmU+0T0CaReAXIbGo747ZD+Aaw==", "dev": true, "requires": { - "chalk": "~2.4.1", - "lodash": "~4.17.10" + "chalk": "~4.1.0", + "lodash": "~4.17.19" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } } }, "grunt-legacy-util": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-1.1.1.tgz", - "integrity": "sha512-9zyA29w/fBe6BIfjGENndwoe1Uy31BIXxTH3s8mga0Z5Bz2Sp4UCjkeyv2tI449ymkx3x26B+46FV4fXEddl5A==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-2.0.1.tgz", + "integrity": "sha512-2bQiD4fzXqX8rhNdXkAywCadeqiPiay0oQny77wA2F3WF4grPJXCvAcyoWUJV+po/b15glGkxuSiQCK299UC2w==", "dev": true, "requires": { - "async": "~1.5.2", - "exit": "~0.1.1", - "getobject": "~0.1.0", + "async": "~3.2.0", + "exit": "~0.1.2", + "getobject": "~1.0.0", "hooker": "~0.2.3", - "lodash": "~4.17.10", - "underscore.string": "~3.3.4", - "which": "~1.3.0" + "lodash": "~4.17.21", + "underscore.string": "~3.3.5", + "which": "~2.0.2" + }, + "dependencies": { + "async": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", + "dev": true + } } }, "grunt-mocha-test": { @@ -23060,6 +25880,17 @@ "requires": { "hooker": "^0.2.3", "mkdirp": "^0.5.0" + }, + "dependencies": { + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + } } }, "grunt-webpack": { @@ -23075,7 +25906,7 @@ "har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", "dev": true }, "har-validator": { @@ -23092,7 +25923,6 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, "requires": { "function-bind": "^1.1.1" } @@ -23100,33 +25930,56 @@ "has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", "dev": true, "requires": { "ansi-regex": "^2.0.0" } }, + "has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true + }, "has-color": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", - "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", + "integrity": "sha512-kaNz5OTAYYmt646Hkqw50/qyxP2vFnTVu5AQ1Zmk22Kk5+4Qx6BpO8+u7IKsML5fOsFk0ZT0AcCJNYwcvaLBvw==", "dev": true }, "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true }, + "has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.1" + } + }, "has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" + }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "requires": { + "has-symbols": "^1.0.2" + } }, "has-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "integrity": "sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==", "dev": true, "requires": { "get-value": "^2.0.6", @@ -23137,7 +25990,7 @@ "has-values": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "integrity": "sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==", "dev": true, "requires": { "is-number": "^3.0.0", @@ -23147,7 +26000,7 @@ "kind-of": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "integrity": "sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==", "dev": true, "requires": { "is-buffer": "^1.1.5" @@ -23158,7 +26011,7 @@ "hasbin": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/hasbin/-/hasbin-1.2.3.tgz", - "integrity": "sha1-eMWSaJPIAhXCtWiuH9P8q3omlrA=", + "integrity": "sha512-CCd8e/w2w28G8DyZvKgiHnQJ/5XXDz6qiUHnthvtag/6T5acUeN5lqq+HMoBqcmgWueWDhiCplrw0Kb1zDACRg==", "dev": true, "requires": { "async": "~1.5" @@ -23175,36 +26028,15 @@ "safe-buffer": "^5.2.0" }, "dependencies": { - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "dev": true, "requires": { - "safe-buffer": "~5.2.0" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" } } } @@ -23222,19 +26054,19 @@ "he": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", - "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", + "integrity": "sha512-z/GDPjlRMNOa2XJiB4em8wJpuuBfrFOlYKTZxtpkdr1uPdibHI8rYA3MY0KDObpVyaes0e/aunid/t88ZI2EKA==", "dev": true }, "highlight.js": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.4.1.tgz", - "integrity": "sha512-yR5lWvNz7c85OhVAEAeFhVCc/GV4C30Fjzc/rCP0aCWzc1UUOPUk55dK/qdwTZHBvMZo+eZ2jpk62ndX/xMFlg==", + "version": "10.7.3", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.3.tgz", + "integrity": "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==", "dev": true }, "hmac-drbg": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", "dev": true, "requires": { "hash.js": "^1.0.3", @@ -23245,7 +26077,7 @@ "home-or-tmp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", - "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", + "integrity": "sha512-ycURW7oUxE2sNiPVw1HVEFsW+ecOpJ5zaj7eC0RlwhibhRBod20muUN8qu/gzx956YrLolVvs1MTXwKgC2rVEg==", "dev": true, "requires": { "os-homedir": "^1.0.0", @@ -23264,13 +26096,13 @@ "hooker": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz", - "integrity": "sha1-uDT3I8xKJCqmWWNFnfbZhMXT2Vk=", + "integrity": "sha512-t+UerCsQviSymAInD01Pw+Dn/usmz1sRO+3Zk1+lx8eg+WKpD2ulcwWqHHL0+aseRBr+3+vIhiG1K1JTwaIcTA==", "dev": true }, "hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", "dev": true }, "htmlparser2": { @@ -23297,40 +26129,25 @@ "string_decoder": "^1.1.1", "util-deprecate": "^1.0.1" } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } } } }, "http-errors": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", - "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" } }, "http-parser-js": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.2.tgz", - "integrity": "sha512-opCO9ASqg5Wy2FNo7A0sxy71yGbbkJJXLdgMK04Tcypw9jr2MgWbyubb0+WdmDmGnFflO7fRbqbaihh/ENDlRQ==", + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", + "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", "dev": true }, "http-proxy-agent": { @@ -23351,13 +26168,19 @@ "requires": { "ms": "2.0.0" } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true } } }, "http-signature": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", "dev": true, "requires": { "assert-plus": "^1.0.0", @@ -23374,7 +26197,7 @@ "https-browserify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", + "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==", "dev": true }, "https-proxy-agent": { @@ -23388,19 +26211,13 @@ }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true } } }, @@ -23413,15 +26230,15 @@ } }, "ieee754": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", "dev": true }, "iferr": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "integrity": "sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA==", "dev": true }, "ignore": { @@ -23433,19 +26250,19 @@ "immediate": { "version": "3.0.6", "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", "dev": true }, "import-lazy": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", "dev": true }, "imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true }, "infer-owner": { @@ -23457,7 +26274,7 @@ "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "dev": true, "requires": { "once": "^1.3.0", @@ -23465,20 +26282,20 @@ } }, "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "ini": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.7.tgz", - "integrity": "sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ==", + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", "dev": true }, "inject-loader": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/inject-loader/-/inject-loader-3.0.1.tgz", - "integrity": "sha512-0Kd4NqMJUhknG4ECiJ/mgyHJBpfBBWZ3IKHl2BLNQiFtMO7/xiv9mmHl7mGvE0iKrBeQAZdMcQP3sMXZN0cqeg==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/inject-loader/-/inject-loader-4.0.1.tgz", + "integrity": "sha512-fUFtHkso2AnzQyyJjuGuDYL0mW2EIQUlS4MgXXmCIRjVLyDk3oXGJqNcSTUg6DGs1q4gvqVIWsxfmPKxF44xfw==", "dev": true, "requires": { "babel-core": "~6" @@ -23506,15 +26323,15 @@ }, "dependencies": { "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", "dev": true }, "strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", "dev": true, "requires": { "ansi-regex": "^3.0.0" @@ -23522,10 +26339,21 @@ } } }, + "internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + } + }, "interpret": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", - "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=", + "integrity": "sha512-CLM8SNMDu7C5psFCn6Wg/tgpj/bKAg7hc2gWqcuR9OD5Ft9PhBpIu8PLicPeis+xDd6YX2ncI8MCA64I9tftIA==", "dev": true }, "invariant": { @@ -23544,9 +26372,9 @@ "dev": true }, "ip": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==", "dev": true }, "ipaddr.js": { @@ -23565,128 +26393,125 @@ } }, "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "kind-of": "^6.0.0" } }, "is-arguments": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", - "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==", - "dev": true + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } }, "is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", "dev": true }, + "is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "requires": { + "has-bigints": "^1.0.1" + } + }, "is-binary-path": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==", "dev": true, "requires": { "binary-extensions": "^1.0.0" } }, + "is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, "is-buffer": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" }, "is-callable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", - "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "dev": true }, + "is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "requires": { + "has": "^1.0.3" + } + }, "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "kind-of": "^6.0.0" } }, "is-date-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", - "dev": true + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } }, "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - } + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "is-expression": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-3.0.0.tgz", - "integrity": "sha1-Oayqa+f9HzRx3ELHQW5hwkMXrJ8=", + "integrity": "sha512-vyMeQMq+AiH5uUnoBfMTwf18tO3bM6k1QXBE9D6ueAAquEfCZe3AJPtud9g6qS0+4X8xA7ndpZiDyeb2l2qOBw==", "requires": { "acorn": "~4.0.2", "object-assign": "^4.0.1" - }, - "dependencies": { - "acorn": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", - "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=" - } } }, "is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", "dev": true }, "is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true }, "is-finite": { @@ -23698,22 +26523,22 @@ "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", "dev": true }, "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, "requires": { - "is-extglob": "^2.1.0" + "is-extglob": "^2.1.1" } }, "is-installed-globally": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", - "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", + "integrity": "sha512-ERNhMg+i/XgDwPIPF3u24qpajVreaiSuvpb1Uu0jugw7KKcxGyCX8cgp8P5fwTmAuXku6beDHHECdKArjlg7tw==", "dev": true, "requires": { "global-dirs": "^0.1.0", @@ -23727,34 +26552,40 @@ "dev": true }, "is-my-ip-valid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz", - "integrity": "sha512-gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.1.tgz", + "integrity": "sha512-jxc8cBcOWbNK2i2aTkCZP6i7wkHF1bqKFrwEHuN5Jtg5BSaZHUZQ/JTOJwoV41YvHnOaRyWWh72T/KvfNz9DJg==", "dev": true }, "is-my-json-valid": { - "version": "2.20.5", - "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.20.5.tgz", - "integrity": "sha512-VTPuvvGQtxvCeghwspQu1rBgjYUT6FGxPlvFKbYuFtgc4ADsX3U5ihZOYN0qyU6u+d4X9xXb0IT5O6QpXKt87A==", + "version": "2.20.6", + "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.20.6.tgz", + "integrity": "sha512-1JQwulVNjx8UqkPE/bqDaxtH4PXCe/2VRh/y3p99heOV87HG4Id5/VfDswd+YiAfHcRTfDlWgISycnHuhZq1aw==", "dev": true, "requires": { "generate-function": "^2.0.0", "generate-object-property": "^1.1.0", "is-my-ip-valid": "^1.0.0", - "jsonpointer": "^4.0.0", + "jsonpointer": "^5.0.0", "xtend": "^4.0.0" } }, + "is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "dev": true + }, "is-npm": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", - "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", + "integrity": "sha512-9r39FIr3d+KD9SbX0sfMsHzb5PP3uimOiwr3YupUaUFG4W0l1U57Rx3utpttV7qz5U3jmrO5auUa04LU9pyHsg==", "dev": true }, "is-number": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", "dev": true, "requires": { "kind-of": "^3.0.2" @@ -23763,7 +26594,7 @@ "kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "requires": { "is-buffer": "^1.1.5" @@ -23771,29 +26602,34 @@ } } }, + "is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, "is-obj": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==", "dev": true }, "is-path-inside": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", - "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "integrity": "sha512-qhsCR/Esx4U4hg/9I19OVUAJkGWtjRYHMRgUMZE2TDdj+Ag+kttZanLupfddNyglzz50cUlmWzUaI37GDfNx/g==", "dev": true, "requires": { "path-is-inside": "^1.0.1" } }, "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==" }, "is-promise": { "version": "2.2.2", @@ -23803,21 +26639,22 @@ "is-property": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", - "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=", + "integrity": "sha512-Ks/IoX00TtClbGQr4TWXemAnktAQvYB7HzcCxDGqEZU6oCmb2INHuOoKxbtR+HFkmYWBKv/dOZtGRiAjDhj92g==", "dev": true }, "is-redirect": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", - "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", + "integrity": "sha512-cr/SlUEe5zOGmzvj9bUyC4LVvkNVAXu4GytXLNMr1pny+a65MpQ9IJzFHD5vi7FyJgb4qt27+eS3TuQnqB+RQw==", "dev": true }, "is-regex": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz", - "integrity": "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "requires": { - "has-symbols": "^1.0.1" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" } }, "is-relative": { @@ -23841,25 +26678,43 @@ "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==", "dev": true }, + "is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2" + } + }, "is-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", "dev": true }, + "is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, "is-symbol": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", - "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, "requires": { - "has-symbols": "^1.0.1" + "has-symbols": "^1.0.2" } }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", "dev": true }, "is-unc-path": { @@ -23874,9 +26729,18 @@ "is-utf8": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "integrity": "sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==", "dev": true }, + "is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2" + } + }, "is-windows": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", @@ -23886,25 +26750,25 @@ "is-wsl": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "integrity": "sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==", "dev": true }, "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "dev": true }, "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true }, "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", "dev": true }, "isotope-layout": { @@ -23923,37 +26787,37 @@ "isstream": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", "dev": true }, "jed": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/jed/-/jed-1.1.1.tgz", - "integrity": "sha1-elSbvZ/+FYWwzQoZHiAwVb7ldLQ=", + "integrity": "sha512-z35ZSEcXHxLW4yumw0dF6L464NT36vmx3wxJw8MDpraBcWuNVgUPZgPJKcu1HekNgwlMFNqol7i/IpSbjhqwqA==", "dev": true }, "jetpack-id": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/jetpack-id/-/jetpack-id-1.0.0.tgz", - "integrity": "sha1-LPn7rkbYB0/Ba33gBxyO/rykc6Y=", + "integrity": "sha512-uqasW8dq68KMl8cGkJpakBG/VgsfROblW7B3w9cTN0MQiZ5s+jmi8WgO4/lkrTPbakpU2LA+bZvyVBxadk+MHg==", "dev": true }, "jose": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/jose/-/jose-4.1.0.tgz", - "integrity": "sha512-Hqx2vuNlo5sDe+ZWvOXAExWXk31mXgxMuUkUjEIeGNU4KFPZHO8hOnljhb25eoK4g+fth+7tU+k+AA+p/eZtYw==", + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/jose/-/jose-4.11.0.tgz", + "integrity": "sha512-wLe+lJHeG8Xt6uEubS4x0LVjS/3kXXu9dGoj9BNnlhYq7Kts0Pbb2pvv5KiI0yaKH/eaiR0LUOBhOVo9ktd05A==", "dev": true }, "jquery": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.5.1.tgz", - "integrity": "sha512-XwIBPqcMn57FxfT+Go5pzySnm4KWkT1Tv7gjrpT1srtf8Weynl6R273VJ5GjkRb51IzMp5nbaPjJXMWeju2MKg==", + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.6.1.tgz", + "integrity": "sha512-opJeO4nCucVnsjiXOE+/PcCgYw9Gwpvs/a6B1LL/lQhwWwpbVEVYDZ1FokFr8PRc7ghYlrFPuyHuiiDNTQxmcw==", "dev": true }, "js-select": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/js-select/-/js-select-0.6.0.tgz", - "integrity": "sha1-woTiKCTVknrsli3N8kcXSu+w0ZA=", + "integrity": "sha512-npBjRT1DXCKnpLqcsaXj5XVB5l/wAcSGCp03e/6xD5BHg9cFlnoQ/wrSGZIrtaa3J7+N9tLvX1RkxcykmJVyyg==", "dev": true, "requires": { "JSONSelect": "0.2.1", @@ -23963,7 +26827,7 @@ "js-stringify": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", - "integrity": "sha1-Fzb939lyTyijaCrcYjCufk6Weds=" + "integrity": "sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==" }, "js-tokens": { "version": "4.0.0", @@ -23972,9 +26836,9 @@ "dev": true }, "js-yaml": { - "version": "3.14.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", - "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, "requires": { "argparse": "^1.0.7", @@ -23984,7 +26848,7 @@ "jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", "dev": true }, "jsesc": { @@ -23996,7 +26860,7 @@ "json-merge-patch": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/json-merge-patch/-/json-merge-patch-0.2.3.tgz", - "integrity": "sha1-+ixrWvh9p3uuKWalidUuI+2B/kA=", + "integrity": "sha512-mjd5eObNGOhWkKCztwVuF25KOzLj2T4TJaWXLBgCQPeoPRJrMxKNgjNBE8sPmXoWRT0WDlo4Itd/gTlFh29TFw==", "dev": true, "requires": { "deep-equal": "^1.0.0" @@ -24009,9 +26873,9 @@ "dev": true }, "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", "dev": true }, "json-schema-traverse": { @@ -24021,66 +26885,63 @@ "dev": true }, "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.2.tgz", + "integrity": "sha512-eunSSaEnxV12z+Z73y/j5N37/In40GK4GmsSy+tEHJMxknvqnA7/djeYtAgW0GsWHUfg+847WJjKaEylk2y09g==", "dev": true, "requires": { - "jsonify": "~0.0.0" + "jsonify": "^0.0.1" } }, "json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true }, "json-stringify-safe": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", "dev": true }, "json5": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", - "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", + "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", + "dev": true }, "jsonfile": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", "dev": true, "requires": { "graceful-fs": "^4.1.6" } }, "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.1.tgz", + "integrity": "sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==", "dev": true }, "jsonpointer": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.1.0.tgz", - "integrity": "sha512-CXcRvMyTlnR53xMcKnuMzfCA5i/nfblTnnr74CZb6C4vG39eu6w51t7nKmU5MfLfbTgGItliNyjO/ciNPDqClg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-5.0.1.tgz", + "integrity": "sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==", "dev": true }, "jsonpointer.js": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/jsonpointer.js/-/jsonpointer.js-0.4.0.tgz", - "integrity": "sha1-ACyxI/dnqv3rAZYTLOXE+ZQcyro=", + "integrity": "sha512-2bf/1crAmPpsmj1I6rDT6W0SOErkrNBpb555xNWcMVWYrX6VnXpG0GRMQ2shvOHwafpfse8q0gnzPFYVH6Tqdg==", "dev": true }, "JSONSelect": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/JSONSelect/-/JSONSelect-0.2.1.tgz", - "integrity": "sha1-QVQYpSbTP+MddLTe+jyDbUhewgM=", + "integrity": "sha512-Q/zZyUq4PZ7Mja7Jz7doBHcdQpfyCq2zR2B5AUqFtQs4hzIe4gsiZ1Yzkx7nEiS15JrYpfWe99MAjYwFt05Q4g==", "dev": true }, "jsonwebtoken": { @@ -24099,32 +26960,24 @@ "lodash.once": "^4.0.0", "ms": "^2.1.1", "xtend": "^4.0.1" - }, - "dependencies": { - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } } }, "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", + "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", "dev": true, "requires": { "assert-plus": "1.0.0", "extsprintf": "1.3.0", - "json-schema": "0.2.3", + "json-schema": "0.4.0", "verror": "1.10.0" } }, "jstransformer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", - "integrity": "sha1-7Yvwkh4vPx7U1cGkT2hwntJHIsM=", + "integrity": "sha512-C9YK3Rf8q6VAPDCCU9fnqo3mAfOH6vUGnMcP4AQAYIEpWtfGLpwOTmZ+igtdK5y+VvI2n3CyYSzy4Qh34eq24A==", "requires": { "is-promise": "^2.0.0", "promise": "^7.0.1" @@ -24141,27 +26994,27 @@ "jstransformer-markdown-it": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/jstransformer-markdown-it/-/jstransformer-markdown-it-2.1.0.tgz", - "integrity": "sha1-aewwzkUYvtWZezjwJ2SOjChekvc=", + "integrity": "sha512-E9uALZSe3M3jiq9Mza+wTlT44Yyh/s3D5XWUeJgH3vyzB05KFQz8Tv2I9do3BbRY/S5SDxFMkxB6fCGj+MA2rg==", "requires": { "markdown-it": "^8.0.0" } }, "jszip": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.5.0.tgz", - "integrity": "sha512-WRtu7TPCmYePR1nazfrtuF216cIVon/3GWOvHS9QR5bIwSbnxtdpma6un3jyGGNhHsKCSzn5Ypk+EkDRvTGiFA==", + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", + "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", "dev": true, "requires": { "lie": "~3.3.0", "pako": "~1.0.2", "readable-stream": "~2.3.6", - "set-immediate-shim": "~1.0.1" + "setimmediate": "^1.0.5" } }, "just-extend": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.1.0.tgz", - "integrity": "sha512-ApcjaOdVTJ7y4r08xI5wIqpvwS48Q0PBG4DJROcEkH1f8MdAiNFyFxz3xoL0LWAVwjrwPYZdVHHxhRHcx/uGLA==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", + "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", "dev": true }, "jwa": { @@ -24194,21 +27047,22 @@ "latest-version": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", - "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", + "integrity": "sha512-Be1YRHWWlZaSsrz2U+VInk+tO0EwLIyV+23RhWLINJYwg/UIikxjlj3MhH37/6/EDCAusjajvMkMMUXRaMWl/w==", "dev": true, "requires": { "package-json": "^4.0.0" } }, "lazy-cache": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", - "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=" + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-0.2.7.tgz", + "integrity": "sha512-gkX52wvU/R8DVMMt78ATVPFMJqfW8FPz1GZ1sVHBVQHmu/WvhIWE4cE1GBzhJNFicDeYhnwp6Rl35BcAIM3YOQ==", + "dev": true }, "lazystream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", - "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", + "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", "dev": true, "requires": { "readable-stream": "^2.0.5" @@ -24223,25 +27077,10 @@ "invert-kv": "^2.0.0" } }, - "leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true - }, - "levenary": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/levenary/-/levenary-1.1.1.tgz", - "integrity": "sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ==", - "dev": true, - "requires": { - "leven": "^3.1.0" - } - }, "levn": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", "dev": true, "requires": { "prelude-ls": "~1.1.2", @@ -24257,32 +27096,84 @@ "immediate": "~3.0.5" } }, - "liftoff": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.5.0.tgz", - "integrity": "sha1-IAkpG7Mc6oYbvxCnwVooyvdcMew=", + "liftup": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/liftup/-/liftup-3.0.1.tgz", + "integrity": "sha512-yRHaiQDizWSzoXk3APcA71eOI/UuhEkNN9DiW2Tt44mhYzX4joFoCZlxsSOF7RyeLlfqzFLQI1ngFq3ggMPhOw==", "dev": true, "requires": { - "extend": "^3.0.0", - "findup-sync": "^2.0.0", - "fined": "^1.0.1", - "flagged-respawn": "^1.0.0", + "extend": "^3.0.2", + "findup-sync": "^4.0.0", + "fined": "^1.2.0", + "flagged-respawn": "^1.0.1", "is-plain-object": "^2.0.4", - "object.map": "^1.0.0", - "rechoir": "^0.6.2", - "resolve": "^1.1.7" + "object.map": "^1.0.1", + "rechoir": "^0.7.0", + "resolve": "^1.19.0" }, "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, "findup-sync": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", - "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-4.0.0.tgz", + "integrity": "sha512-6jvvn/12IC4quLBL1KNokxC7wWTvYncaVUYSoxWw7YykPLuRrnv4qdHcSOywOI5RpkOVGeQRtWM8/q+G6W6qfQ==", + "dev": true, + "requires": { + "detect-file": "^1.0.0", + "is-glob": "^4.0.0", + "micromatch": "^4.0.2", + "resolve-dir": "^1.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "requires": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, "requires": { - "detect-file": "^1.0.0", - "is-glob": "^3.1.0", - "micromatch": "^3.0.4", - "resolve-dir": "^1.0.1" + "is-number": "^7.0.0" } } } @@ -24304,7 +27195,7 @@ "load-json-file": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "integrity": "sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A==", "dev": true, "requires": { "graceful-fs": "^4.1.2", @@ -24317,7 +27208,7 @@ "parse-json": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "integrity": "sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==", "dev": true, "requires": { "error-ex": "^1.2.0" @@ -24326,13 +27217,13 @@ "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", "dev": true }, "strip-bom": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "integrity": "sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==", "dev": true, "requires": { "is-utf8": "^0.2.0" @@ -24347,141 +27238,129 @@ "dev": true }, "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.3.tgz", + "integrity": "sha512-THWqIsn8QRnvLl0shHYVBN9syumU8pYWEHPTmkiVGd+7K5eFNVSY6AJhRvgGF70gg1Dz+l/k8WicvFCxdEs60A==", "dev": true, "requires": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - } + "json5": "^2.1.2" } }, "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "p-locate": "^4.1.0" } }, "lodash": { - "version": "4.17.19", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", - "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==" + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, "lodash.assign": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", - "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=", + "integrity": "sha512-hFuH8TY+Yji7Eja3mGiuAxBqLagejScbG8GbG0j6o9vzn0YL14My+ktnqtZgFTosKymC9/44wP6s7xyuLfnClw==", "dev": true }, "lodash.assignin": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", - "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=", + "integrity": "sha512-yX/rx6d/UTVh7sSVWVSIMjfnz95evAgDFdb1ZozC35I9mSFCkmzptOzevxjgbQUsc78NR44LVHWjsoMQXy9FDg==", "dev": true }, "lodash.clone": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.clone/-/lodash.clone-4.5.0.tgz", - "integrity": "sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y=", + "integrity": "sha512-GhrVeweiTD6uTmmn5hV/lzgCQhccwReIVRLHp7LT4SopOjqEZ5BbX8b5WWEtAKasjmy8hR7ZPwsYlxRCku5odg==", "dev": true }, "lodash.clonedeep": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "integrity": "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==", "dev": true }, "lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=" + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" }, "lodash.flatten": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", + "integrity": "sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==", "dev": true }, "lodash.get": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", "dev": true }, "lodash.includes": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", - "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8=", + "integrity": "sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==", "dev": true }, "lodash.isboolean": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", - "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY=", + "integrity": "sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==", "dev": true }, "lodash.isinteger": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", - "integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M=", + "integrity": "sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==", "dev": true }, "lodash.isnumber": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", - "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w=", + "integrity": "sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==", "dev": true }, "lodash.isplainobject": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", "dev": true }, "lodash.isstring": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", - "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=", + "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==", "dev": true }, "lodash.once": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", - "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=", + "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==", "dev": true }, "lodash.set": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz", - "integrity": "sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM=", + "integrity": "sha512-4hNPN5jlm/N/HLMCO43v8BXKq9Z7QdAGc/VGrRD61w8gN9g/6jF9A4L1pbUgBLCffi0w9VsXfTOij5x8iTyFvg==", "dev": true }, "lodash.sortby": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", - "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", + "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==", "dev": true }, "loglevel": { - "version": "1.6.8", - "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.8.tgz", - "integrity": "sha512-bsU7+gc9AJ2SqpzxwU3+1fedl8zAntbtC5XYlt3s2j1hJcn2PsXSmgN8TaLG/J1/2mod4+cE/3vNL70/c1RNCA==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.8.1.tgz", + "integrity": "sha512-tCRIJM51SHjAayKwC+QAg8hT8vg6z7GSgLJKGvzuPb1Wc+hLzqtuVLxp6/HzSPOozuK+8ErAhy7U/sVzw8Dgfg==", "dev": true }, "lolex": { @@ -24493,7 +27372,7 @@ "longest": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", - "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=" + "integrity": "sha512-k+yt5n3l48JU4k8ftnKG6V7u32wyH2NfKzeMto9F/QRE0amxy/LayxwlvjjkZEIzqR+19IrtFO8p5kB9QaYUFg==" }, "loose-envify": { "version": "1.4.0", @@ -24504,6 +27383,15 @@ "js-tokens": "^3.0.0 || ^4.0.0" } }, + "loupe": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.6.tgz", + "integrity": "sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==", + "dev": true, + "requires": { + "get-func-name": "^2.0.0" + } + }, "lowercase-keys": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", @@ -24527,13 +27415,12 @@ "dev": true }, "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" + "semver": "^6.0.0" } }, "make-iterator": { @@ -24557,13 +27444,13 @@ "map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==", "dev": true }, "map-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "integrity": "sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==", "dev": true, "requires": { "object-visit": "^1.0.0" @@ -24572,7 +27459,7 @@ "markdown": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/markdown/-/markdown-0.5.0.tgz", - "integrity": "sha1-KCBbVlqK51kt4gdGPWY33BgnIrI=", + "integrity": "sha512-ctGPIcuqsYoJ493sCtFK7H4UEgMWAUdXeBhPbdsg1W0LsV9yJELAHRsMmWfTgao6nH0/x5gf9FmsbxiXnrgaIQ==", "requires": { "nopt": "~2.1.1" }, @@ -24580,7 +27467,7 @@ "nopt": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/nopt/-/nopt-2.1.2.tgz", - "integrity": "sha1-bMzZd7gBMqB3MdbozljCyDA8+a8=", + "integrity": "sha512-x8vXm7BZ2jE1Txrxh/hO74HTuYZQEbo8edoRcANgdZ4+PCV+pbjd/xdummkmjjC7LU5EjPzlu8zEq/oxWylnKA==", "requires": { "abbrev": "1" } @@ -24623,12 +27510,12 @@ "mdurl": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=" + "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" }, "media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==" }, "mem": { "version": "4.3.0", @@ -24644,7 +27531,7 @@ "memory-fs": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", - "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "integrity": "sha512-cda4JKCxReDXFXRqOHPQscuIYg1PvxbE2S2GP45rnwfEK+vZaXC8C1OFvdHIbgw0DLzowXGVoxLaAmlgRy14GQ==", "dev": true, "requires": { "errno": "^0.1.3", @@ -24654,12 +27541,12 @@ "merge-descriptors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" }, "methods": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==" }, "micromatch": { "version": "3.1.10", @@ -24680,6 +27567,36 @@ "regex-not": "^1.0.0", "snapdragon": "^0.8.1", "to-regex": "^3.0.2" + }, + "dependencies": { + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + } + }, + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + } } }, "miller-rabin": { @@ -24693,29 +27610,30 @@ }, "dependencies": { "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true } } }, "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true }, "mime-db": { - "version": "1.44.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", - "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==" + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" }, "mime-types": { - "version": "2.1.27", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", - "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "requires": { - "mime-db": "1.44.0" + "mime-db": "1.52.0" } }, "mimic-fn": { @@ -24727,7 +27645,7 @@ "min-document": { "version": "2.19.0", "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", - "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", + "integrity": "sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ==", "dev": true, "requires": { "dom-walk": "^0.1.0" @@ -24742,22 +27660,22 @@ "minimalistic-crypto-utils": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==", "dev": true }, "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz", + "integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==", "dev": true, "requires": { "brace-expansion": "^1.1.7" } }, "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", "dev": true }, "mississippi": { @@ -24796,13 +27714,22 @@ "requires": { "is-plain-object": "^2.0.4" } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } } } }, "mixin-object": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", - "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", + "integrity": "sha512-ALGF1Jt9ouehcaXaHhn6t1yGWRqGaHkPFndtFVHfZXOvkIZ/yoGaSi0AHVTafb3ZBGg4dr/bDwnaEKqCXzchMA==", "dev": true, "requires": { "for-in": "^0.1.3", @@ -24812,19 +27739,16 @@ "for-in": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", - "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=", + "integrity": "sha512-F0to7vbBSHP8E3l6dCjxNOLuSFAACIxFy3UehTUlG7svlXi37HHsDkyVcHo0Pq8QwrE+pXvWSVX3ZT1T9wAZ9g==", "dev": true } } }, "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true }, "mocha": { "version": "5.2.0", @@ -24874,21 +27798,36 @@ "path-is-absolute": "^1.0.0" } }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, "minimist": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "integrity": "sha512-miQKw5Hv4NS1Psg2517mV4e4dYNaO3++hjAvLOAzKqZ61rH8NS1SK+vbfBWZ5PY/Me/bEWhUwqMghEW5Fb9T7Q==", "dev": true }, "mkdirp": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "integrity": "sha512-SknJC52obPfGQPnjIkXbmA6+5H15E+fR+E4iR2oQ3zzCLbd7/ONua69R/Gw7AgkTLsRG+r5fzksYwWe1AgTyWA==", "dev": true, "requires": { "minimist": "0.0.8" } }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "supports-color": { "version": "5.4.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", @@ -24901,9 +27840,9 @@ } }, "moment": { - "version": "2.27.0", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.27.0.tgz", - "integrity": "sha512-al0MUK7cpIcglMv3YF13qSgdAIqxHTO7brRtaz3DlSULbqfazqkc5kEjNrLDOM7fsjshoFIihnU8snrP7zUvhQ==", + "version": "2.29.4", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", + "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==", "dev": true }, "morgan": { @@ -24919,18 +27858,36 @@ "on-headers": "~1.0.2" }, "dependencies": { - "depd": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", + "dev": true, + "requires": { + "ee-first": "1.1.1" + } } } }, "move-concurrently": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", - "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "integrity": "sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ==", "dev": true, "requires": { "aproba": "^1.1.1", @@ -24941,6 +27898,15 @@ "run-queue": "^1.0.3" }, "dependencies": { + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + }, "rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -24953,14 +27919,15 @@ } }, "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true }, "multimatch": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", - "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", + "integrity": "sha512-0mzK8ymiWdehTBiJh0vClAzGyQbdtyWqzSVx//EK4N/D+599RFlGfTAsKw2zMSABtDG9C6Ul2+t8f2Lbdjf5mA==", "dev": true, "requires": { "array-differ": "^1.0.0", @@ -24972,13 +27939,13 @@ "mute-stream": { "version": "0.0.7", "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "integrity": "sha512-r65nCZhrbXXb6dXOACihYApHw2Q6pV0M3V0PSxd74N0+D8nzAdEAITq2oAjA1jVnKI+tGvEBUpqiMh0+rW6zDQ==", "dev": true }, "mv": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/mv/-/mv-2.1.1.tgz", - "integrity": "sha1-rmzg1vbV4KT32JN5jQPB6pVZtqI=", + "integrity": "sha512-at/ZndSy3xEGJ8i0ygALh8ru9qy7gWW1cmkaqBN29JmMlIvM//MEO9y1sk/avxuwnPcfhkejkLsuPxH81BrkSg==", "dev": true, "optional": true, "requires": { @@ -24990,7 +27957,7 @@ "glob": { "version": "6.0.4", "resolved": "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz", - "integrity": "sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI=", + "integrity": "sha512-MKZeRNyYZAVVVG1oZeLaWie1uweH40m9AZwIwxyPbTSX4hHrVYSzLg0Ro5Z5R7XKkIX+Cc6oD1rqeDJnwsB8/A==", "dev": true, "optional": true, "requires": { @@ -25001,10 +27968,20 @@ "path-is-absolute": "^1.0.0" } }, + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "optional": true, + "requires": { + "minimist": "^1.2.6" + } + }, "rimraf": { "version": "2.4.5", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.4.5.tgz", - "integrity": "sha1-7nEM5dk6j9uFb7Xqj/Di11k0sto=", + "integrity": "sha512-J5xnxTyqaiw06JjMftq7L9ouA448dw/E7dKghkP9WpKNuwmARNNg+Gk8/u5ryb9N/Yo2+z3MCwuqFK/+qPOPfQ==", "dev": true, "optional": true, "requires": { @@ -25025,9 +28002,9 @@ } }, "nan": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz", - "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==", + "version": "2.17.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz", + "integrity": "sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==", "dev": true, "optional": true }, @@ -25048,18 +28025,48 @@ "regex-not": "^1.0.0", "snapdragon": "^0.8.1", "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + } + }, + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + } } }, "natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, "natural-compare-lite": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", - "integrity": "sha1-F7CVgZiJef3a/gIB6TG6kzyWy7Q=", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", "dev": true }, "nconf": { @@ -25077,13 +28084,13 @@ "camelcase": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "integrity": "sha512-DLIsRzJVBQu72meAKPkWQOLcujdXT32hwdfnkI1frSiSRMK1MofjKHf+MEx0SB6fjEFXL8fBDv1dKymBlOp4Qw==", "dev": true }, "cliui": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "integrity": "sha512-0yayqDxWQbqk3ojkYqUKqaAQ6AfNKeKWRNA8kR0WXzAsdHpP4BIaOmMAG87JGuO6qcobyW4GjxHd9PmhEd+T9w==", "dev": true, "requires": { "string-width": "^1.0.1", @@ -25091,16 +28098,22 @@ "wrap-ansi": "^2.0.0" } }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "dev": true + }, "invert-kv": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", - "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "integrity": "sha512-xgs2NH9AE66ucSq4cNG1nhSFghr5l6tdL15Pk+jl46bmmBapgoaY/AacXyaDznAqmGL99TiLSQgO/XazFSKYeQ==", "dev": true }, "is-fullwidth-code-point": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", "dev": true, "requires": { "number-is-nan": "^1.0.0" @@ -25109,7 +28122,7 @@ "lcid": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "integrity": "sha512-YiGkH6EnGrDGqLMITnGjXtGmNtjoXw9SVUzcaos8RBi7Ps0VBylkq+vOcY9QE5poLasPCR849ucFUkl0UzUyOw==", "dev": true, "requires": { "invert-kv": "^1.0.0" @@ -25118,7 +28131,7 @@ "os-locale": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", - "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "integrity": "sha512-PRT7ZORmwu2MEFt4/fv3Q+mEfN4zetKxufQrkShY2oGvUms9r8otu5HfdyIFHkYXjO7laNsoVGmM2MANfuTA8g==", "dev": true, "requires": { "lcid": "^1.0.0" @@ -25127,7 +28140,7 @@ "string-width": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", "dev": true, "requires": { "code-point-at": "^1.0.0", @@ -25138,19 +28151,19 @@ "window-size": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.4.tgz", - "integrity": "sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY=", + "integrity": "sha512-2thx4pB0cV3h+Bw7QmMXcEbdmOzv9t0HFplJH/Lz6yu60hXYy5RT8rUu+wlIreVxWsGN20mo+MHeCSfUpQBwPw==", "dev": true }, "y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.2.tgz", + "integrity": "sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==", "dev": true }, "yargs": { "version": "3.32.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.32.0.tgz", - "integrity": "sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU=", + "integrity": "sha512-ONJZiimStfZzhKamYvR/xvmgW3uEkAUFSP91y2caTEPhzF6uP2JfPiVZcq66b/YR0C3uitxSV7+T1x8p5bkmMg==", "dev": true, "requires": { "camelcase": "^2.0.1", @@ -25167,14 +28180,14 @@ "ncp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ncp/-/ncp-2.0.0.tgz", - "integrity": "sha1-GVoh1sRuNh0vsSgbo4uR6d9727M=", + "integrity": "sha512-zIdGUrPRFTUELUvr3Gmc7KZ2Sw/h1PiVM0Af/oHB6zgnV1ikqSfRk+TOufi79aHYCW3NiOXmr1BP5nWbzojLaA==", "dev": true, "optional": true }, "needle": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-2.5.0.tgz", - "integrity": "sha512-o/qITSDR0JCyCKEQ1/1bnUXMmznxabbwi/Y4WwJElf+evwJNFNwIDMCCt5IigFVxgeGBJESLohGtIS9gEzo1fA==", + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/needle/-/needle-2.9.1.tgz", + "integrity": "sha512-6R9fqJ5Zcmf+uYaFgdIHmLwNldn5HbK8L5ybn7Uz+ylX/rnOsSp1AHcvQSrCaFN+qNM1wpymHqD7mVasEOlHGQ==", "dev": true, "requires": { "debug": "^3.2.6", @@ -25183,32 +28196,20 @@ }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true } } }, "negotiator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" }, "neo-async": { "version": "2.6.2", @@ -25219,62 +28220,21 @@ "netmask": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/netmask/-/netmask-1.0.6.tgz", - "integrity": "sha1-ICl+idhvb2QA8lDZ9Pa0wZRfzTU=", + "integrity": "sha512-3DWDqAtIiPSkBXZyYEjwebfK56nrlQfRGt642fu8RPaL+ePu750+HCMHxjJCG3iEHq/0aeMvX6KIzlv7nuhfrA==", "dev": true }, "next-tick": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", - "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==", "dev": true }, "nib": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/nib/-/nib-1.1.2.tgz", - "integrity": "sha1-amnt5AgblcDe+L4CSkyK4MLLtsc=", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/nib/-/nib-1.2.0.tgz", + "integrity": "sha512-7HgrnMl/3yOmWykueO8/D0q+0iWwe7Z+CK2Eaq/xQV8w1hK80WN1oReRQkfkrztbAAnp/nTHkUSl5EcVkor6JQ==", "dev": true, - "requires": { - "stylus": "0.54.5" - }, - "dependencies": { - "glob": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.6.tgz", - "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.2", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "source-map": { - "version": "0.1.43", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", - "dev": true, - "requires": { - "amdefine": ">=0.0.4" - } - }, - "stylus": { - "version": "0.54.5", - "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.5.tgz", - "integrity": "sha1-QrlWCTHKcJDOhRWnmLqeaqPW3Hk=", - "dev": true, - "requires": { - "css-parse": "1.7.x", - "debug": "*", - "glob": "7.0.x", - "mkdirp": "0.5.x", - "sax": "0.5.x", - "source-map": "0.1.x" - } - } - } + "requires": {} }, "nice-try": { "version": "1.0.5", @@ -25308,7 +28268,7 @@ "isarray": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", "dev": true }, "lolex": { @@ -25332,43 +28292,29 @@ } }, "nock": { - "version": "13.1.3", - "resolved": "https://registry.npmjs.org/nock/-/nock-13.1.3.tgz", - "integrity": "sha512-YKj0rKQWMGiiIO+Y65Ut8OEgYM3PplLU2+GAhnPmqZdBd6z5IskgdBqWmjzA6lH3RF0S2a3wiAlrMOF5Iv2Jeg==", + "version": "13.2.9", + "resolved": "https://registry.npmjs.org/nock/-/nock-13.2.9.tgz", + "integrity": "sha512-1+XfJNYF1cjGB+TKMWi29eZ0b82QOvQs2YoLNzbpWGqFMtRQHTa57osqdGj4FrFPgkO4D4AZinzUJR9VvW3QUA==", "dev": true, "requires": { "debug": "^4.1.0", "json-stringify-safe": "^5.0.1", - "lodash.set": "^4.3.2", + "lodash": "^4.17.21", "propagate": "^2.0.0" - }, - "dependencies": { - "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } } }, "node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", - "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "requires": { + "whatwg-url": "^5.0.0" + } }, "node-forge": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.0.0.tgz", - "integrity": "sha512-ShkiiAlzSsgH1IwGlA0jybk9vQTIOLyJ9nBd0JTuP+nzADJFLY0NoDijM2zvD/JaezooGu3G2p2FNxOAK6459g==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", "dev": true }, "node-libs-browser": { @@ -25402,38 +28348,18 @@ "vm-browserify": "^1.0.1" }, "dependencies": { - "buffer": { - "version": "4.9.2", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", - "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", - "dev": true, - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" - } + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true }, "punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", "dev": true }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - }, "util": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", @@ -25445,12 +28371,6 @@ } } }, - "node-modules-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", - "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", - "dev": true - }, "node-notifier": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-5.2.1.tgz", @@ -25461,18 +28381,35 @@ "semver": "^5.4.1", "shellwords": "^0.1.1", "which": "^1.3.0" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + } } }, "node-releases": { - "version": "1.1.60", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.60.tgz", - "integrity": "sha512-gsO4vjEdQaTusZAEebUWp2a5d7dF5DYoIpDG7WySnk7BuZDW+GPpHXoXXuYawRBr/9t5q54tirPz79kFIWg4dA==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", + "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", "dev": true }, "node-rsa": { "version": "0.2.30", "resolved": "https://registry.npmjs.org/node-rsa/-/node-rsa-0.2.30.tgz", - "integrity": "sha1-iRLiw7G2TM5sp4PKsa8oKzAK3uY=", + "integrity": "sha512-Tg5XrlbigFm6rek1UoIIPRHRbisJL8MhVvzx6xl/bNMaW3qRKQYJSswHsQOnoa/zTLaRG/uKht+XisA71P8U4Q==", "dev": true, "requires": { "asn1": "0.2.3", @@ -25482,7 +28419,7 @@ "lodash": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.3.0.tgz", - "integrity": "sha1-ARzlLQGxTmDq7qdqy5uLpCxwWBs=", + "integrity": "sha512-gpux6tVfBHsUdUIciz5HoV0ChAxUTvi0ChpQMIjAsKtg6FTYFtd1B1G0JlqHvAio3teaMVGPDPk2seVq1INwOQ==", "dev": true } } @@ -25490,7 +28427,7 @@ "nomnom": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz", - "integrity": "sha1-IVH3Ikcrp55Qp2/BJbuMjy5Nwqc=", + "integrity": "sha512-5s0JxqhDx9/rksG2BTMVN1enjWSvPidpoSgViZU4ZXULyTe+7jxcCRLB6f42Z0l1xYJpleCBtSyY6Lwg3uu5CQ==", "dev": true, "requires": { "chalk": "~0.4.0", @@ -25500,13 +28437,13 @@ "ansi-styles": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", - "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", + "integrity": "sha512-3iF4FIKdxaVYT3JqQuY3Wat/T2t7TRbbQ94Fu50ZUCbLy4TFbTzr90NOHQodQkNqmeEGCw8WbeP78WNi6SKYUA==", "dev": true }, "chalk": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", - "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", + "integrity": "sha512-sQfYDlfv2DGVtjdoQqxS0cEZDroyG8h6TamA6rvxwlrU5BaSLDx9xhatBYl2pxZ7gmpNaPFVwBtdGdu5rQ+tYQ==", "dev": true, "requires": { "ansi-styles": "~1.0.0", @@ -25517,7 +28454,7 @@ "strip-ansi": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", - "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", + "integrity": "sha512-behete+3uqxecWlDAm5lmskaSaISA+ThQ4oNNBDTBJt0x2ppR6IPqfZNuj6BLaLJ/Sji4TPZlcRyOis8wXQTLg==", "dev": true } } @@ -25525,7 +28462,7 @@ "nopt": { "version": "3.0.6", "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "integrity": "sha512-4GUt3kSEYmk4ITxzB/b9vaIDfUVWN/Ml1Fwl11IlnIG2iaJ9O6WXZ9SrYM9NLI8OCBieN2Y8SWC2oJV0RQ7qYg==", "dev": true, "requires": { "abbrev": "1" @@ -25541,12 +28478,20 @@ "resolve": "^1.10.0", "semver": "2 || 3 || 4 || 5", "validate-npm-package-license": "^3.0.1" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + } } }, "normalize-path": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", "dev": true, "requires": { "remove-trailing-separator": "^1.0.1" @@ -25555,7 +28500,7 @@ "npm-run-path": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", "dev": true, "requires": { "path-key": "^2.0.0" @@ -25573,7 +28518,7 @@ "number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "integrity": "sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==", "dev": true }, "oauth-sign": { @@ -25585,12 +28530,12 @@ "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" }, "object-copy": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "integrity": "sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==", "dev": true, "requires": { "copy-descriptor": "^0.1.0", @@ -25601,16 +28546,53 @@ "define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "dev": true, "requires": { - "is-descriptor": "^0.1.0" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } } }, "kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "requires": { "is-buffer": "^1.1.5" @@ -25619,19 +28601,18 @@ } }, "object-inspect": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.8.0.tgz", - "integrity": "sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==", - "dev": true + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==" }, "object-is": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.2.tgz", - "integrity": "sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", "dev": true, "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" } }, "object-keys": { @@ -25643,28 +28624,28 @@ "object-visit": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "integrity": "sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==", "dev": true, "requires": { "isobject": "^3.0.0" } }, "object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", "dev": true, "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" } }, "object.defaults": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", - "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=", + "integrity": "sha512-c/K0mw/F11k4dEUBMW8naXUuBuhxRCfG7W+yFy8EcijU/rSmazOUd1XAEEe6bC0OuXY4HUKjTJv7xbxIMqdxrA==", "dev": true, "requires": { "array-each": "^1.0.1", @@ -25676,7 +28657,7 @@ "object.map": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", - "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=", + "integrity": "sha512-3+mAJu2PLfnSVGHwIWubpOFLscJANBKuB/6A4CxBstc4aqwQY0FWcsppuy4jU5GSB95yES5JHSI+33AWuS4k6w==", "dev": true, "requires": { "for-own": "^1.0.0", @@ -25686,16 +28667,16 @@ "object.pick": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", "dev": true, "requires": { "isobject": "^3.0.1" } }, "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", "requires": { "ee-first": "1.1.1" } @@ -25709,7 +28690,7 @@ "once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "requires": { "wrappy": "1" } @@ -25717,7 +28698,7 @@ "onetime": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "integrity": "sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ==", "dev": true, "requires": { "mimic-fn": "^1.0.0" @@ -25734,7 +28715,7 @@ "opn": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/opn/-/opn-4.0.2.tgz", - "integrity": "sha1-erwi5kTf9jsKltWrfyeQwPAavJU=", + "integrity": "sha512-iPBWbPP4OEOzR1xfhpGLDh+ypKBOygunZhM9jBtA7FS5sKjEiMZw0EFb82hnDOmTZX90ZWLoZKUza4cVt8MexA==", "dev": true, "requires": { "object-assign": "^4.0.1", @@ -25758,13 +28739,13 @@ "os-browserify": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", + "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==", "dev": true }, "os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", "dev": true }, "os-locale": { @@ -25781,7 +28762,7 @@ "os-name": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/os-name/-/os-name-2.0.1.tgz", - "integrity": "sha1-uaOGNhwXrjohc27wWZQFyajF3F4=", + "integrity": "sha512-zzMwE/HWRISM52Q966yHosPJ1alrm5Cpw/C9ZhSid50RsMpLtOwc1rtmWxKn7TggPM+GVLUC3RxgWmklOiUgOQ==", "dev": true, "requires": { "macos-release": "^1.0.0", @@ -25791,13 +28772,13 @@ "os-shim": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/os-shim/-/os-shim-0.1.3.tgz", - "integrity": "sha1-a2LDeRz3kJ6jXtRuF2WLtBfLORc=", + "integrity": "sha512-jd0cvB8qQ5uVt0lvCIexBaROw1KyKm5sbulg2fWOHjETisuCzWyt+eTZKEMs8v6HwzoGs8xik26jg7eCM6pS+A==", "dev": true }, "os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", "dev": true }, "osenv": { @@ -25813,7 +28794,7 @@ "outlayer": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/outlayer/-/outlayer-2.1.1.tgz", - "integrity": "sha1-KYY7beEOpdrf/8rfoNcokHOH6aI=", + "integrity": "sha512-+GplXsCQ3VrbGujAeHEzP9SXsBmJxzn/YdDSQZL0xqBmAWBmortu2Y9Gwdp9J0bgDQ8/YNIPMoBM13nTwZfAhw==", "dev": true, "requires": { "ev-emitter": "^1.0.0", @@ -25824,13 +28805,13 @@ "p-defer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", - "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "integrity": "sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw==", "dev": true }, "p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", "dev": true }, "p-is-promise": { @@ -25849,12 +28830,12 @@ } }, "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "requires": { - "p-limit": "^2.0.0" + "p-limit": "^2.2.0" } }, "p-try": { @@ -25880,19 +28861,13 @@ }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true } } }, @@ -25912,13 +28887,21 @@ "package-json": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", - "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", + "integrity": "sha512-q/R5GrMek0vzgoomq6rm9OX+3PQve8sLwTirmK30YB3Cu0Bbt9OX9M/SIUnroN5BGJkzwGsFwDaRGD9EwBOlCA==", "dev": true, "requires": { "got": "^6.7.1", "registry-auth-token": "^3.0.1", "registry-url": "^3.0.3", "semver": "^5.1.0" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + } } }, "pako": { @@ -25939,14 +28922,13 @@ } }, "parse-asn1": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", - "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", "dev": true, "requires": { - "asn1.js": "^4.0.0", + "asn1.js": "^5.2.0", "browserify-aes": "^1.0.0", - "create-hash": "^1.1.0", "evp_bytestokey": "^1.0.0", "pbkdf2": "^3.0.3", "safe-buffer": "^5.1.1" @@ -25955,7 +28937,7 @@ "parse-filepath": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", - "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=", + "integrity": "sha512-FwdRXKCohSVeXqwtYonZTXtbGJKrn+HNyWDYVcp5yuJlesTwNH4rsmRZ+GrKAPJ5bLpRxESMeS+Rl0VCHRvB2Q==", "dev": true, "requires": { "is-absolute": "^1.0.0", @@ -25966,7 +28948,7 @@ "parse-json": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", "dev": true, "requires": { "error-ex": "^1.3.1", @@ -25976,7 +28958,7 @@ "parse-passwd": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", - "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", + "integrity": "sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==", "dev": true }, "parse5": { @@ -25996,13 +28978,13 @@ "pascalcase": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "integrity": "sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==", "dev": true }, "path": { "version": "0.12.7", "resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz", - "integrity": "sha1-1NwqUGxM4hl+tIHr/NWzbAFAsQ8=", + "integrity": "sha512-aXXC6s+1w7otVF9UletFkFcDsJeO7lSZBPUQhtb5O0xJe8LtYhj/GxldoL09bBj9+ZmE2hNoHqQSFMN5fikh4Q==", "dev": true, "requires": { "process": "^0.11.1", @@ -26018,42 +29000,42 @@ "path-dirname": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "integrity": "sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==", "dev": true }, "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "dev": true }, "path-is-inside": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==", "dev": true }, "path-key": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", "dev": true }, "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "path-root": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", - "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=", + "integrity": "sha512-QLcPegTHF11axjfojBIoDygmS2E3Lf+8+jI6wOVmNVenrKSo3mFdSGiIgdSHenczw3wPtlVMQaFVwGmM7BJdtg==", "dev": true, "requires": { "path-root-regex": "^0.1.0" @@ -26062,18 +29044,18 @@ "path-root-regex": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", - "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=", + "integrity": "sha512-4GlJ6rZDhQZFE0DPVKh0e9jmZ5egZfxTkp7bcRDuPlJXbAwhxcl2dINPUAsjLdejqaLsCeg8axcLjIbvBjN4pQ==", "dev": true }, "path-to-regexp": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" }, "path-type": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "integrity": "sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg==", "dev": true, "requires": { "graceful-fs": "^4.1.2", @@ -26084,21 +29066,21 @@ "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", "dev": true } } }, "pathval": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz", - "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", + "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", "dev": true }, "pbkdf2": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.1.tgz", - "integrity": "sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", "dev": true, "requires": { "create-hash": "^1.1.2", @@ -26111,38 +29093,43 @@ "pend": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", "dev": true }, "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "dev": true + }, + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", "dev": true }, "picomatch": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", - "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", - "dev": true, - "optional": true + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true }, "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", "dev": true }, "pinkie": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==", "dev": true }, "pinkie-promise": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==", "dev": true, "requires": { "pinkie": "^2.0.0" @@ -26177,27 +29164,24 @@ } }, "pino-std-serializers": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-2.4.2.tgz", - "integrity": "sha512-WaL504dO8eGs+vrK+j4BuQQq6GLKeCCcHaMB2ItygzVURcL1CycwNEUHTD/lHFHs/NL5qAz2UKrjYWXKSf4aMQ==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-2.5.0.tgz", + "integrity": "sha512-wXqbqSrIhE58TdrxxlfLwU9eDhrzppQDvGhBEr1gYbzzM4KKo3Y63gSjiDXRKLVS2UOXdPNR2v+KnQgNrs+xUg==", "dev": true }, "pirates": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", - "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", - "dev": true, - "requires": { - "node-modules-regexp": "^1.0.0" - } + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", + "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "dev": true }, "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, "requires": { - "find-up": "^3.0.0" + "find-up": "^4.0.0" } }, "pluralize": { @@ -26209,7 +29193,7 @@ "po2json": { "version": "0.4.5", "resolved": "https://registry.npmjs.org/po2json/-/po2json-0.4.5.tgz", - "integrity": "sha1-R7spUtoy1Yob4vJWpZjuvAt0URg=", + "integrity": "sha512-JH0hgi1fC0t9UvdiyS7kcVly0N1WNey4R2YZ/jPaxQKYm6Cfej7ZTgiEy8LP2JwoEhONceiNS8JH5mWPQkiXeA==", "dev": true, "requires": { "gettext-parser": "1.1.0", @@ -26225,7 +29209,7 @@ "portscanner": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/portscanner/-/portscanner-1.2.0.tgz", - "integrity": "sha1-sUu9olfRTDEPqcwJaCrwLUCWGAI=", + "integrity": "sha512-3MCx40XO6ChNJJHw1tTFukQK/M/8FacGZK/vGbnrKpozObrJzembYtfi7ZdA2hkF2Lojg77XhsKUPvF8eHKcDA==", "dev": true, "requires": { "async": "1.5.2" @@ -26234,7 +29218,7 @@ "posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "integrity": "sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==", "dev": true }, "postcss": { @@ -26259,13 +29243,13 @@ "prelude-ls": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", "dev": true }, "prepend-http": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "integrity": "sha512-PhmXi5XmoyKw1Un4E+opM2KcsJInDvKyuOumcjjw3waw86ZNjHwVUOOWLc4bCzLdcKNaWBH9e99sbWzDQsVaYg==", "dev": true }, "private": { @@ -26291,7 +29275,7 @@ "process": { "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", "dev": true }, "process-nextick-args": { @@ -26317,13 +29301,13 @@ "promise-inflight": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", "dev": true }, "promise.any": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/promise.any/-/promise.any-0.1.1.tgz", - "integrity": "sha1-Fg+JisPHW1y7cw/yOgyi8XQHvzo=", + "integrity": "sha512-RGLK/1LwpbkZMv1WGVN6dpSRqi03QtYXuInuVHBhJx6dQ9+VDl7zYfVnKpU15awZGQDpmPvrigsTiVBFvw18mw==", "dev": true }, "propagate": { @@ -26333,11 +29317,11 @@ "dev": true }, "proxy-addr": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", - "integrity": "sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", "requires": { - "forwarded": "~0.1.2", + "forwarded": "0.2.0", "ipaddr.js": "1.9.1" } }, @@ -26358,19 +29342,13 @@ }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true } } }, @@ -26383,19 +29361,19 @@ "prr": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", "dev": true }, "pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", "dev": true }, "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", "dev": true }, "public-encrypt": { @@ -26413,9 +29391,9 @@ }, "dependencies": { "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true } } @@ -26446,9 +29424,9 @@ } }, "pug-code-gen": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-2.0.2.tgz", - "integrity": "sha512-kROFWv/AHx/9CRgoGJeRSm+4mLWchbgpRzTEn8XCiwwOy6Vh0gAClS8Vh5TEJ9DBjaP8wCjS3J6HKsEsYdvaCw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-2.0.3.tgz", + "integrity": "sha512-r9sezXdDuZJfW9J91TN/2LFbiqDhmltTFmGpHTsGdrNGp3p4SxAjjXEfnuK2e4ywYsRIVP0NeLbSAMHUcaX1EA==", "requires": { "constantinople": "^3.1.2", "doctypes": "^1.1.0", @@ -26577,27 +29555,6 @@ "ws": "^6.1.0" }, "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "mime": { - "version": "2.4.6", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", - "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==", - "dev": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -26610,19 +29567,22 @@ } }, "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "requires": { + "side-channel": "^1.0.4" + } }, "querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=" + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.1.tgz", + "integrity": "sha512-wkvS7mL/JMugcup3/rMitHmd9ecIGd2lhFhK9N3UUQ450h66d1r3Y9nvXzQAW1Lq+wyx61k/1pfKS5KuKiyEbg==" }, "querystring-es3": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", + "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==", "dev": true }, "quick-format-unescaped": { @@ -26656,12 +29616,12 @@ "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" }, "raw-body": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", - "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", "requires": { - "bytes": "3.1.0", - "http-errors": "1.7.2", + "bytes": "3.1.2", + "http-errors": "2.0.0", "iconv-lite": "0.4.24", "unpipe": "1.0.0" } @@ -26681,7 +29641,7 @@ "read-pkg": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "integrity": "sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ==", "dev": true, "requires": { "load-json-file": "^1.0.0", @@ -26692,7 +29652,7 @@ "read-pkg-up": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "integrity": "sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==", "dev": true, "requires": { "find-up": "^1.0.0", @@ -26702,7 +29662,7 @@ "find-up": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "integrity": "sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==", "dev": true, "requires": { "path-exists": "^2.0.0", @@ -26712,7 +29672,7 @@ "path-exists": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "integrity": "sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==", "dev": true, "requires": { "pinkie-promise": "^2.0.0" @@ -26735,14 +29695,11 @@ "util-deprecate": "~1.0.1" }, "dependencies": { - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true } } }, @@ -26760,7 +29717,7 @@ "readline2": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/readline2/-/readline2-1.0.1.tgz", - "integrity": "sha1-QQWWCP/BVHV7cV2ZidGZ/783LjU=", + "integrity": "sha512-8/td4MmwUB6PkZUbV25uKz7dfrmjYWxsW8DVfibWdlHRk/l/DfHKn4pU+dfcoGLFgWOdyGCzINRQD7jn+Bv+/g==", "dev": true, "requires": { "code-point-at": "^1.0.0", @@ -26771,7 +29728,7 @@ "is-fullwidth-code-point": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", "dev": true, "requires": { "number-is-nan": "^1.0.0" @@ -26780,54 +29737,54 @@ "mute-stream": { "version": "0.0.5", "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.5.tgz", - "integrity": "sha1-j7+rsKmKJT0xhDMfno3rc3L6xsA=", + "integrity": "sha512-EbrziT4s8cWPmzr47eYVW3wimS4HsvlnV5ri1xw1aR6JQo/OrJX5rkl32K/QQHdxeabJETtfeaROGhd8W7uBgg==", "dev": true } } }, "rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz", + "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==", "dev": true, "requires": { - "resolve": "^1.1.6" + "resolve": "^1.9.0" } }, "recursive-readdir": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz", - "integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz", + "integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==", "dev": true, "requires": { - "minimatch": "3.0.4" + "minimatch": "^3.0.5" } }, "regenerate": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.1.tgz", - "integrity": "sha512-j2+C8+NtXQgEKWk49MMP5P/u2GhnahTtVkRIHr5R5lVRlbKvmQ+oS+A5aLKWp2ma5VkT8sh6v+v4hbH0YHR66A==", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", "dev": true }, "regenerate-unicode-properties": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz", - "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", + "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", "dev": true, "requires": { - "regenerate": "^1.4.0" + "regenerate": "^1.4.2" } }, "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.10", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.10.tgz", + "integrity": "sha512-KepLsg4dU12hryUO7bp/axHAKvwGOCV0sGloQtpagJ12ai+ojVDqkeGSiRX1zlq+kjIMZ1t7gpze+26QqtdGqw==", "dev": true }, "regenerator-transform": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz", - "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==", + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.0.tgz", + "integrity": "sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==", "dev": true, "requires": { "@babel/runtime": "^7.8.4" @@ -26841,16 +29798,47 @@ "requires": { "extend-shallow": "^3.0.2", "safe-regex": "^1.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + } + }, + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + } } }, "regexp.prototype.flags": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", - "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", "dev": true, "requires": { + "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" + "functions-have-names": "^1.2.2" } }, "regexpp": { @@ -26860,17 +29848,17 @@ "dev": true }, "regexpu-core": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.0.tgz", - "integrity": "sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.2.1.tgz", + "integrity": "sha512-HrnlNtpvqP1Xkb28tMhBUO2EbyUHdQlsnlAhzWcwHy8WJR53UWr7/MAvqrsQKMbV4qdpv03oTMG8iIhfsPFktQ==", "dev": true, "requires": { - "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^8.2.0", - "regjsgen": "^0.5.1", - "regjsparser": "^0.6.4", - "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.2.0" + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsgen": "^0.7.1", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.0.0" } }, "registry-auth-token": { @@ -26886,22 +29874,22 @@ "registry-url": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", - "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", + "integrity": "sha512-ZbgR5aZEdf4UKZVBPYIgaglBmSF2Hi94s2PcIHhRGFjKYu+chjJdYfHn4rt3hB6eCKLJ8giVIIfgMa1ehDfZKA==", "dev": true, "requires": { "rc": "^1.0.1" } }, "regjsgen": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz", - "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.7.1.tgz", + "integrity": "sha512-RAt+8H2ZEzHeYWxZ3H2z6tF18zyyOnlcdaafLrm21Bguj7uZy6ULibiAFdXEtKQY4Sy7wDTwDiOazasMLc4KPA==", "dev": true }, "regjsparser": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz", - "integrity": "sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw==", + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", "dev": true, "requires": { "jsesc": "~0.5.0" @@ -26910,7 +29898,7 @@ "jsesc": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", "dev": true } } @@ -26918,7 +29906,7 @@ "relaxed-json": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/relaxed-json/-/relaxed-json-1.0.1.tgz", - "integrity": "sha1-fI1KovCVcEzQIOMugJm8rhA/C9Q=", + "integrity": "sha512-1ECKWi9z++YJI6kopSh4gAFPgNIKD7IgzQdImhqtlb9ip62LgkQmD70AwNgPGXgqxlmVzKTvg/s+wNG1Da7UTw==", "dev": true, "requires": { "chalk": "^1.0.0", @@ -26928,13 +29916,13 @@ "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "dev": true }, "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dev": true, "requires": { "ansi-styles": "^2.2.1", @@ -26947,7 +29935,7 @@ "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "dev": true } } @@ -26955,24 +29943,24 @@ "remove-trailing-separator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==", "dev": true }, "repeat-element": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", + "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", "dev": true }, "repeat-string": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==" }, "repeating": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "integrity": "sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A==", "dev": true, "requires": { "is-finite": "^1.0.0" @@ -27007,9 +29995,9 @@ }, "dependencies": { "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", "dev": true } } @@ -27037,19 +30025,19 @@ "require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", "dev": true }, "require-main-filename": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "integrity": "sha512-IqSUtOVP4ksd1C/ej5zeEh/BIP2ajqpn8c5x+q99gvcIG/Qf0cud5raVnE/Dwd0ua9TXYDoDc0RE5hBSdz22Ug==", "dev": true }, "require-uncached": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", - "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", + "integrity": "sha512-Xct+41K3twrbBHdxAgMoOS+cNcoqIjfM2/VxBF4LL2hVph7YsF8VSKyQ3BDFZwEVbok9yeDl2le/qo0S77WG2w==", "dev": true, "requires": { "caller-path": "^0.1.0", @@ -27057,17 +30045,19 @@ } }, "resolve": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", - "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", "requires": { - "path-parse": "^1.0.6" + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" } }, "resolve-dir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", - "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", + "integrity": "sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg==", "dev": true, "requires": { "expand-tilde": "^2.0.0", @@ -27077,19 +30067,19 @@ "resolve-from": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz", - "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=", + "integrity": "sha512-kT10v4dhrlLNcnO084hEjvXCI1wUG9qZLoz2RogxqDQQYy7IxjI/iMUkOtQTNEh6rzHxvdQWHsJyel1pKOVCxg==", "dev": true }, "resolve-url": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "integrity": "sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==", "dev": true }, "restore-cursor": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "integrity": "sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==", "dev": true, "requires": { "onetime": "^2.0.0", @@ -27105,7 +30095,7 @@ "right-align": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", - "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", + "integrity": "sha512-yqINtL/G7vs2v+dFIZmFUDbnVyFUJFKd6gK22Kgo6R4jfJGFtisKyncWDDULgjfqf4ASQuIQyjJ7XZ+3aWpsAg==", "requires": { "align-text": "^0.1.1" } @@ -27138,7 +30128,7 @@ "run-queue": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", - "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "integrity": "sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg==", "dev": true, "requires": { "aproba": "^1.1.1" @@ -27147,13 +30137,13 @@ "rx-lite": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-3.1.2.tgz", - "integrity": "sha1-Gc5QLKVyZl87ZHsQk5+X/RYV8QI=", + "integrity": "sha512-1I1+G2gteLB8Tkt8YI1sJvSIfa0lWuRtC8GjvtyPBcLSF5jBCCJJqKrpER5JU5r6Bhe+i9/pK3VMuUcXu0kdwQ==", "dev": true }, "rx-lite-aggregates": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", - "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", + "integrity": "sha512-3xPNZGW93oCjiO7PtKxRK6iOVYBWBvtf9QHDfU23Oc+dLIQmAV//UnyXV/yihv81VS/UqoQPk4NegS8EFi55Hg==", "dev": true, "requires": { "rx-lite": "*" @@ -27169,14 +30159,14 @@ } }, "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" }, "safe-json-parse": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/safe-json-parse/-/safe-json-parse-1.0.1.tgz", - "integrity": "sha1-PnZyPjjf3aE8mx0poeB//uSzC1c=", + "integrity": "sha512-o0JmTu17WGUaUOHa1l0FPGXKBfijbxK6qoHzlkihsDXxzBHvJcA7zgviKR92Xs841rX9pK16unfphLq0/KqX7A==", "dev": true }, "safe-json-stringify": { @@ -27189,12 +30179,23 @@ "safe-regex": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "integrity": "sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==", "dev": true, "requires": { "ret": "~0.1.10" } }, + "safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + } + }, "safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", @@ -27207,67 +30208,95 @@ "dev": true }, "sax": { - "version": "0.5.8", - "resolved": "https://registry.npmjs.org/sax/-/sax-0.5.8.tgz", - "integrity": "sha1-1HLbIo6zMcJQaw6MFVJK25OdEsE=", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", "dev": true }, "schema-utils": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", - "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", "dev": true, "requires": { - "@types/json-schema": "^7.0.4", - "ajv": "^6.12.2", - "ajv-keywords": "^3.4.1" + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" } }, "secure-keys": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/secure-keys/-/secure-keys-1.0.0.tgz", - "integrity": "sha1-8MgtmKOxOah3aogIBQuCRDEIf8o=", + "integrity": "sha512-nZi59hW3Sl5P3+wOO89eHBAAGwmCPd2aE1+dLZV5MO+ItQctIvAqihzaAXIQhvtH4KJPxM080HsnqltR2y8cWg==", "dev": true }, "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true }, "semver-diff": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", - "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", + "integrity": "sha512-gL8F8L4ORwsS0+iQ34yCYv///jsOq0ZL7WP55d1HnJ32o7tyFYEFQZQA22mrLIacZdU6xecaBBZ+uEiffGNyXw==", "dev": true, "requires": { "semver": "^5.0.3" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + } } }, "send": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", - "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", "requires": { "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", + "depd": "2.0.0", + "destroy": "1.2.0", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", "fresh": "0.5.2", - "http-errors": "~1.7.2", + "http-errors": "2.0.0", "mime": "1.6.0", - "ms": "2.1.1", - "on-finished": "~2.3.0", + "ms": "2.1.3", + "on-finished": "2.4.1", "range-parser": "~1.2.1", - "statuses": "~1.5.0" + "statuses": "2.0.1" }, "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + }, + "dependencies": { + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" } } }, @@ -27280,7 +30309,7 @@ "serve-index": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", "dev": true, "requires": { "accepts": "~1.3.4", @@ -27292,10 +30321,25 @@ "parseurl": "~1.3.2" }, "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true + }, "http-errors": { "version": "1.6.3", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", "dev": true, "requires": { "depd": "~1.1.2", @@ -27304,35 +30348,47 @@ "statuses": ">= 1.4.0 < 2" } }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "setprototypeof": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", "dev": true + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true } } }, "serve-static": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", - "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", "requires": { "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.17.1" + "send": "0.18.0" } }, "set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "set-immediate-shim": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", - "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", "dev": true }, "set-value": { @@ -27347,13 +30403,13 @@ "split-string": "^3.0.1" }, "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "dev": true, "requires": { - "is-extendable": "^0.1.0" + "isobject": "^3.0.1" } } } @@ -27361,13 +30417,13 @@ "setimmediate": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", "dev": true }, "setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" }, "sha.js": { "version": "2.4.11", @@ -27382,7 +30438,7 @@ "shallow-clone": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-0.1.2.tgz", - "integrity": "sha1-WQnodLp3EG1zrEFM/sH/yofZcGA=", + "integrity": "sha512-J1zdXCky5GmNnuauESROVu31MQSnLoYvlyEn6j2Ztk6Q5EHFIhxkMhYcv6vuDzl2XEzoRr856QwzMgWM/TmZgw==", "dev": true, "requires": { "is-extendable": "^0.1.1", @@ -27394,24 +30450,18 @@ "kind-of": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-2.0.1.tgz", - "integrity": "sha1-AY7HpM5+OobLkUG+UZ0kyPqpgbU=", + "integrity": "sha512-0u8i1NZ/mg0b+W3MGGw5I7+6Eib2nx72S/QvXa0hYjEkjTknYmEYQJwGu3mLC0BrhtJjtQafTkyRUQ75Kx0LVg==", "dev": true, "requires": { "is-buffer": "^1.0.2" } - }, - "lazy-cache": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-0.2.7.tgz", - "integrity": "sha1-f+3fLctu23fRHvHRF6tf/fCrG2U=", - "dev": true } } }, "shebang-command": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", "dev": true, "requires": { "shebang-regex": "^1.0.0" @@ -27420,13 +30470,13 @@ "shebang-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", "dev": true }, "shell-quote": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz", - "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=", + "integrity": "sha512-V0iQEZ/uoem3NmD91rD8XiuozJnq9/ZJnbHVXHnWqP1ucAhS3yJ7sLIIzEi57wFFcK3oi3kFUC46uSyWr35mxg==", "dev": true, "requires": { "array-filter": "~0.0.0", @@ -27444,6 +30494,17 @@ "glob": "^7.0.0", "interpret": "^1.0.0", "rechoir": "^0.6.2" + }, + "dependencies": { + "rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "dev": true, + "requires": { + "resolve": "^1.1.6" + } + } } }, "shellwords": { @@ -27452,6 +30513,16 @@ "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", "dev": true }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, "sign-addon": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/sign-addon/-/sign-addon-0.3.1.tgz", @@ -27473,7 +30544,7 @@ "ajv": { "version": "5.5.2", "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "integrity": "sha512-Ajr4IcMXq/2QmMkEmSvxqfLN5zGmJ92gHXAeOXq1OekoH2rfDNsgdDoL2f7QaRCy7G/E6TpxBVdRuNraMztGHw==", "dev": true, "requires": { "co": "^4.6.0", @@ -27485,7 +30556,7 @@ "babel-polyfill": { "version": "6.16.0", "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.16.0.tgz", - "integrity": "sha1-LUUCHfh+JqN0ttTRqcZZZNF/JCI=", + "integrity": "sha512-PI/IOV3AnDfLph2y9meCys0AGY4U3Pj8ozSIKp+76zlMvin2w0Rxy0RgQUnCTAQWqKsHqvPijoEyNIdrao6J1g==", "dev": true, "requires": { "babel-runtime": "^6.9.1", @@ -27496,19 +30567,19 @@ "es6-error": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.0.0.tgz", - "integrity": "sha1-8JTHBB9mJZm7EnINoFnWucf/D0A=", + "integrity": "sha512-atCcmEjui49DMEp2RgaUrQcmJPqoQOiSL9LEXAM4tEcy29maTfJP2motu75GfyefeZElQOEzOHiO/8Do7Dr1Lw==", "dev": true }, "fast-deep-equal": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", - "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", + "integrity": "sha512-fueX787WZKCV0Is4/T2cyAdM4+x1S3MXXOAhavE1ys/W42SHAPacLTQhucja22QBYrfGw50M2sRiXPtTGv9Ymw==", "dev": true }, "har-validator": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", - "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", + "integrity": "sha512-r7LZkP7Z6WMxj5zARzB9dSpIKu/sp0NfHIgtj6kmQXhEArNctjB5FEv/L2XfLdWqIocPT2QVt0LFOlEUioTBtQ==", "dev": true, "requires": { "ajv": "^5.1.0", @@ -27518,13 +30589,13 @@ "json-schema-traverse": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", + "integrity": "sha512-4JD/Ivzg7PoW8NzdrBSr3UFwC9mHgvI7Z6z3QGBsSHgKaRTUDmyZAAKJo2UbG1kUVfS9WS8bi36N49U1xw43DA==", "dev": true }, "mz": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/mz/-/mz-2.5.0.tgz", - "integrity": "sha1-KFkCXfA9RrV7sxcXSxlkd85kzsE=", + "integrity": "sha512-jTqXIBzwjbFIwluxl7vtU5BbzQjPbhSsugBkJfqL9i3fx3Tl6N0VI/+AI8vDROzTdrzdjGBazK7n5yK1xCNE7A==", "dev": true, "requires": { "any-promise": "^1.0.0", @@ -27535,25 +30606,25 @@ "oauth-sign": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", + "integrity": "sha512-VlF07iu3VV3+BTXj43Nmp6Irt/G7j/NgEctUS6IweH1RGhURjjCc2NWtzXFPXXWWfc7hgbXQdtiQu2LGp6MxUg==", "dev": true }, "punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", "dev": true }, "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", "dev": true }, "regenerator-runtime": { "version": "0.9.6", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.9.6.tgz", - "integrity": "sha1-0z65XQ0gAaS+OWWXB8UbDLcc4Ck=", + "integrity": "sha512-D0Y/JJ4VhusyMOd/o25a3jdUqN/bC85EFsaoL9Oqmy/O4efCh+xhp7yj2EEOsj974qvMkcW8AwUzJ1jB/MbxCw==", "dev": true }, "request": { @@ -27587,7 +30658,7 @@ "source-map-support": { "version": "0.4.6", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.6.tgz", - "integrity": "sha1-MlUqpktFg5KoXqs7C17mFScWeus=", + "integrity": "sha512-cqbwg0QgDOUayGgn8KALCCBWf/tuxJCCyvqkNmtb6pF/3YgJUoKqtZ+7AKDyCITNd3+dbz7VdHjcxEgFL9U/aQ==", "dev": true, "requires": { "source-map": "^0.5.3" @@ -27605,9 +30676,9 @@ } }, "signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true }, "sinon": { @@ -27629,12 +30700,13 @@ "version": "2.14.0", "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-2.14.0.tgz", "integrity": "sha512-9stIF1utB0ywNHNT7RgiXbdmen8QDCRsrTjw+G9TgKt1Yexjiv8TOWZ6WHsTPz57Yky3DIswZvEqX8fpuHNDtQ==", - "dev": true + "dev": true, + "requires": {} }, "slash": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "integrity": "sha512-3TYDR7xWt4dIqV2JauJr+EJeW356RXijHeUlO+8djJ+uBXPn8/2dpzBc8yQhh583sVvc9CvFAeQVgijsH+PNNg==", "dev": true }, "slice-ansi": { @@ -27649,7 +30721,7 @@ "smart-buffer": { "version": "1.1.15", "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-1.1.15.tgz", - "integrity": "sha1-fxFLW2X6s+KjWqd1uxLw0cZJvxY=", + "integrity": "sha512-1+8bxygjTsNfvQe0/0pNBesTOlSHtOeG6b6LYbvsZCCHDKYZ40zcQo6YTnZBWrBSLWOCbrHljLdEmGMYebu7aQ==", "dev": true }, "snapdragon": { @@ -27668,23 +30740,86 @@ "use": "^3.1.0" }, "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, "define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", "dev": true, "requires": { "is-descriptor": "^0.1.0" } }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "dev": true, "requires": { - "is-extendable": "^0.1.0" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" } + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true } } }, @@ -27702,40 +30837,11 @@ "define-property": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", "dev": true, "requires": { "is-descriptor": "^1.0.0" } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } } } }, @@ -27751,7 +30857,7 @@ "kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "requires": { "is-buffer": "^1.1.5" @@ -27804,15 +30910,15 @@ }, "dependencies": { "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", "dev": true }, "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" @@ -27840,12 +30946,6 @@ "through": "^2.3.6" } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "opn": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", @@ -27858,13 +30958,19 @@ "rx-lite": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", - "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", + "integrity": "sha512-Cun9QucwK6MIrp3mry/Y7hqD1oFqTYLQ4pGxaHTjIdaFDWRGGLikqp6u8LcWJnzpoALg9hap+JGk8sFIUuEGNA==", + "dev": true + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true }, "strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", "dev": true, "requires": { "ansi-regex": "^3.0.0" @@ -27884,19 +30990,13 @@ }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true } } }, @@ -27912,18 +31012,18 @@ }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true } } @@ -27959,19 +31059,13 @@ }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true } } }, @@ -28000,6 +31094,12 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", "dev": true + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true } } }, @@ -28016,19 +31116,13 @@ }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true } } }, @@ -28044,19 +31138,13 @@ }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true } } }, @@ -28078,18 +31166,18 @@ }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true } } @@ -28114,19 +31202,13 @@ }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true } } }, @@ -28154,18 +31236,18 @@ }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true } } @@ -28179,7 +31261,7 @@ "snyk-tree": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/snyk-tree/-/snyk-tree-1.0.0.tgz", - "integrity": "sha1-D7cxdtvzLngvGRAClBYESPkRHMg=", + "integrity": "sha512-JQezX6eaVi0uNctPcx2Uzy5KA9lpTRRe31n8NI71DIseGvI6OVCfuKjzFptE06h4ZISMey351ICXnHBadBtWdg==", "dev": true, "requires": { "archy": "^1.0.0" @@ -28188,7 +31270,7 @@ "snyk-try-require": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/snyk-try-require/-/snyk-try-require-1.3.1.tgz", - "integrity": "sha1-bgJvkuZK9/zM6h7lPVJIQeQYohI=", + "integrity": "sha512-adCnpfCvigiarbADOHuqh82P4aQUlyq6nWzhVmEUly62Q3tnVg4BGtgjYISkaj9GGBmpgVZiJegENBpQr02NsQ==", "dev": true, "requires": { "debug": "^3.1.0", @@ -28198,26 +31280,20 @@ }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true } } }, "socks": { "version": "1.1.10", "resolved": "https://registry.npmjs.org/socks/-/socks-1.1.10.tgz", - "integrity": "sha1-W4t/x8jzQcU+0FbpKbe/Tei6e1o=", + "integrity": "sha512-ArX4vGPULWjKDKgUnW8YzfI2uXW7kzgkJuB0GnFBA/PfT3exrrOk+7Wk2oeb894Qf20u1PWv9LEgrO0Z82qAzA==", "dev": true, "requires": { "ip": "^1.1.4", @@ -28252,7 +31328,7 @@ "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==" }, "source-map-resolve": { "version": "0.5.3", @@ -28268,9 +31344,9 @@ } }, "source-map-support": { - "version": "0.5.19", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", - "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", "dev": true, "requires": { "buffer-from": "^1.0.0", @@ -28286,15 +31362,15 @@ } }, "source-map-url": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", + "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", "dev": true }, "spawn-sync": { "version": "1.0.15", "resolved": "https://registry.npmjs.org/spawn-sync/-/spawn-sync-1.0.15.tgz", - "integrity": "sha1-sAeZVX63+wyDdsKdROih6mfldHY=", + "integrity": "sha512-9DWBgrgYZzNghseho0JOuh+5fg9u6QWhAWa51QC7+U5rCheZ/j1DrEZnyE0RBBRqZ9uEXGPgSSM0nky6burpVw==", "dev": true, "requires": { "concat-stream": "^1.4.7", @@ -28328,15 +31404,15 @@ } }, "spdx-license-ids": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", - "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", + "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==", "dev": true }, "split": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/split/-/split-0.3.3.tgz", - "integrity": "sha1-zQ7qXmOiEd//frDwkcQTPi0N0o8=", + "integrity": "sha512-wD2AeVmxXRBoX44wAycgjVpMhvbwdI2aZjCkvfNcH1YqHQvJVa1duWc73OyVGJUc05fhFaTZeQ/PYsrmyH0JVA==", "dev": true, "requires": { "through": "2" @@ -28349,18 +31425,47 @@ "dev": true, "requires": { "extend-shallow": "^3.0.0" + }, + "dependencies": { + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + } + }, + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + } } }, "sprintf-js": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", - "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", - "dev": true + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" }, "sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", + "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", "dev": true, "requires": { "asn1": "~0.2.3", @@ -28386,7 +31491,7 @@ "static-extend": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "integrity": "sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==", "dev": true, "requires": { "define-property": "^0.2.5", @@ -28396,23 +31501,80 @@ "define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", "dev": true, "requires": { "is-descriptor": "^0.1.0" } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true } } }, "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" }, "stealthy-require": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", - "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", + "integrity": "sha512-ZnWpYnYugiOVEY5GkcuJK1io5V8QmNYChG62gSit9pQVGErXtrKuPC55ITaVSukmMta5qpMU7vqLt2Lnni4f/g==", "dev": true }, "stream-browserify": { @@ -28451,10 +31613,27 @@ "stream-parser": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/stream-parser/-/stream-parser-0.3.1.tgz", - "integrity": "sha1-FhhUhpRCACGhGC/wrxkRwSl2F3M=", + "integrity": "sha512-bJ/HgKq41nlKvlhccD5kaCr/P+Hu0wPNKPJOH7en+YrJu/9EgqUF+88w5Jb6KNcjOFMhfX4B2asfeAtIGuHObQ==", "dev": true, "requires": { "debug": "2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + } } }, "stream-shift": { @@ -28466,7 +31645,7 @@ "stream-to-array": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/stream-to-array/-/stream-to-array-2.3.0.tgz", - "integrity": "sha1-u/azn19D7DC8cbq8s3VXrOzzQ1M=", + "integrity": "sha512-UsZtOYEn4tWU2RGLOXr/o/xjRBftZRlG3dEWoaHr8j4GuypJ3isitGbVyjQKAuMu+xbiop8q224TjiZWc4XTZA==", "dev": true, "requires": { "any-promise": "^1.1.0" @@ -28475,7 +31654,7 @@ "stream-to-promise": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/stream-to-promise/-/stream-to-promise-2.2.0.tgz", - "integrity": "sha1-se2y4cjLESidG1A8CNPyrvUeZQ8=", + "integrity": "sha512-HAGUASw8NT0k8JvIVutB2Y/9iBk7gpgEyAudXwNJmZERdMITGdajOa4VJfD/kNiA3TppQpTP4J+CtcHwdzKBAw==", "dev": true, "requires": { "any-promise": "~1.3.0", @@ -28486,7 +31665,7 @@ "end-of-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.1.0.tgz", - "integrity": "sha1-6TUyWLqpEIll78QcsO+K3i88+wc=", + "integrity": "sha512-EoulkdKF/1xa92q25PbjuDcgJ9RDHYU2Rs3SCIvs2/dSQ3BpmxneNHmA/M7fe60M3PrV7nNGTTNbkK62l6vXiQ==", "dev": true, "requires": { "once": "~1.3.0" @@ -28495,7 +31674,7 @@ "once": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", - "integrity": "sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA=", + "integrity": "sha512-6vaNInhu+CHxtONf3zw3vq4SP2DOQhjBvIa3rNcG0+P7eKWlYH6Peu7rHizSloRU2EwMz6GraLieis9Ac9+p1w==", "dev": true, "requires": { "wrappy": "1" @@ -28504,15 +31683,26 @@ } }, "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", - "dev": true + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + } + } }, "string-template": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz", - "integrity": "sha1-QpMuWYo1LQH8IuwzZ9nYTuxsmt0=", + "integrity": "sha512-Yptehjogou2xm4UJbxJ4CxgZx12HBfeystp0y3x7s4Dj32ltVVG1Gg8YhKjHZkHicuKpZX/ffilA8505VbUbpw==", "dev": true }, "string-width": { @@ -28526,15 +31716,15 @@ }, "dependencies": { "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", "dev": true }, "strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", "dev": true, "requires": { "ansi-regex": "^3.0.0" @@ -28556,29 +31746,31 @@ } }, "string.prototype.trimend": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", - "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", + "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", "dev": true, "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" } }, "string.prototype.trimstart": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", - "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", + "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", "dev": true, "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" } }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", "dev": true, "requires": { "ansi-regex": "^2.0.0" @@ -28587,13 +31779,13 @@ "strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", "dev": true }, "strip-bom-buf": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-1.0.0.tgz", - "integrity": "sha1-HLRar1dTD0yvhsf3UXnSyaUd1XI=", + "integrity": "sha512-1sUIL1jck0T1mhOLP2c696BIznzT525Lkub+n4jjMHjhjhoAQA6Ye659DxdlZBr0aLDMQoTxKIpnlqxgtwjsuQ==", "dev": true, "requires": { "is-utf8": "^0.2.1" @@ -28602,7 +31794,7 @@ "strip-bom-stream": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-3.0.0.tgz", - "integrity": "sha1-lWvMXYRDD2klapDtgjdlzYWOFZw=", + "integrity": "sha512-2di6sulSHfspbuEJHwwF6vzwijA4uaKsKYtviRQsJsOdxxb6yexiDcZFQ5oY10J50YxmCdHn/1sQmxDKbrGOVw==", "dev": true, "requires": { "first-chunk-stream": "^2.0.0", @@ -28612,13 +31804,13 @@ "strip-eof": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==", "dev": true }, "strip-json-comments": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", "dev": true }, "stylus": { @@ -28637,15 +31829,6 @@ "source-map": "^0.7.3" }, "dependencies": { - "css-parse": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-2.0.0.tgz", - "integrity": "sha1-pGjuZnwW2BzPBcWMONKpfHgNv9Q=", - "dev": true, - "requires": { - "css": "^2.0.0" - } - }, "debug": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", @@ -28655,28 +31838,16 @@ "ms": "2.0.0" } }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", "dev": true } } @@ -28690,10 +31861,15 @@ "has-flag": "^3.0.0" } }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + }, "symbol-observable": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", - "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=", + "integrity": "sha512-Kb3PrPYz4HanVF1LVGuAdW6LoVgIwjUYJGzFe7NDrBLCN4lsV/5J0MFurV+ygS4bRVwrCEt2c7MQ1R2a72oJDw==", "dev": true }, "table": { @@ -28734,13 +31910,13 @@ "temp-dir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", - "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "integrity": "sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ==", "dev": true }, "tempfile": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-2.0.0.tgz", - "integrity": "sha1-awRGhWqbERTRhW/8vlCczLCXcmU=", + "integrity": "sha512-ZOn6nJUgvgC09+doCEF3oB+r3ag7kUvlsXEGX069QRD60p+P3uP7XG9N2/at+EyIRGSN//ZY3LyEotA1YpmjuA==", "dev": true, "requires": { "temp-dir": "^1.0.0", @@ -28750,7 +31926,7 @@ "term-size": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", - "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", + "integrity": "sha512-7dPUZQGy/+m3/wjVz3ZW5dobSoD/02NxJpoXUX0WIyjfVS3l0c+b/+9phIDFA7FHzkYtwtMFgeGZ/Y8jVTeqQQ==", "dev": true, "requires": { "execa": "^0.7.0" @@ -28759,7 +31935,7 @@ "cross-spawn": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==", "dev": true, "requires": { "lru-cache": "^4.0.1", @@ -28770,7 +31946,7 @@ "execa": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "integrity": "sha512-RztN09XglpYI7aBBrJCPW95jEH7YF1UEPOoX9yDhUTPdp7mK+CQvnLTuD10BNXZ3byLTu2uehZ8EcKT/4CGiFw==", "dev": true, "requires": { "cross-spawn": "^5.0.1", @@ -28781,13 +31957,22 @@ "signal-exit": "^3.0.0", "strip-eof": "^1.0.0" } + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } } } }, "terser": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", - "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz", + "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==", "dev": true, "requires": { "commander": "^2.20.0", @@ -28804,16 +31989,16 @@ } }, "terser-webpack-plugin": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.4.tgz", - "integrity": "sha512-U4mACBHIegmfoEe5fdongHESNJWqsGU+W0S/9+BmYGVQDw1+c2Ow05TpMhxjPK1sRb7cuYq1BPl1e5YHJMTCqA==", + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz", + "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==", "dev": true, "requires": { "cacache": "^12.0.2", "find-cache-dir": "^2.1.0", "is-wsl": "^1.1.0", "schema-utils": "^1.0.0", - "serialize-javascript": "^3.1.0", + "serialize-javascript": "^4.0.0", "source-map": "^0.6.1", "terser": "^4.1.2", "webpack-sources": "^1.4.0", @@ -28843,6 +32028,36 @@ "y18n": "^4.0.0" } }, + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, "lru-cache": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", @@ -28852,6 +32067,16 @@ "yallist": "^3.0.2" } }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, "mississippi": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", @@ -28870,6 +32095,45 @@ "through2": "^2.0.0" } }, + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "dev": true + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + }, "pump": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", @@ -28900,10 +32164,16 @@ "ajv-keywords": "^3.1.0" } }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, "serialize-javascript": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-3.1.0.tgz", - "integrity": "sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", + "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", "dev": true, "requires": { "randombytes": "^2.1.0" @@ -28916,9 +32186,9 @@ "dev": true }, "ssri": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", - "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", + "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", "dev": true, "requires": { "figgy-pudding": "^3.5.1" @@ -28935,13 +32205,13 @@ "text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, "then-fs": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/then-fs/-/then-fs-2.0.0.tgz", - "integrity": "sha1-cveS3Z0xcFqRrhnr/Piz+WjIHaI=", + "integrity": "sha512-5ffcBcU+vFUCYDNi/o507IqjqrTkuGsLVZ1Fp50hwgZRY7ufVFa9jFfTy5uZ2QnSKacKigWKeaXkOqLa4DsjLw==", "dev": true, "requires": { "promise": ">=3.2 <8" @@ -28959,7 +32229,7 @@ "thenify-all": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", - "integrity": "sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY=", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", "dev": true, "requires": { "thenify": ">= 3.1.0 < 4" @@ -28968,7 +32238,7 @@ "through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", "dev": true }, "through2": { @@ -28984,19 +32254,19 @@ "thunkify": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/thunkify/-/thunkify-2.1.2.tgz", - "integrity": "sha1-+qDp0jDFGsyVyhOjYawFyn4EVT0=", + "integrity": "sha512-w9foI80XcGImrhMQ19pxunaEC5Rp2uzxZZg4XBAFRfiLOplk3F0l7wo+bO16vC2/nlQfR/mXZxcduo0MF2GWLg==", "dev": true }, "timed-out": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", + "integrity": "sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA==", "dev": true }, "timers-browserify": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", - "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", + "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", "dev": true, "requires": { "setimmediate": "^1.0.4" @@ -29017,19 +32287,13 @@ }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true } } }, @@ -29054,7 +32318,7 @@ "to-arraybuffer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", - "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", + "integrity": "sha512-okFlQcoGTi4LQBG/PgSYblw9VOyptsz2KJZqc6qtgGdes8VktzUQkj4BI2blit072iS8VODNcMA+tvnS9dnuMA==", "dev": true }, "to-buffer": { @@ -29066,13 +32330,13 @@ "to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", "dev": true }, "to-object-path": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "integrity": "sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==", "dev": true, "requires": { "kind-of": "^3.0.2" @@ -29081,7 +32345,7 @@ "kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "requires": { "is-buffer": "^1.1.5" @@ -29099,12 +32363,42 @@ "extend-shallow": "^3.0.2", "regex-not": "^1.0.2", "safe-regex": "^1.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + } + }, + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + } } }, "to-regex-range": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", "dev": true, "requires": { "is-number": "^3.0.0", @@ -29112,14 +32406,14 @@ } }, "toidentifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", - "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" }, "token-stream": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-0.0.1.tgz", - "integrity": "sha1-zu78cXp2xDFvEm0LnbqlXX598Bo=" + "integrity": "sha512-nfjOAu/zAWmX9tgwi5NRp7O7zTDUD1miHiB40klUnAh9qnL1iXdgzcz/i5dMaL5jahcBAaSfmNOBBJBLJW8TEg==" }, "toml": { "version": "2.3.6", @@ -29130,7 +32424,7 @@ "tosource": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/tosource/-/tosource-1.0.0.tgz", - "integrity": "sha1-QtiN0RZhi88A1hBt1URvNCeQL/E=", + "integrity": "sha512-N6g8eQ1eerw6Y1pBhdgkubWIiPFwXa2POSUrlL8jth5CyyEWNWzoGKRkO3CaO7Jx27hlJP54muB3btIAbx4MPg==", "dev": true }, "tough-cookie": { @@ -29144,42 +32438,38 @@ } }, "tr46": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", - "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" }, "traverse": { "version": "0.4.6", "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.4.6.tgz", - "integrity": "sha1-0EsigOTHkqWBVCnve4tgxkyczDQ=", + "integrity": "sha512-eIHWCq7YzOYYst5xsHyBbjPNP7PYkL9OYukWxUY2SopyxkTQSo2LkUmqWvkdkYhfDTtUCbaNTUnyo0b+ErjbIA==", "dev": true }, "trim-right": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", - "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "integrity": "sha512-WZGXGstmCWgeevgTL54hrCuw1dyMQIzWy7ZfqRJfSmJZBwklI15egmQytFP6bPidmw3M8d5yEowl1niq4vmqZw==", "dev": true }, "tslib": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", - "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", + "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==", "dev": true }, "tty-browserify": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", + "integrity": "sha512-JVa5ijo+j/sOoHGjw0sxw734b1LhBkQ3bvUGNdxnVXDCX81Yx7TFgnZygxrIIWn23hbfTaMYLwRmAxFyDuFmIw==", "dev": true }, "tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", "dev": true, "requires": { "safe-buffer": "^5.0.1" @@ -29188,13 +32478,13 @@ "tv4": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/tv4/-/tv4-1.3.0.tgz", - "integrity": "sha1-0CDIRvrdUMhVq7JeuuzGj8EPeWM=", + "integrity": "sha512-afizzfpJgvPr+eDkREK4MxJ/+r8nEEHcmitwgnPUqpaP+FpwQyadnxNoSACbgc/b1LsZYtODGoPiFxQrgJgjvw==", "dev": true }, "tv4-formats": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/tv4-formats/-/tv4-formats-3.0.3.tgz", - "integrity": "sha1-a3l43S3IqjnQrCWU3dtvbAy/2SE=", + "integrity": "sha512-T8qYFu5k0O8QamObivhw+giNF9v4EeN8Am1jo8HmArKowmg50H2zN/1Bffi0gf6BhsMd5qx/UUfLD8NNcRe/WA==", "dev": true, "requires": { "moment": "^2.10.6", @@ -29204,7 +32494,7 @@ "tweetnacl": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", "dev": true }, "type": { @@ -29216,7 +32506,7 @@ "type-check": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", "dev": true, "requires": { "prelude-ls": "~1.1.2" @@ -29240,7 +32530,7 @@ "typedarray": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", "dev": true }, "uc.micro": { @@ -29248,10 +32538,34 @@ "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" }, + "uglify-es": { + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", + "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "dev": true, + "requires": { + "commander": "~2.13.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "commander": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", + "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, "uglify-js": { "version": "2.8.29", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", - "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", + "integrity": "sha512-qLq/4y2pjcU3vhlhseXGGJ7VbFO4pBANu0kwl8VCa9KEI0V8VfZIx2Fy3w01iSTA/pGwKZSmu/+I4etLNDdt5w==", "requires": { "source-map": "~0.5.1", "uglify-to-browserify": "~1.0.0", @@ -29261,7 +32575,7 @@ "uglify-to-browserify": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", - "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", + "integrity": "sha512-vb2s1lYx2xBtUgy+ta+b2J/GLVUR+wmpINwHePmPRhOsIVCG2wDzKJ0n14GslH1BifsqVzSOwQhRaCAsZ/nI4Q==", "optional": true }, "uglifyjs-webpack-plugin": { @@ -29280,16 +32594,10 @@ "worker-farm": "^1.5.2" }, "dependencies": { - "commander": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", - "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==", - "dev": true - }, "find-cache-dir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", - "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "integrity": "sha512-46TFiBOzX7xq/PcSWfFwkyjpemdRnMe31UQF+os0y+1W3k95f6R4SEt02Hj4p3X0Mir9gfrkmOtshFidS0VPUg==", "dev": true, "requires": { "commondir": "^1.0.1", @@ -29300,7 +32608,7 @@ "find-up": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==", "dev": true, "requires": { "locate-path": "^2.0.0" @@ -29309,7 +32617,7 @@ "locate-path": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==", "dev": true, "requires": { "p-locate": "^2.0.0", @@ -29337,7 +32645,7 @@ "p-locate": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", "dev": true, "requires": { "p-limit": "^1.1.0" @@ -29346,19 +32654,19 @@ "p-try": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", "dev": true }, - "pify": { + "path-exists": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", "dev": true }, "pkg-dir": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "integrity": "sha512-ojakdnUgL5pzJYWw2AIDEupaQCX5OPbM688ZevubICjdIX01PRSYKqm33fJoCOJBRseYCTUlQRnBNX+Pchaejw==", "dev": true, "requires": { "find-up": "^2.1.0" @@ -29379,76 +32687,83 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true - }, - "uglify-es": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", - "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", - "dev": true, - "requires": { - "commander": "~2.13.0", - "source-map": "~0.6.1" - } } } }, + "unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + } + }, "unc-path-regex": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", - "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=", + "integrity": "sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==", "dev": true }, "undefsafe": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.3.tgz", - "integrity": "sha512-nrXZwwXrD/T/JXeygJqdCO6NZZ1L66HrxM/Z7mIq2oPanoN0F1nLx3lwJMu6AwJY69hdixaFQOuoYsMjE5/C2A==", - "dev": true, - "requires": { - "debug": "^2.2.0" - } + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz", + "integrity": "sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==", + "dev": true }, "underscore": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=", + "integrity": "sha512-z4o1fvKUojIWh9XuaVLUDdf86RQiq13AC1dmHbTpoyuu+bquHms76v16CjycCbec87J7z0k//SiQVk0sMdFmpQ==", "dev": true }, "underscore.string": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.5.tgz", - "integrity": "sha512-g+dpmgn+XBneLmXXo+sGlW5xQEt4ErkS3mgeN2GFbremYeMBSJKr9Wf2KJplQVaiPY/f7FN6atosWYNm9ovrYg==", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.6.tgz", + "integrity": "sha512-VoC83HWXmCrF6rgkyxS9GHv8W9Q5nhMKho+OadDJGzL2oDYbYEppBaCMH6pFlwLeqj2QS+hhkw2kpXkSdD1JxQ==", "dev": true, "requires": { - "sprintf-js": "^1.0.3", + "sprintf-js": "^1.1.1", "util-deprecate": "^1.0.2" + }, + "dependencies": { + "sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", + "dev": true + } } }, "unicode-canonical-property-names-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", - "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", "dev": true }, "unicode-match-property-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", - "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", "dev": true, "requires": { - "unicode-canonical-property-names-ecmascript": "^1.0.4", - "unicode-property-aliases-ecmascript": "^1.0.4" + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" } }, "unicode-match-property-value-ecmascript": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", - "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", + "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", "dev": true }, "unicode-property-aliases-ecmascript": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", - "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", "dev": true }, "union-value": { @@ -29484,7 +32799,7 @@ "unique-string": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", - "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", + "integrity": "sha512-ODgiYu03y5g76A1I9Gt0/chLCzQjvzDy7DsZGsLOE/1MrF6wriEskSncj1+/C58Xk/kPZDppSctDybCwOSaGAg==", "dev": true, "requires": { "crypto-random-string": "^1.0.0" @@ -29504,12 +32819,12 @@ "unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==" }, "unset-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "integrity": "sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==", "dev": true, "requires": { "has-value": "^0.3.1", @@ -29519,7 +32834,7 @@ "has-value": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "integrity": "sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==", "dev": true, "requires": { "get-value": "^2.0.3", @@ -29530,7 +32845,7 @@ "isobject": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", "dev": true, "requires": { "isarray": "1.0.0" @@ -29541,7 +32856,7 @@ "has-values": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "integrity": "sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==", "dev": true } } @@ -29549,7 +32864,7 @@ "unzip-response": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", - "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", + "integrity": "sha512-N0XH6lqDtFH84JxptQoZYmloF4nzrQqqrAymNj+/gW60AO2AZgOcf4O/nUXJcYfyQkqvMo9lSupBZmmgvuVXlw==", "dev": true }, "upath": { @@ -29558,10 +32873,20 @@ "integrity": "sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==", "dev": true }, + "update-browserslist-db": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + }, "update-notifier": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.3.0.tgz", - "integrity": "sha1-TognpruRUUCrCTVZ1wFOPruDdFE=", + "integrity": "sha512-KBLtk9uq+79OJkHB+hdxbikPrYwPc1JoiSbpU/bKknBG3z2gzFzYabHI7jNkQXzMDqipUnvNsKnowCq6PoEakg==", "dev": true, "requires": { "boxen": "^1.2.1", @@ -29576,9 +32901,9 @@ } }, "uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, "requires": { "punycode": "^2.1.0" @@ -29587,13 +32912,13 @@ "urix": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "integrity": "sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==", "dev": true }, "url": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", "dev": true, "requires": { "punycode": "1.3.2", @@ -29603,7 +32928,13 @@ "punycode": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==", + "dev": true + }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==", "dev": true } } @@ -29611,7 +32942,7 @@ "url-parse-lax": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", - "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "integrity": "sha512-BVA4lR5PIviy2PMseNd2jbFQ+jwSwQGdJejf5ctd1rEXt0Ypd7yanUK9+lYechVlN5VaTJGsu2U/3MDDu6KgBA==", "dev": true, "requires": { "prepend-http": "^1.0.1" @@ -29626,7 +32957,7 @@ "user-home": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/user-home/-/user-home-2.0.0.tgz", - "integrity": "sha1-nHC/2Babwdy/SGBODwS4tJzenp8=", + "integrity": "sha512-KMWqdlOcjCYdtIJpicDSFBQ8nFwS2i9sslAd6f4+CBGcU4gist2REnr2fxj2YocvJFxSF3ZOHLYLVZnUxv4BZQ==", "dev": true, "requires": { "os-homedir": "^1.0.0" @@ -29639,18 +32970,26 @@ "dev": true, "requires": { "inherits": "2.0.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + } } }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", "dev": true }, "utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==" }, "uuid": { "version": "3.4.0", @@ -29659,9 +32998,9 @@ "dev": true }, "v8flags": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.1.3.tgz", - "integrity": "sha512-amh9CCg3ZxkzQ48Mhcb8iX7xpAfYJgePHxWMQCBWECpOSqJUXgY26ncA61UTV0BkPqfhcy6mzwCIoP4ygxpW8w==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.2.0.tgz", + "integrity": "sha512-mH8etigqMfiGWdeXpaaqGfs6BndypxusHHcv2qSHyZkGEznCd/qAXCWWRzeowtL54147cktFOC4P5y+kl8d8Jg==", "dev": true, "requires": { "homedir-polyfill": "^1.0.1" @@ -29686,17 +33025,25 @@ "vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==" }, "verror": { "version": "1.10.0", "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", "dev": true, "requires": { "assert-plus": "^1.0.0", "core-util-is": "1.0.2", "extsprintf": "^1.2.0" + }, + "dependencies": { + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", + "dev": true + } } }, "vm-browserify": { @@ -29708,18 +33055,18 @@ "void-elements": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=" + "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==" }, "vscode-languageserver-types": { - "version": "3.15.1", - "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.15.1.tgz", - "integrity": "sha512-+a9MPUQrNGRrGU630OGbYVQ+11iOIovjCkqxajPa9w57Sd5ruK8WQNsslzpa0x/QJqC8kRc2DUxWjIFwoNm4ZQ==", + "version": "3.17.2", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.2.tgz", + "integrity": "sha512-zHhCWatviizPIq9B7Vh9uvrH6x3sK8itC84HkamnBWoDFJtzBf7SWlpLCZUit72b3os45h6RWQNC9xHRDF8dRA==", "dev": true }, "walkdir": { "version": "0.0.11", "resolved": "https://registry.npmjs.org/walkdir/-/walkdir-0.0.11.tgz", - "integrity": "sha1-oW0CXrkxvQO1LzCMrtD0D86+lTI=", + "integrity": "sha512-lMFYXGpf7eg+RInVL021ZbJJT4hqsvsBvq5sZBp874jfhs3IWlA7OPoG0ojQrYcXHuUSi+Nqp6qGN+pPGaMgPQ==", "dev": true }, "watchpack": { @@ -29734,9 +33081,9 @@ } }, "watchpack-chokidar2": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz", - "integrity": "sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz", + "integrity": "sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww==", "dev": true, "optional": true, "requires": { @@ -29746,7 +33093,7 @@ "wcwidth": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", "dev": true, "requires": { "defaults": "^1.0.3" @@ -29793,16 +33140,10 @@ "zip-dir": "1.0.2" }, "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - }, "cliui": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "integrity": "sha512-0yayqDxWQbqk3ojkYqUKqaAQ6AfNKeKWRNA8kR0WXzAsdHpP4BIaOmMAG87JGuO6qcobyW4GjxHd9PmhEd+T9w==", "dev": true, "requires": { "string-width": "^1.0.1", @@ -29810,25 +33151,16 @@ "wrap-ansi": "^2.0.0" } }, - "decamelize": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", - "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", - "dev": true, - "requires": { - "xregexp": "4.0.0" - } - }, "invert-kv": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", - "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "integrity": "sha512-xgs2NH9AE66ucSq4cNG1nhSFghr5l6tdL15Pk+jl46bmmBapgoaY/AacXyaDznAqmGL99TiLSQgO/XazFSKYeQ==", "dev": true }, "is-fullwidth-code-point": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", "dev": true, "requires": { "number-is-nan": "^1.0.0" @@ -29837,7 +33169,7 @@ "lcid": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "integrity": "sha512-YiGkH6EnGrDGqLMITnGjXtGmNtjoXw9SVUzcaos8RBi7Ps0VBylkq+vOcY9QE5poLasPCR849ucFUkl0UzUyOw==", "dev": true, "requires": { "invert-kv": "^1.0.0" @@ -29846,13 +33178,13 @@ "minimist": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "integrity": "sha512-miQKw5Hv4NS1Psg2517mV4e4dYNaO3++hjAvLOAzKqZ61rH8NS1SK+vbfBWZ5PY/Me/bEWhUwqMghEW5Fb9T7Q==", "dev": true }, "mkdirp": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "integrity": "sha512-SknJC52obPfGQPnjIkXbmA6+5H15E+fR+E4iR2oQ3zzCLbd7/ONua69R/Gw7AgkTLsRG+r5fzksYwWe1AgTyWA==", "dev": true, "requires": { "minimist": "0.0.8" @@ -29870,7 +33202,7 @@ "os-locale": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", - "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "integrity": "sha512-PRT7ZORmwu2MEFt4/fv3Q+mEfN4zetKxufQrkShY2oGvUms9r8otu5HfdyIFHkYXjO7laNsoVGmM2MANfuTA8g==", "dev": true, "requires": { "lcid": "^1.0.0" @@ -29900,7 +33232,7 @@ "string-width": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", "dev": true, "requires": { "code-point-at": "^1.0.0", @@ -29911,25 +33243,19 @@ "which-module": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", - "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", - "dev": true - }, - "xregexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", - "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", + "integrity": "sha512-F6+WgncZi/mJDrammbTuHe1q0R5hOXv/mBaiNA2TCNT/LTHusX0V+CJnj9XT8ki5ln2UZyyddDgHfCzyrOH7MQ==", "dev": true }, "y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.2.tgz", + "integrity": "sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==", "dev": true }, "yargs": { "version": "6.6.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz", - "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=", + "integrity": "sha512-6/QWTdisjnu5UHUzQGst+UOEuEVwIzFVGBjq3jMTFNs5WJQsH/X6nMURSaScIdF5txylr1Ao9bvbWiKi2yXbwA==", "dev": true, "requires": { "camelcase": "^3.0.0", @@ -29950,13 +33276,13 @@ "camelcase": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "integrity": "sha512-4nhGqUkc4BqbBBB4Q6zLuD7lzzrHYrjKGeYaEji/3tFR5VdJu9v+LilhGIVe8wxEJPPOeWo7eg8dwY13TZ1BNg==", "dev": true }, "decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", "dev": true } } @@ -29964,7 +33290,7 @@ "yargs-parser": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-4.2.1.tgz", - "integrity": "sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=", + "integrity": "sha512-+QQWqC2xeL0N5/TE+TY6OGEqyNRM+g2/r712PDNYgiCdXYCApXf1vzfmDSLBxfGRwV+moTq/V8FnMI24JCm2Yg==", "dev": true, "requires": { "camelcase": "^3.0.0" @@ -29973,7 +33299,7 @@ "camelcase": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "integrity": "sha512-4nhGqUkc4BqbBBB4Q6zLuD7lzzrHYrjKGeYaEji/3tFR5VdJu9v+LilhGIVe8wxEJPPOeWo7eg8dwY13TZ1BNg==", "dev": true } } @@ -29981,15 +33307,14 @@ } }, "webidl-conversions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", - "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", - "dev": true + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" }, "webpack": { - "version": "4.44.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.44.1.tgz", - "integrity": "sha512-4UOGAohv/VGUNQJstzEywwNxqX417FnjZgZJpJQegddzPmTvph37eBIRbRTfdySXzVtJXLJfbMN3mMYhM6GdmQ==", + "version": "4.46.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.46.0.tgz", + "integrity": "sha512-6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q==", "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", @@ -30000,7 +33325,7 @@ "ajv": "^6.10.2", "ajv-keywords": "^3.4.1", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^4.3.0", + "enhanced-resolve": "^4.5.0", "eslint-scope": "^4.0.3", "json-parse-better-errors": "^1.0.2", "loader-runner": "^2.4.0", @@ -30018,15 +33343,15 @@ }, "dependencies": { "acorn": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", - "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", + "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", "dev": true }, "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", "dev": true, "optional": true, "requires": { @@ -30035,9 +33360,9 @@ } }, "binary-extensions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", - "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", "dev": true, "optional": true }, @@ -30052,20 +33377,20 @@ } }, "chokidar": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.1.tgz", - "integrity": "sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g==", + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", "dev": true, "optional": true, "requires": { - "anymatch": "~3.1.1", + "anymatch": "~3.1.2", "braces": "~3.0.2", - "fsevents": "~2.1.2", - "glob-parent": "~5.1.0", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", - "readdirp": "~3.4.0" + "readdirp": "~3.6.0" } }, "fill-range": { @@ -30079,16 +33404,16 @@ } }, "fsevents": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "dev": true, "optional": true }, "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, "optional": true, "requires": { @@ -30105,16 +33430,6 @@ "binary-extensions": "^2.0.0" } }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, - "optional": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, "is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", @@ -30122,6 +33437,35 @@ "dev": true, "optional": true }, + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.1.tgz", + "integrity": "sha512-1Qo97Y2oKaU+Ro2xnDMR26g1BwMT29jNbem1EvcujW2jqt+j5COXyscjM7bLQkM9HaxI7pkWeW7gnI072yMI9Q==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + }, + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + }, "normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -30130,9 +33474,9 @@ "optional": true }, "readdirp": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", - "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, "optional": true, "requires": { @@ -30161,15 +33505,15 @@ } }, "watchpack": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.4.tgz", - "integrity": "sha512-aWAgTW4MoSJzZPAicljkO1hsi1oKj/RRq/OJQh2PKI2UKL04c2Bs+MBOB+BBABHTXJpf9mCwHN7ANCvYsvY2sg==", + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz", + "integrity": "sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ==", "dev": true, "requires": { "chokidar": "^3.4.1", "graceful-fs": "^4.1.2", "neo-async": "^2.5.0", - "watchpack-chokidar2": "^2.0.0" + "watchpack-chokidar2": "^2.0.1" } } } @@ -30219,35 +33563,46 @@ "dev": true }, "whatwg-url": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.0.0.tgz", - "integrity": "sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ==", - "dev": true, + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", "requires": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" } }, "when": { "version": "3.7.7", "resolved": "https://registry.npmjs.org/when/-/when-3.7.7.tgz", - "integrity": "sha1-q6A/w7tzbWyIsJHQE9io5ZDYRxg=", + "integrity": "sha512-9lFZp/KHoqH6bPKjbWqa+3Dg/K/r2v0X/3/G2x4DBGchVS2QX2VXL3cZV994WQVnTM1/PD71Az25nAzryEUugw==", "dev": true }, "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, "requires": { "isexe": "^2.0.0" } }, + "which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "requires": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + } + }, "which-module": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==", "dev": true }, "widest-line": { @@ -30262,30 +33617,45 @@ "win-release": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/win-release/-/win-release-1.1.1.tgz", - "integrity": "sha1-X6VeAr58qTTt/BJmVjLoSbcuUgk=", + "integrity": "sha512-iCRnKVvGxOQdsKhcQId2PXV1vV3J/sDPXKA4Oe9+Eti2nb2ESEsYHRYls/UjoUW3bIc5ZDO8dTH50A/5iVN+bw==", "dev": true, "requires": { "semver": "^5.0.1" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + } } }, "window-size": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", - "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=" + "integrity": "sha512-1pTPQDKTdd61ozlKGNCjhNRd+KPmgLSGa3mZTHoOliaGcESD8G1PXhh7c1fgiPjVbNVfgy2Faw4BI8/m0cC8Mg==" }, "winreg": { "version": "0.0.12", "resolved": "https://registry.npmjs.org/winreg/-/winreg-0.0.12.tgz", - "integrity": "sha1-BxBVVLoanQiXklHRKUdb/64wBrc=", + "integrity": "sha512-typ/+JRmi7RqP1NanzFULK36vczznSNN8kWVA9vIqXyv8GhghUlwhGp1Xj3Nms1FsPcNnsQrJOR10N58/nQ9hQ==", "dev": true }, "with": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/with/-/with-5.1.1.tgz", - "integrity": "sha1-+k2qktrzLE6pTtRTyB8EaGtXXf4=", + "integrity": "sha512-uAnSsFGfSpF6DNhBXStvlZILfHJfJu4eUkfbRGk94kGO1Ta7bg6FwfvoOhhyHAJuFbCw+0xk4uJ3u57jLvlCJg==", "requires": { "acorn": "^3.1.0", "acorn-globals": "^3.0.0" + }, + "dependencies": { + "acorn": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", + "integrity": "sha512-OLUyIIZ7mF5oaAUT1w0TFqQS81q3saT46x8t7ukpPjMNk+nbs4ZHhs7ToV8EWnLYLepjETXd4XaCE4uxkMeqUw==" + } } }, "word-wrap": { @@ -30297,7 +33667,7 @@ "wordwrap": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=" + "integrity": "sha512-xSBsCeh+g+dinoBv3GAOWM4LcVVO68wLXRanibtBSdUvkGWQRGeE9P7IwU9EmDDi4jA6L44lz15CGMwdw9N5+Q==" }, "worker-farm": { "version": "1.7.0", @@ -30311,7 +33681,7 @@ "wrap-ansi": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "integrity": "sha512-vAaEaDM946gbNpH5pLVNR+vX2ht6n0Bt3GXwVB1AuAqZosOvHNF3P7wDnh8KLkSqgUh0uh77le7Owgoz+Z9XBw==", "dev": true, "requires": { "string-width": "^1.0.1", @@ -30321,7 +33691,7 @@ "is-fullwidth-code-point": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", "dev": true, "requires": { "number-is-nan": "^1.0.0" @@ -30330,7 +33700,7 @@ "string-width": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", "dev": true, "requires": { "code-point-at": "^1.0.0", @@ -30343,15 +33713,26 @@ "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, "write": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz", - "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", + "integrity": "sha512-CJ17OoULEKXpA5pef3qLj5AxTJ6mSt7g84he2WIskKwqFO4T97d5V7Tadl0DYDk7qyUOQD5WlUlOMChaYrhxeA==", "dev": true, "requires": { "mkdirp": "^0.5.1" + }, + "dependencies": { + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + } } }, "write-file-atomic": { @@ -30366,9 +33747,9 @@ } }, "ws": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz", - "integrity": "sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==", + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz", + "integrity": "sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==", "dev": true, "requires": { "async-limiter": "~1.0.0" @@ -30377,7 +33758,7 @@ "xdg-basedir": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", - "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", + "integrity": "sha512-1Dly4xqlulvPD3fZUQJLY+FUIeqN3N2MM3uqe4rCJftAvOjFa3jFGfctOgluGx4ahPbUCsZkmJILiP0Vi4T6lQ==", "dev": true }, "xhr-mock": { @@ -30398,14 +33779,6 @@ "requires": { "sax": ">=0.6.0", "xmlbuilder": "~11.0.0" - }, - "dependencies": { - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - } } }, "xmlbuilder": { @@ -30417,13 +33790,13 @@ "xmldom": { "version": "0.1.27", "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.27.tgz", - "integrity": "sha1-1QH5ezvbQDr4757MIFcxh6rawOk=", + "integrity": "sha512-7WpJBYwyhvsddFJA51SOIU0Be9W44sbGGjc6Z3ly8Wx/Wl7nriMPZ5xf6Np9ASlJ6gACfXcTLukm4DtX372lFw==", "dev": true }, "xregexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz", - "integrity": "sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", + "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", "dev": true }, "xtend": { @@ -30433,50 +33806,53 @@ "dev": true }, "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", "dev": true }, "yallist": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", "dev": true }, "yargs": { "version": "3.10.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", - "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", + "integrity": "sha512-QFzUah88GAGy9lyDKGBqZdkYApt63rCXYBGYnEP4xDJPXNqXXnBDACnbrXnViV6jRSqAePwrATi2i8mfYm4L1A==", "requires": { "camelcase": "^1.0.2", "cliui": "^2.1.0", "decamelize": "^1.0.0", "window-size": "0.1.0" + }, + "dependencies": { + "camelcase": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", + "integrity": "sha512-wzLkDa4K/mzI1OSITC+DUyjgIl/ETNHE9QvYgy6J6Jvqyyz4C0Xfd+lQhb19sX2jMpZV4IssUn0VDVmglV+s4g==" + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==" + } } }, "yargs-parser": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", - "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", "dev": true, "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - } + "camelcase": "^4.1.0" } }, "yauzl": { "version": "2.10.0", "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", "dev": true, "requires": { "buffer-crc32": "~0.2.3", @@ -30486,7 +33862,7 @@ "zip-dir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/zip-dir/-/zip-dir-1.0.2.tgz", - "integrity": "sha1-JT+QeurWKiGs2HIdi4gDKyQRwFE=", + "integrity": "sha512-OZ4WThDcFqvamrq4e2lSdz+q6a9fnD55ktBzsfQ95R0YrnZDd7Cz1gTI8OMveqlASz8PXVN0av8Bi7Ky+uJ+SA==", "dev": true, "requires": { "async": "^1.5.2", @@ -30494,9 +33870,9 @@ }, "dependencies": { "jszip": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-2.6.1.tgz", - "integrity": "sha1-uI86ey5noqBIFSmCx6N1bZxIKPA=", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-2.7.0.tgz", + "integrity": "sha512-JIsRKRVC3gTRo2vM4Wy9WBC3TRcfnIZU8k65Phi3izkvPH975FowRYtKGT6PxevA0XnJ/yO8b0QwV0ydVyQwfw==", "dev": true, "requires": { "pako": "~1.0.2" @@ -30507,7 +33883,7 @@ "zip-stream": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-1.2.0.tgz", - "integrity": "sha1-qLxF9MG0lpnGuQGYuqyqzbzUugQ=", + "integrity": "sha512-2olrDUuPM4NvRIgGPhvrp84f7/HmWR6RiQrgwFF2VctmnssFiogtYL3DcA8Vl2bsSmju79sVXe38TsII7JleUg==", "dev": true, "requires": { "archiver-utils": "^1.3.0", diff --git a/package.json b/package.json index d9d76a05..78d2c4d9 100644 --- a/package.json +++ b/package.json @@ -47,9 +47,9 @@ "grunt-mocha-test": "^0.13.3", "grunt-webpack": "^3.1.3", "highlight.js": "^10.4.1", - "inject-loader": "^3.0.1", + "inject-loader": "^4.0.1", "isotope-layout": "^3.0.6", - "jose": "^4.1.0", + "jose": "^4.11.0", "jquery": "^3.4.1", "lodash": "^4.17.13", "loglevel": "^1.6.2", From a16410b309783e06a4ba5bc9d7f79fd1d68162b3 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Wed, 9 Nov 2022 16:34:09 +0100 Subject: [PATCH 397/456] sort library language cards by language name --- views/website/libraries/support/get-languages.js | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/views/website/libraries/support/get-languages.js b/views/website/libraries/support/get-languages.js index d04b7901..616956fe 100644 --- a/views/website/libraries/support/get-languages.js +++ b/views/website/libraries/support/get-languages.js @@ -23,5 +23,19 @@ module.exports = function getLanguages() { result.push(data); }); + result.sort((a, b) => { + const nameA = a.name.toUpperCase(); // ignore upper and lowercase + const nameB = b.name.toUpperCase(); // ignore upper and lowercase + if (nameA < nameB) { + return -1; + } + if (nameA > nameB) { + return 1; + } + + // names must be equal + return 0; + }) + return result; -}; \ No newline at end of file +}; From c32b6421beb552969783a2d27de5af3cfbd82d64 Mon Sep 17 00:00:00 2001 From: florcaputti Date: Wed, 7 Dec 2022 14:44:36 -0300 Subject: [PATCH 398/456] wip - crpa link --- src/website/ccpa-modal.js | 11 +++++++++++ src/website/index.js | 4 +++- stylus/website/index.styl | 37 +++++++++++++++++++++++++++++++++++++ views/website/layout.pug | 15 ++++++++++++--- 4 files changed, 63 insertions(+), 4 deletions(-) create mode 100644 src/website/ccpa-modal.js diff --git a/src/website/ccpa-modal.js b/src/website/ccpa-modal.js new file mode 100644 index 00000000..9d76ccac --- /dev/null +++ b/src/website/ccpa-modal.js @@ -0,0 +1,11 @@ +export function CCPAModal() { + document.addEventListener("DOMContentLoaded", function () { + document.querySelector("#open-ccpa").addEventListener("click", () => { + document.querySelector("#ccpa-modal").style.display = "block"; + }); + + document.querySelector("#close-ccpa").addEventListener("click", () => { + document.querySelector("#ccpa-modal").style.display = "none"; + }); + }); +} diff --git a/src/website/index.js b/src/website/index.js index 2b75d2f6..1f2e33c3 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -10,6 +10,7 @@ import { shareJwtButton, shareJwtTextElement, } from "./dom-elements.js"; +import { CCPAModal } from "./ccpa-modal.js"; import queryString from "querystring"; @@ -52,4 +53,5 @@ setupTokenEditor(); parseLocationQuery(); setupHighlighting(); setupJwtCounter(); -setupShareJwtButton(shareJwtButton, shareJwtTextElement); \ No newline at end of file +setupShareJwtButton(shareJwtButton, shareJwtTextElement); +CCPAModal(); \ No newline at end of file diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 5218d084..2a54ff5c 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -1240,6 +1240,11 @@ footer color white img margin-left 5px + .as-anchor + color: white + background: none + padding: 0 + border: none .logo height 18px @@ -1265,6 +1270,38 @@ footer +breakpoint("tablet") text-align right + #ccpa-modal + display: none + position: fixed + top: 50% + left: 50% + transform: translate(-50%, -50%) + width: 90% + height: auto + background: white + z-index: 10000 + color: black + border-radius: 16px + padding: 24px + text-align: left + +breakpoint("tablet") + width: 50% + #close-ccpa + background: none + border: none + padding: 0 + position: absolute + top: 20px + right: 30px + font-size: 24px + line-height: 24px + .settings + color: #635dff + appearance: none + border: none + background: none + padding: 0 + .warning display block width 100% diff --git a/views/website/layout.pug b/views/website/layout.pug index ac7a7fed..8188c8a2 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -37,14 +37,14 @@ html(lang='en') // Chrome extension link, required for inline installs link(rel="chrome-webstore-item", href="https://chrome.google.com/webstore/detail/ppmmlchacdbknfphdeafcbmklcghghmd") - + body // Google Tag Manager (noscript) noscript iframe(src='https://www.googletagmanager.com/ns.html?id=GTM-W7FRLJ', height='0', width='0', style='display:none;visibility:hidden') - + include ./navigation.pug - + block content footer @@ -60,6 +60,15 @@ html(lang='en') a(href='https://auth0.com/developers/', target="_blank") | Supported by img(src='http://github.com/img/ico_logo.svg' alt='Supported by Auth0 - JWT.io Token Based Authentication').logo + #ccpa-modal + button#close-ccpa x + h3 Your Privacy Choices + p Under the California Consumer Privacy Act (CCPA), California residents have the right to opt out of certain sharing of their personal information with third-party ad partners. We may share personal information with third-party ad partners, such as through cookies or by providing lists of email addresses for potential customers, so that we can reach them across the web with relevant ads. + p If you wish to opt out of this sharing of your personal data in connection with cookies, please update your + button.settings(onClick="window.OneTrust.ToggleInfoDisplay()") cookie settings. + p If you wish to opt out of email-based sharing, provide your email address at + a.settings(href="") this link. + .column.pull-request span Missing something? a(href='https://github.com/jsonwebtoken/jsonwebtoken.github.io/tree/master/views', target="_blank") Send a Pull Request From 1c8bf219700c7ee1828fb892c88803e83d27707c Mon Sep 17 00:00:00 2001 From: florcaputti Date: Mon, 12 Dec 2022 12:17:28 -0300 Subject: [PATCH 399/456] update copy --- views/website/layout.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/layout.pug b/views/website/layout.pug index 8188c8a2..92f76197 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -63,7 +63,7 @@ html(lang='en') #ccpa-modal button#close-ccpa x h3 Your Privacy Choices - p Under the California Consumer Privacy Act (CCPA), California residents have the right to opt out of certain sharing of their personal information with third-party ad partners. We may share personal information with third-party ad partners, such as through cookies or by providing lists of email addresses for potential customers, so that we can reach them across the web with relevant ads. + p Depending on your state of residence, including if you are a California resident, you have the right to opt out of certain sharing of personal information with third-party ad partners. We may share personal information with third-party ad partners, such as through cookies or by providing lists of email addresses for potential customers, so that we can reach them across the web with relevant ads. p If you wish to opt out of this sharing of your personal data in connection with cookies, please update your button.settings(onClick="window.OneTrust.ToggleInfoDisplay()") cookie settings. p If you wish to opt out of email-based sharing, provide your email address at From 0363eb55c8b09f6584549c836566f5b074e9f27b Mon Sep 17 00:00:00 2001 From: florcaputti Date: Mon, 19 Dec 2022 11:22:09 -0300 Subject: [PATCH 400/456] open modal on hash url --- src/website/ccpa-modal.js | 3 +++ stylus/website/index.styl | 3 +++ views/website/layout.pug | 4 ++++ 3 files changed, 10 insertions(+) diff --git a/src/website/ccpa-modal.js b/src/website/ccpa-modal.js index 9d76ccac..912be571 100644 --- a/src/website/ccpa-modal.js +++ b/src/website/ccpa-modal.js @@ -1,5 +1,8 @@ export function CCPAModal() { document.addEventListener("DOMContentLoaded", function () { + if(window.location.hash.substring(1) === 'your-privacy-choices') { + document.querySelector("#ccpa-modal").style.display = "block"; + } document.querySelector("#open-ccpa").addEventListener("click", () => { document.querySelector("#ccpa-modal").style.display = "block"; }); diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 2a54ff5c..71bea162 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -1245,6 +1245,8 @@ footer background: none padding: 0 border: none + .ccpa-toggle + max-width: 39px .logo height 18px @@ -1286,6 +1288,7 @@ footer text-align: left +breakpoint("tablet") width: 50% + max-width: 670px #close-ccpa background: none border: none diff --git a/views/website/layout.pug b/views/website/layout.pug index 92f76197..ecb3b748 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -57,6 +57,10 @@ html(lang='en') span • a(href='https://auth0.com/web-terms', target="_blank") | Terms of Service + span • + button.as-anchor#open-ccpa + | Your Privacy Choices + img.ccpa-toggle(src='https://cdn.auth0.com/website/footer/ccpa.svg' alt='Privacy choices') a(href='https://auth0.com/developers/', target="_blank") | Supported by img(src='http://github.com/img/ico_logo.svg' alt='Supported by Auth0 - JWT.io Token Based Authentication').logo From dc895ada184005263e46a527bc07dac274cb93b5 Mon Sep 17 00:00:00 2001 From: Sam Bellen Date: Mon, 19 Dec 2022 16:10:50 +0100 Subject: [PATCH 401/456] Fix/ask nav link (#639) Fix the Ask link in the main navigation --- views/website/navigation.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 46f2cc01..9021950a 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -12,7 +12,7 @@ nav.navbar.closed a(href='http://github.com/#debugger-io').scrollto Debugger a(href='http://github.com/libraries') Libraries a(href='http://github.com/introduction') Introduction - a(href='https://community.auth0.com/c/identity/jwt', target='_blank') Ask + a(href='https://community.auth0.com/c/jwt/8', target='_blank') Ask .social a.a0(href='https://auth0.com/developers?utm_source=jwtio&utm_medium=navbar_whats_auth0&utm_campaign=jwt_nav_cta_12_2019', target='_blank') From 0c31c8e81dee1f2c49b0e07679f6a869792b3591 Mon Sep 17 00:00:00 2001 From: florcaputti Date: Wed, 21 Dec 2022 10:02:18 -0300 Subject: [PATCH 402/456] PR review --- src/website/ccpa-modal.js | 2 +- views/website/layout.pug | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/website/ccpa-modal.js b/src/website/ccpa-modal.js index 912be571..1372e3ae 100644 --- a/src/website/ccpa-modal.js +++ b/src/website/ccpa-modal.js @@ -1,6 +1,6 @@ export function CCPAModal() { document.addEventListener("DOMContentLoaded", function () { - if(window.location.hash.substring(1) === 'your-privacy-choices') { + if(window.location.hash.includes('your-privacy-choices')) { document.querySelector("#ccpa-modal").style.display = "block"; } document.querySelector("#open-ccpa").addEventListener("click", () => { diff --git a/views/website/layout.pug b/views/website/layout.pug index ecb3b748..6a296b37 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -71,7 +71,7 @@ html(lang='en') p If you wish to opt out of this sharing of your personal data in connection with cookies, please update your button.settings(onClick="window.OneTrust.ToggleInfoDisplay()") cookie settings. p If you wish to opt out of email-based sharing, provide your email address at - a.settings(href="") this link. + a.settings(href="https://www.okta.com/your-privacy-choices/", target="_blank") this link. .column.pull-request span Missing something? From 7ab2675984f9312cff8d84889ac10f25f2e11f06 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Tue, 17 Jan 2023 14:47:59 +0100 Subject: [PATCH 403/456] square/js-jose is deprecated --- views/website/libraries/4-JavaScript.json | 31 ----------------------- 1 file changed, 31 deletions(-) diff --git a/views/website/libraries/4-JavaScript.json b/views/website/libraries/4-JavaScript.json index 8fd6e50a..b7a87c5f 100644 --- a/views/website/libraries/4-JavaScript.json +++ b/views/website/libraries/4-JavaScript.json @@ -66,37 +66,6 @@ "repoUrl": "https://github.com/kjur/jsrsasign", "installCommandHtml": "npm install jsrsasign" }, - { - "minimumVersion": null, - "support": { - "sign": true, - "verify": true, - "iss": false, - "sub": false, - "aud": false, - "exp": false, - "nbf": false, - "iat": false, - "jti": false, - "hs256": true, - "hs384": true, - "hs512": true, - "rs256": true, - "rs384": true, - "rs512": true, - "es256": true, - "es384": true, - "es512": true, - "ps256": true, - "ps384": true, - "ps512": true - }, - "authorUrl": "https://github.com/square", - "authorName": "Square, Inc.", - "gitHubRepoPath": "square/js-jose", - "repoUrl": "https://github.com/square/js-jose", - "installCommandHtml": "npm install jose-jwe-jws" - }, { "minimumVersion": "0.9.4", "support": { From 0f788d771cfda2a66d45ef6290532cf2f13460f8 Mon Sep 17 00:00:00 2001 From: Daniel DeGroff Date: Thu, 19 Jan 2023 16:59:48 -0700 Subject: [PATCH 404/456] Update fusionauth-jwt to 5.2.2 --- views/website/libraries/3-Java.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/3-Java.json b/views/website/libraries/3-Java.json index 1079bd99..a0438257 100644 --- a/views/website/libraries/3-Java.json +++ b/views/website/libraries/3-Java.json @@ -160,7 +160,7 @@ "authorName": "FusionAuth", "gitHubRepoPath": "fusionauth/fusionauth-jwt", "repoUrl": "https://github.com/fusionauth/fusionauth-jwt", - "installCommandHtml": "maven: io.fusionauth / fusionauth-jwt / 5.0.0" + "installCommandHtml": "maven: io.fusionauth / fusionauth-jwt / 5.2.2" }, { "minimumVersion": null, From 3a995765e6765b482d665415315f7f61a990294c Mon Sep 17 00:00:00 2001 From: Jonas Roussel Date: Mon, 30 Jan 2023 20:30:10 +0100 Subject: [PATCH 405/456] Add Dart language & library dart_jsonwebtoken --- img/website/36.png | Bin 0 -> 6567 bytes views/website/libraries/36-Dart.json | 42 +++++++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 img/website/36.png create mode 100644 views/website/libraries/36-Dart.json diff --git a/img/website/36.png b/img/website/36.png new file mode 100644 index 0000000000000000000000000000000000000000..b8f2adbb8ee2f65361f9e0d5fa740d3901714b6b GIT binary patch literal 6567 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 Date: Wed, 8 Feb 2023 12:56:04 -0700 Subject: [PATCH 406/456] bump jose4j to 0.9.3 (and lowercase eddsa) newer version of jose4j and it looks like `"eddsa": true` is needed rather than `"EdDSA": true` --- views/website/libraries/3-Java.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/views/website/libraries/3-Java.json b/views/website/libraries/3-Java.json index 1079bd99..b8867a07 100644 --- a/views/website/libraries/3-Java.json +++ b/views/website/libraries/3-Java.json @@ -61,13 +61,13 @@ "ps256": true, "ps384": true, "ps512": true, - "EdDSA": true + "eddsa": true }, "authorUrl": "https://twitter.com/__b_c", "authorName": "Brian Campbell", "gitHubRepoPath": null, "repoUrl": "https://bitbucket.org/b_c/jose4j", - "installCommandHtml": "maven: org.bitbucket.b_c / jose4j / 0.9.0" + "installCommandHtml": "maven: org.bitbucket.b_c / jose4j / 0.9.3" }, { "minimumVersion": null, From 5601a7916d4fee392820dc67db5bf902509a4531 Mon Sep 17 00:00:00 2001 From: monikakinder Date: Mon, 3 Apr 2023 11:29:17 +0200 Subject: [PATCH 407/456] Define node version --- package.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/package.json b/package.json index 78d2c4d9..b44e5ead 100644 --- a/package.json +++ b/package.json @@ -71,6 +71,9 @@ "webpack-merge": "^4.2.1", "xhr-mock": "^2.4.1" }, + "engines": { + "node": "16" + }, "scripts": { "start": "node server.js", "test": "grunt test", From 6ba7f8349b25bfae058b525a74b42e972ff68d4f Mon Sep 17 00:00:00 2001 From: monikakinder Date: Mon, 3 Apr 2023 13:07:18 +0200 Subject: [PATCH 408/456] Trigger Heroku redeploy From be9b4b489f0f73d747e3224612828c69085a8a19 Mon Sep 17 00:00:00 2001 From: Jade Ellis Date: Thu, 13 Apr 2023 18:27:51 +0000 Subject: [PATCH 409/456] Add jsonwebtoken-rustcrypto --- views/website/libraries/13-Rust.json | 31 ++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/views/website/libraries/13-Rust.json b/views/website/libraries/13-Rust.json index f1d6fa77..608f8b53 100644 --- a/views/website/libraries/13-Rust.json +++ b/views/website/libraries/13-Rust.json @@ -66,6 +66,37 @@ "repoUrl": "https://github.com/Keats/jsonwebtoken", "installCommandHtml": "cargo: name = \"jsonwebtoken\" version = \"*\"" }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": false, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": false, + "es384": false, + "es512": false, + "ps256": true, + "ps384": true, + "ps512": true + }, + "authorUrl": "https://github.com/JadedBlueEyes", + "authorName": "Jade", + "gitHubRepoPath": "JadedBlueEyes/jsonwebtoken", + "repoUrl": "https://github.com/JadedBlueEyes/jsonwebtoken", + "installCommandHtml": "cargo: name = \"jsonwebtoken-rustcrypto\" version = \"*\"" + }, { "minimumVersion": null, "support": { From 254ea695b16d7c5d26c55c1a022442ed3cef31d0 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Fri, 14 Apr 2023 10:05:56 +0200 Subject: [PATCH 410/456] Apply suggestions from code review --- views/website/libraries/13-Rust.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/views/website/libraries/13-Rust.json b/views/website/libraries/13-Rust.json index 608f8b53..6bab3cc3 100644 --- a/views/website/libraries/13-Rust.json +++ b/views/website/libraries/13-Rust.json @@ -87,6 +87,8 @@ "es256": false, "es384": false, "es512": false, + "es256k": false, + "eddsa": false, "ps256": true, "ps384": true, "ps512": true From 455d3be608fae34530e8637e500b5d020ef553ce Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Fri, 14 Apr 2023 10:10:13 +0200 Subject: [PATCH 411/456] Update 35-Bun.json --- views/website/libraries/35-Bun.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/35-Bun.json b/views/website/libraries/35-Bun.json index db23c7d0..76cb28b1 100644 --- a/views/website/libraries/35-Bun.json +++ b/views/website/libraries/35-Bun.json @@ -29,7 +29,7 @@ "ps256": true, "ps384": true, "ps512": true, - "eddsa": false, + "eddsa": true, "es256k": false }, "authorUrl": "https://github.com/panva", From fbc5ab09b377a7c0a9b110d03b01486ca65fc040 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Fri, 14 Apr 2023 10:11:16 +0200 Subject: [PATCH 412/456] Update 4-JavaScript.json --- views/website/libraries/4-JavaScript.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/libraries/4-JavaScript.json b/views/website/libraries/4-JavaScript.json index b7a87c5f..19c5b4d5 100644 --- a/views/website/libraries/4-JavaScript.json +++ b/views/website/libraries/4-JavaScript.json @@ -29,7 +29,7 @@ "ps256": true, "ps384": true, "ps512": true, - "eddsa": false, + "eddsa": true, "es256k": false }, "authorUrl": "https://github.com/panva", From 7fa7b796f3042b9cf288eb346746126468095fd0 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Fri, 14 Apr 2023 10:14:04 +0200 Subject: [PATCH 413/456] Update 2-Node.js.json --- views/website/libraries/2-Node.js.json | 1 + 1 file changed, 1 insertion(+) diff --git a/views/website/libraries/2-Node.js.json b/views/website/libraries/2-Node.js.json index fddc5aa7..67d68fcf 100644 --- a/views/website/libraries/2-Node.js.json +++ b/views/website/libraries/2-Node.js.json @@ -16,6 +16,7 @@ "nbf": true, "iat": true, "jti": true, + "typ": false, "hs256": true, "hs384": true, "hs512": true, From 9044234bb1cc84f09ec7cce838ed0adcc2ad2278 Mon Sep 17 00:00:00 2001 From: florcaputti Date: Fri, 14 Apr 2023 09:38:51 -0300 Subject: [PATCH 414/456] top banner --- src/website/index.js | 4 +- src/website/topbar.js | 3 + stylus/website/index.styl | 2875 ++++++++++++++++++++-------------- views/website/navigation.pug | 6 + 4 files changed, 1690 insertions(+), 1198 deletions(-) create mode 100644 src/website/topbar.js diff --git a/src/website/index.js b/src/website/index.js index 1f2e33c3..3dc37042 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -11,6 +11,7 @@ import { shareJwtTextElement, } from "./dom-elements.js"; import { CCPAModal } from "./ccpa-modal.js"; +import { TopBar } from "./topbar.js"; import queryString from "querystring"; @@ -54,4 +55,5 @@ parseLocationQuery(); setupHighlighting(); setupJwtCounter(); setupShareJwtButton(shareJwtButton, shareJwtTextElement); -CCPAModal(); \ No newline at end of file +CCPAModal(); +TopBar(); \ No newline at end of file diff --git a/src/website/topbar.js b/src/website/topbar.js new file mode 100644 index 00000000..36789986 --- /dev/null +++ b/src/website/topbar.js @@ -0,0 +1,3 @@ +export function TopBar() { + +} diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 71bea162..ef7aa651 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -1,406 +1,542 @@ -@import 'http://github.com/mixins' -@import 'http://github.com/codemirror' -@import 'http://github.com/flip-clock' -@import 'http://github.com/highlight' -@import 'http://github.com/nib' -@import 'http://github.com/nib/gradients' -@import 'http://github.com/fonts' - -/* +@import 'http://github.com/mixins'; +@import 'http://github.com/codemirror'; +@import 'http://github.com/flip-clock'; +@import 'http://github.com/highlight'; +@import 'http://github.com/nib'; +@import 'http://github.com/nib/gradients'; +@import 'http://github.com/fonts'; /* * Webfont */ +font-url(http://github.com/file) { + return '../../fonts/' + file; +} -font-url(http://github.com/file) - return '../../fonts/' + file - -webfont(family, file, weight = 'normal') - @font-face - font-family family - src url(http://github.com/font-url(file%20+%20'.eot')) - src url(http://github.com/font-url(file%20+%20'.eot?#iefix')) format('embedded-opentype'), - url(http://github.com/font-url(file%20+%20'.woff')) format('woff'), - url(http://github.com/font-url(file%20+%20'.ttf')) format('truetype'), - url(http://github.com/font-url(file%20+%20'.svg#'+%20family)) format('svg') - font-weight weight - font-style normal +webfont(family, file, weight = 'normal') { + @font-face { + font-family: family; + src: url(http://github.com/font-url(file%20+%20'.eot')); + src: url(http://github.com/font-url(file%20+%20'.eot?#iefix')) format('embedded-opentype'), url(http://github.com/font-url(file%20+%20'.woff')) format('woff'), url(http://github.com/font-url(file%20+%20'.ttf')) format('truetype'), url(http://github.com/font-url(file%20+%20'.svg#'%20+%20family)) format('svg'); + font-weight: weight; + font-style: normal; + } +} -webfont('DINCondensedBold', 'DINCondensedBold', 'normal') +webfont('DINCondensedBold', 'DINCondensedBold', 'normal'); /* * Principal style */ +html { + position: relative; + min-height: 100%; + + h1, h2, h3, h4, h5 { + -webkit-font-smoothing: antialiased; + -moz-font-smoothing: antialiased; + } +} + +body { + font-family: 'fakt-web', 'Helvetica Neue', Helvetica, Arial, sans-serif; +} + +pre, code { + padding: 0; + margin: 0; + font-family: 'Roboto Mono', Menlo; +} + +code { + font-size: 80%; +} + +a { + color: darken(#00b9f1, 20%); + transition: all 0.3s ease; + + &:hover { + color: darken(#00b9f1, 50%); + } +} + +p { + margin: 30px 0 30px 0; +} + +.container { + width: 100%; + max-width: 1200px; + padding: 0 15px; + margin: auto; + overflow: hidden; + + +breakpoint('desktop') { + overflow: visible; + } +} + +section { + padding: 30px 0; + + +breakpoint('tablet') { + padding: 60px 0; + } -html - position relative - min-height 100% - - h1, h2, h3, h4, h5 - -webkit-font-smoothing antialiased - -moz-font-smoothing antialiased - -body - font-family: 'fakt-web', "Helvetica Neue", Helvetica, Arial, sans-serif; - -pre, -code - padding 0 - margin 0 - font-family 'Roboto Mono', Menlo - -code - font-size 80% - -a - color: darken(#00b9f1, 20%) - transition: all .3s ease; - &:hover - color: darken(#00b9f1, 50%) - -p - margin 30px 0 30px 0 - -.container - width 100% - max-width 1200px - padding 0 15px - margin auto - overflow hidden - +breakpoint("desktop") - overflow visible - -section - padding 30px 0 - +breakpoint("tablet") - padding 60px 0 - h1 - color black - text-align center - margin 0 0 30px - font-weight normal - +breakpoint("tablet") - font-size 38px - -body - &.menu-mobile - .banner-jwt - padding-top 122px!important + h1 { + color: black; + text-align: center; + margin: 0 0 30px; + font-weight: normal; + + +breakpoint('tablet') { + font-size: 38px; + } + } +} + +body { + &.menu-mobile { + .banner-jwt { + padding-top: 122px !important; + } + } +} // navbar +.navbar { + background: black; + margin: 0; + border-radius: 0; + border: 0; + text-align: center; + + +breakpoint('tablet') { + width: 100%; + height: 80px; + border-bottom: 1px solid rgba(#4A4A4A, 0.6); + position: fixed; + top: 0; + z-index: 100; + } + + +breakpoint('desktop') { + height: 100px; + } + + &.top-bar-open { + margin-top: 48px; + } + + .container { + position: relative; + } + + .top-mobile { + border-bottom: 1px solid rgba(#4A4A4A, 0.6); + clearfix(); + margin: 0 -15px; + + +breakpoint('tablet') { + border: none; + margin: 0; + } + } + + .menu-trigger { + height: 10px; + width: 23px; + padding-top: 7px; + cursor: pointer; + float: right; + margin: 23px 15px 0 0; + float: right; + + span, span:before, span:after { + background: white; + width: 100%; + height: 2px; + display: block; + transition(0.3s ease-out); + backface-visibility: hidden; + } + + span { + position: relative; + + &:before, &:after { + content: ''; + position: absolute; + } + + &:before { + top: -7px; + } + + &:after { + top: 7px; + } + } + + +breakpoint('tablet') { + display: none; + } + + &.active { + span { + background: transparent; + + &:before { + transform(translate(0, 7px) rotate(-45deg)); + } -.navbar - background black - margin 0 - border-radius 0 - border 0 - text-align center - +breakpoint("tablet") - width 100% - height 80px - border-bottom 1px solid rgba(#4A4A4A,.6) - position fixed - top 0 - z-index 100 - +breakpoint("desktop") - height 100px - - .container - position relative - - .top-mobile - border-bottom 1px solid rgba(#4A4A4A,.6) - clearfix() - margin 0 -15px - +breakpoint("tablet") - border none - margin 0 - - .menu-trigger - height 10px - width 23px - padding-top 7px - cursor pointer - float right - margin 23px 15px 0 0 - float right - span, span:before, span:after - background white - width 100% - height 2px - display block - transition(.3s ease-out) - backface-visibility hidden - span - position relative - &:before, &:after - content "" - position absolute - &:before - top -7px - &:after - top 7px - +breakpoint("tablet") - display none - - &.active - span - background transparent - &:before - transform(translate(0, 7px) rotate(-45deg)) - &:after - transform(translate(0, -7px) rotate(45deg)) - - - .brand - display inline-block - float left - padding 20px 0 20px 15px - +breakpoint("tablet") - float none - position absolute - left 15px - top 20px - padding 0 - .icon - display none - +breakpoint("tablet") - display inline-block - width 40px - height 40px - opacity 0 - transform(scale(0)) - +breakpoint("desktop") - width 60px - height 60px - .logo - width 60px - +breakpoint("tablet") - width 80px - height 25px - display inline-block - vertical-align top - margin-top 7px - transition(.3s ease-in-out) - transform(translateX(-40px)) - +breakpoint("desktop") - width 100px - height 32px - margin-top 14px - transform(translateX(-60px)) - - nav.menu - display none + &:after { + transform(translate(0, -7px) rotate(45deg)); + } + } + } + } + + .brand { + display: inline-block; + float: left; + padding: 20px 0 20px 15px; + + +breakpoint('tablet') { + float: none; + position: absolute; + left: 15px; + top: 20px; + padding: 0; + } + + .icon { + display: none; + + +breakpoint('tablet') { + display: inline-block; + width: 40px; + height: 40px; + opacity: 0; + transform(scale(0)); + } + + +breakpoint('desktop') { + width: 60px; + height: 60px; + } + } + + .logo { + width: 60px; + + +breakpoint('tablet') { + width: 80px; + height: 25px; + display: inline-block; + vertical-align: top; + margin-top: 7px; + transition(0.3s ease-in-out); + transform(translateX(-40px)); + } + + +breakpoint('desktop') { + width: 100px; + height: 32px; + margin-top: 14px; + transform(translateX(-60px)); + } + } + } + + nav.menu { + display: none; min-width: 300px; - +breakpoint("tablet") - display inline-block - a - background none - color #9B9B9B - padding 0 10px - display block - text-decoration none - &:hover - +breakpoint("tablet") - color rgba(white,.8) - &.active - color white - +breakpoint("tablet") - display inline-block - line-height 5.7 - +breakpoint("desktop") - line-height 7 - padding 0 15px - - .social - display none - +breakpoint("tablet") - display inline-block - position absolute - right 15px - top 28px - +breakpoint("desktop") - top 38px - - a - margin-left 10px - text-decoration none - position relative - top -1px - - img - height 35px - - .by-text - color white - padding-right 10px - - .crafted-by__question-mark - background-color #555 - color black - font-size 10px - border-radius 50% - width 14px - height 14px - display inline-block - margin-left 10px - vertical-align middle - transition background-color .5s - &:before - content "Learn more about Auth0" - position absolute - width 164px - padding 6px - top 30px - border-radius 3px - background-color #555 - color white - transition visibility 0s, opacity .5s - visibility hidden - opacity 0 - &:hover - .crafted-by__question-mark - background-color white - &:before - visibility visible - opacity 1 - - - .supported - display none - - .logo-mobile - height 18px - - &.fixed - .brand - .icon - +breakpoint("tablet") - transition(.3s ease-in) - opacity 1 - transform(scale(1)) - .logo - +breakpoint("tablet") - transform(translateX(10px)) - +breakpoint("desktop") - transform(translateX(20px)) - - &.open - background: -moz-linear-gradient(top, rgba(0,0,0,1) 0%, rgba(0,0,0,0.9) 100%); - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,1)), color-stop(100%,rgba(0,0,0,0.9))); - background: -webkit-linear-gradient(top, rgba(0,0,0,1) 0%,rgba(0,0,0,0.9) 100%); - background: -o-linear-gradient(top, rgba(0,0,0,1) 0%,rgba(0,0,0,0.9) 100%); - background: -ms-linear-gradient(top, rgba(0,0,0,1) 0%,rgba(0,0,0,0.9) 100%); - background: linear-gradient(to bottom, rgba(0,0,0,1) 0%,rgba(0,0,0,0.9) 100%); - - - position fixed - width 100vw - height 100vh - z-index 100 - .container - padding 0 - height 100vh - - .top-mobile - margin 0 - - nav.menu - position absolute - top 50% - left 50% - transform(translate(-50%,-50%)) - display block - a - color white - font-size 30px - margin 10% 0 - - .supported - display block - width 100% - padding 21px 0 - color white - position absolute - bottom 0 - border-top 1px solid rgba(#4A4A4A,.6) - text-decoration none - img - margin-left 5px + +breakpoint('tablet') { + display: inline-block; + } + + a { + background: none; + color: #9B9B9B; + padding: 0 10px; + display: block; + text-decoration: none; + + &:hover { + +breakpoint('tablet') { + color: rgba(white, 0.8); + } + } + + &.active { + color: white; + } + + +breakpoint('tablet') { + display: inline-block; + line-height: 5.7; + } + + +breakpoint('desktop') { + line-height: 7; + padding: 0 15px; + } + } + } + + .social { + display: none; + + +breakpoint('tablet') { + display: inline-block; + position: absolute; + right: 15px; + top: 28px; + } + + +breakpoint('desktop') { + top: 38px; + } + + a { + margin-left: 10px; + text-decoration: none; + position: relative; + top: -1px; + + img { + height: 35px; + } + + .by-text { + color: white; + padding-right: 10px; + } + + .crafted-by__question-mark { + background-color: #555; + color: black; + font-size: 10px; + border-radius: 50%; + width: 14px; + height: 14px; + display: inline-block; + margin-left: 10px; + vertical-align: middle; + transition: background-color 0.5s; + } + + &:before { + content: 'Learn more about Auth0'; + position: absolute; + width: 164px; + padding: 6px; + top: 30px; + border-radius: 3px; + background-color: #555; + color: white; + transition: visibility 0s, opacity 0.5s; + visibility: hidden; + opacity: 0; + } + + &:hover { + .crafted-by__question-mark { + background-color: white; + } + + &:before { + visibility: visible; + opacity: 1; + } + } + } + } + + .supported { + display: none; + + .logo-mobile { + height: 18px; + } + } + + &.fixed { + .brand { + .icon { + +breakpoint('tablet') { + transition(0.3s ease-in); + opacity: 1; + transform(scale(1)); + } + } + + .logo { + +breakpoint('tablet') { + transform(translateX(10px)); + } + + +breakpoint('desktop') { + transform(translateX(20px)); + } + } + } + } + + &.open { + background: -moz-linear-gradient(top, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0.9) 100%); + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(0, 0, 0, 1)), color-stop(100%, rgba(0, 0, 0, 0.9))); + background: -webkit-linear-gradient(top, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0.9) 100%); + background: -o-linear-gradient(top, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0.9) 100%); + background: -ms-linear-gradient(top, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0.9) 100%); + background: linear-gradient(to bottom, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0.9) 100%); + position: fixed; + width: 100vw; + height: 100vh; + z-index: 100; + + .container { + padding: 0; + height: 100vh; + } + + .top-mobile { + margin: 0; + } + + nav.menu { + position: absolute; + top: 50%; + left: 50%; + transform(translate(-50%, -50%)); + display: block; + + a { + color: white; + font-size: 30px; + margin: 10% 0; + } + } + + .supported { + display: block; + width: 100%; + padding: 21px 0; + color: white; + position: absolute; + bottom: 0; + border-top: 1px solid rgba(#4A4A4A, 0.6); + text-decoration: none; + + img { + margin-left: 5px; + } + } + } +} // banner-jwt +.banner-jwt { + background: black; + text-align: center; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + transform(translateZ(0)); -.banner-jwt - background black - text-align center - -webkit-backface-visibility hidden - backface-visibility hidden - transform(translateZ(0)) - +breakpoint("tablet") - padding 140px 0 60px - +breakpoint("desktop") - padding 150px 0 60px - - h1 - color white - margin 25px 0 0 - +breakpoint("tablet") - font-size 34px - +breakpoint("desktop") - font-size 40px - - p - color white - a - color #00b9f1 - - p - font-size 20px - color white - +breakpoint("tablet") - line-height 1.4 - font-size 24px - +breakpoint("desktop") - font-size 30px - - a - font-weight bold - text-decoration none - - .logo - display inline-block - img - width 70px - display block - +breakpoint("desktop") - width 80px - -.update-site + +breakpoint('tablet') { + padding: 140px 0 60px; + } + + +breakpoint('desktop') { + padding: 150px 0 60px; + } + + h1 { + color: white; + margin: 25px 0 0; + + +breakpoint('tablet') { + font-size: 34px; + } + + +breakpoint('desktop') { + font-size: 40px; + } + } + + p { + color: white; + + a { + color: #00b9f1; + } + } + + p { + font-size: 20px; + color: white; + + +breakpoint('tablet') { + line-height: 1.4; + font-size: 24px; + } + + +breakpoint('desktop') { + font-size: 30px; + } + + a { + font-weight: bold; + text-decoration: none; + } + } + + .logo { + display: inline-block; + + img { + width: 70px; + display: block; + + +breakpoint('desktop') { + width: 80px; + } + } + } +} + +.update-site { display: none; - background: #e3e5e7 + background: #e3e5e7; padding: 30px 20px; font-size: 18px; text-align: center; - color: darken(#e3e5e7, 70%) + color: darken(#e3e5e7, 70%); - +breakpoint("desktop") + +breakpoint('desktop') { padding: 30px 0; + } - span - margin-right 5px - display inline-block - line-height 33px - display block - margin-bottom 15px + span { + margin-right: 5px; + display: inline-block; + line-height: 33px; + display: block; + margin-bottom: 15px; - +breakpoint("desktop") - display inline-block - margin-bottom 0 + +breakpoint('desktop') { + display: inline-block; + margin-bottom: 0; + } - strong - margin-right 5px + strong { + margin-right: 5px; + } + } - a.extension-button + a.extension-button { font-size: 12px; text-transform: uppercase; color: white; @@ -411,20 +547,22 @@ body text-shadow: 0 1px 1px rgba(black, 0.1); border: 1px solid #2D53AF; background-color: #5689DB; - background: linear-gradient(to bottom, #5689DB , #4D7BD6); + background: linear-gradient(to bottom, #5689DB, #4D7BD6); height: 34px; line-height: 34px; cursor: pointer; - &.is-installed + &.is-installed { border-color: #488500; background-color: #5fb000; - background-image: linear-gradient(to bottom,#71bf00,#4da100); + background-image: linear-gradient(to bottom, #71bf00, #4da100); - svg + svg { display: none; + } + } - svg + svg { fill: #0094c1; height: 14px; width: 12px; @@ -432,19 +570,23 @@ body margin-right: 10px; line-height: 33px; display: inline-block; + } + } +} // jtw ebook banner -.jtw-ebook-banner +.jtw-ebook-banner { background: #e3e5e7; padding: 30px 20px; font-size: 18px; text-align: center; color: darken(#e3e5e7, 70%); - +breakpoint("desktop") + +breakpoint('desktop') { padding: 30px 0; + } - .btn-download-ebook + .btn-download-ebook { padding: 8px 24px; margin: 0px auto 0 11px; color: #fff; @@ -455,874 +597,1190 @@ body text-transform: uppercase; text-align: center; text-decoration: none; + } +} -.jwt-ebook-banner-image +.jwt-ebook-banner-image { position: relative; padding: 45px 45px 235px; margin-left: -15px; margin-right: -15px; background: #E3E5E7 url('http://github.com/img/ebook.png') 100% 100% no-repeat; - p + p { margin-top: 0; + } - .btn-download-ebook + .btn-download-ebook { display: block; + } - &::after + &::after { content: ''; - position: absolute + position: absolute; bottom: 202px; left: 0; right: 0; width: 100%; height: 35px; - background: linear-gradient(rgba(227, 229, 231,1), rgba(227, 229, 231,0)); + background: linear-gradient(rgba(227, 229, 231, 1), rgba(227, 229, 231, 0)); + } - - @media (min-width: 768px) + @media (min-width: 768px) { height: 235px; - margin: 8rem 0 + margin: 8rem 0; padding: 65px 235px 65px 65px; - box-shadow: 0 10px 20px 0 rgba(0,0,0,0.25) + box-shadow: 0 10px 20px 0 rgba(0, 0, 0, 0.25); text-align: left; - .btn-download-ebook + .btn-download-ebook { display: inline-block; + } - &::after + &::after { display: none; + } + } +} // debugger-jwt +.jwt-select { + display: inline-block; + position: relative; + + select { + background: white; + width: 112px; + height: 38px; + font-size: 12px; + padding: 0 10px; + border: 1px solid #D8D8D8; + border-radius: 3px; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + outline: 0; + + &::-ms-expand { + display: none; + } + } + + &:after { + background: url('http://github.com/img/bg_arrow_select.svg') no-repeat; + width: 8px; + height: 6px; + content: ''; + display: inline-block; + position: absolute; + top: 16px; + right: 10px; + } +} -.jwt-select - display inline-block - position relative - select - background white - width 112px - height 38px - font-size 12px - padding 0 10px - border 1px solid #D8D8D8 - border-radius 3px - -webkit-appearance none - -moz-appearance none - appearance none - outline 0 - &::-ms-expand - display none - &:after - background url(http://github.com/img/bg_arrow_select.svg) no-repeat - width 8px - height 6px - content '' - display inline-block - position absolute - top 16px - right 10px - -.jwt-playground - .selections - display flex - justify-content center - - .algorithm - text-align center - span - font-weight bold - text-transform uppercase - font-size 12px - vertical-align middle - .jwt-select - margin-left 10px - - .token-type - display none - text-align center - span - font-weight bold - text-transform uppercase - font-size 12px - vertical-align middle - .jwt-select - margin-left 10px - margin-right 20px - - .algorithm-code - margin-top 35px - .tab-nav - grid(2, 0, '.tab-link') - margin-bottom 20px - - .tab-link - text-align center - +breakpoint("tablet") - text-align left - &:nth-child(2) - +breakpoint("tablet") - padding-left 15px - &.current - border-bottom 6px solid #FB015B - +breakpoint("tablet") - border none - a - font-size 24px - color black - text-decoration none - display block - cursor default - padding-bottom 5px - +breakpoint("tablet") - font-size 28px - padding-bottom 0 - small - font-size 10px - color #979797 - text-transform uppercase - margin-left 10px - display none - +breakpoint("desktop") - display inline-block - - .tab-content - +breakpoint("tablet") - grid(2, 30px, '.box-content') - - .error .CodeMirror - background-color #ffc0cb - - .warning .CodeMirror - background-color #fff7c9 - - .box-content - height 0 - overflow hidden - +breakpoint("tablet") - height auto - &.current - height auto - - .input, .output - border 1px solid rgba(#9B9B9B,.5) - border-radius 3px - - .input - padding 10px - position relative - +breakpoint("tablet") - padding 20px +.jwt-playground { + .selections { + display: flex; + justify-content: center; + } + + .algorithm { + text-align: center; + + span { + font-weight: bold; + text-transform: uppercase; + font-size: 12px; + vertical-align: middle; + } + + .jwt-select { + margin-left: 10px; + } + } + + .token-type { + display: none; + text-align: center; + + span { + font-weight: bold; + text-transform: uppercase; + font-size: 12px; + vertical-align: middle; + } + + .jwt-select { + margin-left: 10px; + margin-right: 20px; + } + } + + .algorithm-code { + margin-top: 35px; + + .tab-nav { + grid(2, 0, '.tab-link'); + margin-bottom: 20px; + + .tab-link { + text-align: center; + + +breakpoint('tablet') { + text-align: left; + } + + &:nth-child(2) { + +breakpoint('tablet') { + padding-left: 15px; + } + } + + &.current { + border-bottom: 6px solid #FB015B; + + +breakpoint('tablet') { + border: none; + } + } + } + + a { + font-size: 24px; + color: black; + text-decoration: none; + display: block; + cursor: default; + padding-bottom: 5px; + + +breakpoint('tablet') { + font-size: 28px; + padding-bottom: 0; + } + + small { + font-size: 10px; + color: #979797; + text-transform: uppercase; + margin-left: 10px; + display: none; + + +breakpoint('desktop') { + display: inline-block; + } + } + } + } + + .tab-content { + +breakpoint('tablet') { + grid(2, 30px, '.box-content'); + } + + .error .CodeMirror { + background-color: #ffc0cb; + } + + .warning .CodeMirror { + background-color: #fff7c9; + } + + .box-content { + height: 0; + overflow: hidden; + + +breakpoint('tablet') { + height: auto; + } + + &.current { + height: auto; + } + } + + .input, .output { + border: 1px solid rgba(#9B9B9B, 0.5); + border-radius: 3px; + } + + .input { + padding: 10px; + position: relative; + + +breakpoint('tablet') { + padding: 20px; // &[data-alg="HS256"] - // min-height 550px + // min-height 550px // &[data-alg="RS256"] - // min-height 719px - - .jwt-explained - .text-line - margin 0 - font-size 12px - color black - clearfix() - border-top 1px solid rgba(#9B9B9B,.5) - border-bottom 1px solid rgba(#9B9B9B,.5) - line-height 2.5 - padding 0 10px - span - color #979797 - margin-left 5px - display none - +breakpoint("desktop") - display inline-block - a - float right - - &.jwt-header - .text-line - border-top none - - .CodeMirror-wrap - padding 20px - - .pre-encode - border none - padding 20px - line-height 1.8 - input, textarea - border 1px solid #D0D2D3 - border-radius 3px - textarea - width 100% - max-width 266px - resize none - input[type="checkbox"] - margin-right 5px - position relative - top 2px - - .validation-status - text-transform capitalize - background-color white - text-align center - border-radius 3px - padding 0 - margin-top 30px - font-size 20px - +breakpoint("tablet") - font-size 30px - padding 10px 0 - text-align left - &.valid-token - color #00B9F1 - &.invalid-token - color red - i - font-size 18px - vertical-align bottom - display inline-block - margin-right 5px - +breakpoint("tablet") - font-size 24px - - .debugger-footer - font-size 30px - .website-validation - padding-left 0 - .website-share - padding-right 0 - button - width 100%; - background-color #00b9f1; - color white; - font-weight 400; - border-color #00b9f1; + // min-height 719px + } + } + + .jwt-explained { + .text-line { + margin: 0; + font-size: 12px; + color: black; + clearfix(); + border-top: 1px solid rgba(#9B9B9B, 0.5); + border-bottom: 1px solid rgba(#9B9B9B, 0.5); + line-height: 2.5; + padding: 0 10px; + + span { + color: #979797; + margin-left: 5px; + display: none; + + +breakpoint('desktop') { + display: inline-block; + } + } + + a { + float: right; + } + } + + &.jwt-header { + .text-line { + border-top: none; + } + } + + .CodeMirror-wrap { + padding: 20px; + } + + .pre-encode { + border: none; + padding: 20px; + line-height: 1.8; + + input, textarea { + border: 1px solid #D0D2D3; + border-radius: 3px; + } + + textarea { + width: 100%; + max-width: 266px; + resize: none; + } + + input[type='checkbox'] { + margin-right: 5px; + position: relative; + top: 2px; + } + } + } + } + } + + .validation-status { + text-transform: capitalize; + background-color: white; + text-align: center; + border-radius: 3px; + padding: 0; + margin-top: 30px; + font-size: 20px; + + +breakpoint('tablet') { + font-size: 30px; + padding: 10px 0; + text-align: left; + } + + &.valid-token { + color: #00B9F1; + } + + &.invalid-token { + color: red; + } + + i { + font-size: 18px; + vertical-align: bottom; + display: inline-block; + margin-right: 5px; + + +breakpoint('tablet') { + font-size: 24px; + } + } + } + + .debugger-footer { + font-size: 30px; + + .website-validation { + padding-left: 0; + } + + .website-share { + padding-right: 0; + + button { + width: 100%; + background-color: #00b9f1; + color: white; + font-weight: 400; + border-color: #00b9f1; + } + } + } +} +// libraries-jwt +.libraries-jwt { + background-color: #e3e5e7; + @media (max-width: 767px) { + padding-bottom: 0; + } -// libraries-jwt + .title-header { + clearfix(); + text-align: center; + + +breakpoint('tablet') { + text-align: left; + } + + h1 { + display: inline-block; + + +breakpoint('tablet') { + float: left; + } + } -.libraries-jwt - background-color #e3e5e7 - - @media (max-width: 767px) - padding-bottom 0 - - .title-header - clearfix() - text-align center - +breakpoint("tablet") - text-align left - h1 - display inline-block - +breakpoint("tablet") - float left - .filter - display inline-block - margin 0 auto 2rem auto - +breakpoint("tablet") - float right - - .filter - margin-bottom 30px - +breakpoint("tablet") - margin-top 8px - margin-bottom 0 - span - font-weight bold - text-transform uppercase - font-size 12px - vertical-align middle - .jwt-select - margin-left 10px - - .warning - margin 0 -15px - border-radius 0 - line-height 1.8 - +breakpoint("tablet") - margin 0 0 30px - border-radius 3px - svg + .filter { + display: inline-block; + margin: 0 auto 2rem auto; + + +breakpoint('tablet') { + float: right; + } + } + } + + .filter { + margin-bottom: 30px; + + +breakpoint('tablet') { + margin-top: 8px; + margin-bottom: 0; + } + + span { + font-weight: bold; + text-transform: uppercase; + font-size: 12px; + vertical-align: middle; + } + + .jwt-select { + margin-left: 10px; + } + } + + .warning { + margin: 0 -15px; + border-radius: 0; + line-height: 1.8; + + +breakpoint('tablet') { + margin: 0 0 30px; + border-radius: 3px; + } + + svg { height: 14px; width: 14px; - fill: darken(#FFFCD2, 80%) + fill: darken(#FFFCD2, 80%); margin-bottom: -2px; - .libraries-sv - margin 0 -15px - - @media (max-width: 767px) - height auto!important - - +breakpoint("tablet") - grid(2, 30px, 'article') - margin 0 - +breakpoint("desktop") - grid(3, 30px, 'article') - - article - width 100% - - @media (max-width: 767px) - position relative!important - top auto!important - left auto!important - - +breakpoint("tablet") - margin-bottom 30px - &:nth-child(2n+1) - clear both - - +breakpoint("desktop") - &:nth-child(2n+1) - clear none - &:nth-child(3n+1) - clear both - - .panel-heading - padding 0 - border-bottom 0 - - img - float left - width 45px + } + } + + .libraries-sv { + margin: 0 -15px; + + @media (max-width: 767px) { + height: auto !important; + } + + +breakpoint('tablet') { + grid(2, 30px, 'article'); + margin: 0; + } + + +breakpoint('desktop') { + grid(3, 30px, 'article'); + } + } + + article { + width: 100%; + + @media (max-width: 767px) { + position: relative !important; + top: auto !important; + left: auto !important; + } + + +breakpoint('tablet') { + margin-bottom: 30px; + + &:nth-child(2n+1) { + clear: both; + } + } + + +breakpoint('desktop') { + &:nth-child(2n+1) { + clear: none; + } + + &:nth-child(3n+1) { + clear: both; + } + } + + .panel-heading { + padding: 0; + border-bottom: 0; + + img { + float: left; + width: 45px; height: 45px; - margin 10px - +breakpoint("tablet") - float none - display block - margin 0 auto -45px - width 90px - height: 90px; - h3 - font-size 18px - font-weight bold - color white - margin 0 - padding 20px 20px 20px 70px - +breakpoint("tablet") - padding 20px - border-radius 3px 3px 0 0 - - .panel-body - grid(2, 0, '.column') - background-color white - padding 37px 20px 20px - - p - font-size 18px - margin 10px 0 - code - background-color #f9f2f4 - color #c7254e - i - vertical-align middle - margin-right 5px - font-size 20px - &.icon-budicon-500 - color #7ED321 - &.icon-budicon-501 - color #F0586A - - &.mversion - padding-top 0 - - .version - background-color #FFFCD2 - color darken(#FFFCD2, 80%) - font-size 12px - text-align center - padding 10px - text-transform uppercase - p - margin 0 - a - color rgba(black,.5) - img - width 13px - margin 2px 0 0 5px - color white - vertical-align top - - .author-info - background-color white - clearfix() - padding 20px - border-top 1px solid rgba(#979797,.3) - font-size 16px - color #4A4A4A - - .maintainer - float left - font-size 12px - line-height 1.5 - i - vertical-align middle - margin-right 2px - font-size 17px - height 25px - display inline-block - a - color #4A4A4A - text-decoration none - .stars - margin-left 15px - - .repository - float right - i - height 24px - display inline-block - font-size 20px - vertical-align middle - margin-right 5px - a - font-size 12px - color #4A4A4A - text-decoration none - - .panel-footer - background-color black - border-radius 0 0 3px 3px - padding 20px - code - font-size 12px - color white - background-color black - a - color white - text-decoration none - - [data-content] - +breakpoint("tablet") - max-height 100%!important - overflow visible!important + margin: 10px; + +breakpoint('tablet') { + float: none; + display: block; + margin: 0 auto -45px; + width: 90px; + height: 90px; + } + } + + h3 { + font-size: 18px; + font-weight: bold; + color: white; + margin: 0; + padding: 20px 20px 20px 70px; + + +breakpoint('tablet') { + padding: 20px; + border-radius: 3px 3px 0 0; + } + } + } + + .panel-body { + grid(2, 0, '.column'); + background-color: white; + padding: 37px 20px 20px; + + p { + font-size: 18px; + margin: 10px 0; + + code { + background-color: #f9f2f4; + color: #c7254e; + } + + i { + vertical-align: middle; + margin-right: 5px; + font-size: 20px; + + &.icon-budicon-500 { + color: #7ED321; + } + + &.icon-budicon-501 { + color: #F0586A; + } + } + } + + &.mversion { + padding-top: 0; + } + } + + .version { + background-color: #FFFCD2; + color: darken(#FFFCD2, 80%); + font-size: 12px; + text-align: center; + padding: 10px; + text-transform: uppercase; + + p { + margin: 0; + } + + a { + color: rgba(black, 0.5); + + img { + width: 13px; + margin: 2px 0 0 5px; + color: white; + vertical-align: top; + } + } + } + + .author-info { + background-color: white; + clearfix(); + padding: 20px; + border-top: 1px solid rgba(#979797, 0.3); + font-size: 16px; + color: #4A4A4A; + + .maintainer { + float: left; + font-size: 12px; + line-height: 1.5; + + i { + vertical-align: middle; + margin-right: 2px; + font-size: 17px; + height: 25px; + display: inline-block; + } + + a { + color: #4A4A4A; + text-decoration: none; + } + + .stars { + margin-left: 15px; + } + } + + .repository { + float: right; + + i { + height: 24px; + display: inline-block; + font-size: 20px; + vertical-align: middle; + margin-right: 5px; + } + + a { + font-size: 12px; + color: #4A4A4A; + text-decoration: none; + } + } + } + + .panel-footer { + background-color: black; + border-radius: 0 0 3px 3px; + padding: 20px; + + code { + font-size: 12px; + color: white; + background-color: black; + } + + a { + color: white; + text-decoration: none; + } + } + + [data-content] { + +breakpoint('tablet') { + max-height: 100% !important; + overflow: visible !important; + } + } + } +} // sources +.sources { + background-color: #222; + + .columns { + +breakpoint('tablet') { + grid(3, 30px, '.column'); + } -.sources - background-color #222 - .columns - +breakpoint("tablet") - grid(3, 30px, '.column') + .column { + margin-bottom: 20px; + text-align: center; - .column - margin-bottom 20px - text-align center - &.libraries + &.libraries { margin: 0 0 20px 0; - +breakpoint("tablet") - margin-bottom 0 + } + + +breakpoint('tablet') { + margin-bottom: 0; - &.libraries + &.libraries { margin: -2rem 0; + } + } + } + } - h2 - font-size 30px - color white - text-align center - margin 0 - font-weight normal - - .libraries - background rgba(255, 255, 255, .05) - +breakpoint("tablet") - height 373px - - .libraries-container - padding: 2rem - - p - color white - font-size 20px - line-height 1.2 - - .logotype - img - height 40px - - .hold - min-height 70px - margin-top 40px - a - text-decoration none - - .text-hold - background-color #000 - color white - text-align left - padding 10px 15px - border-radius 3px - width 100% - max-width 340px - display inline-block + h2 { + font-size: 30px; + color: white; + text-align: center; + margin: 0; + font-weight: normal; + } + + .libraries { + background: rgba(255, 255, 255, 0.05); + + +breakpoint('tablet') { + height: 373px; + } + + .libraries-container { + padding: 2rem; + } + + p { + color: white; + font-size: 20px; + line-height: 1.2; + } + } + + .logotype { + img { + height: 40px; + } + } + + .hold { + min-height: 70px; + margin-top: 40px; + + a { + text-decoration: none; + } + } + + .text-hold { + background-color: #000; + color: white; + text-align: left; + padding: 10px 15px; + border-radius: 3px; + width: 100%; + max-width: 340px; + display: inline-block; font-size: 13px; - a - float right - color white - font-size 18px - text-decoration none + + a { + float: right; + color: white; + font-size: 18px; + text-decoration: none; margin-top: 4px; - p - margin 0 - white-space nowrap - text-overflow ellipsis - overflow hidden + } + + p { + margin: 0; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; line-height: 30px; - font-family: "Roboto Mono", "Menlo" - - .tshirt - text-align center - h2 - margin-bottom 20px - img - max-width 180px - width 100% - display inline-block - +breakpoint("tablet") - max-width 227px - a - background-color #00B9F1 - color white - max-width 180px - margin 20px auto 0 - font-size 16px - font-weight bold - text-transform uppercase - border-radius 3px - padding 15px - text-align center - text-decoration none - display block - +breakpoint("tablet") - max-width 270px + font-family: 'Roboto Mono', 'Menlo'; + } + } + .tshirt { + text-align: center; + + h2 { + margin-bottom: 20px; + } + + img { + max-width: 180px; + width: 100%; + display: inline-block; + + +breakpoint('tablet') { + max-width: 227px; + } + } + + a { + background-color: #00B9F1; + color: white; + max-width: 180px; + margin: 20px auto 0; + font-size: 16px; + font-weight: bold; + text-transform: uppercase; + border-radius: 3px; + padding: 15px; + text-align: center; + text-decoration: none; + display: block; + + +breakpoint('tablet') { + max-width: 270px; + } + } + } +} // tokens-created +.tokens-created { + background-color: black; + text-align: center; + color: white; + font-size: 20px; + line-height: 1.8; + padding: 30px 0; + + +breakpoint('tablet') { + padding: 60px 0; + font-size: 26px; + } + + .logo { + height: 55px; + } + + img { + margin-bottom: 35px; + } + + p { + max-width: 875px; + margin: 5px auto; + } +} + +.btn, a.btn { + transition(background-color 0.2s ease); + text-transform: uppercase; + letter-spacing: 2px; + font-weight: bold; + border: 1px solid #d0d2d3; + line-height: 30px; + padding: 15px 30px; + font-size: 15px; + border-radius: 3px; + text-decoration: none; + display: inline-block; + margin-top: 30px; -.tokens-created - background-color black - text-align center - color white - font-size 20px - line-height 1.8 - padding 30px 0 - +breakpoint("tablet") - padding 60px 0 - font-size 26px - - .logo - height 55px - - img - margin-bottom 35px - - p - max-width 875px - margin 5px auto - -.btn, a.btn - transition(background-color 0.2s ease) - text-transform uppercase - letter-spacing 2px - font-weight bold - border 1px solid #d0d2d3 - line-height 30px - padding 15px 30px - font-size 15px - border-radius 3px - text-decoration none - display inline-block - margin-top 30px - &.btn-success - background-color #635dff - color white - border-color transparent - &:hover - background-color #564ed1 - color white - -.btn, a.btn - &.btn-lg - background-color #D63AFF - color white - border none - - &.btn-ghost - background transparent - border 1px solid #D63AFF - color #D63AFF - - & + .btn - margin-left 2rem - - .token - margin-top 35px - h5 - font-size 14px - font-weight normal - margin 0 0 10px 0; + &.btn-success { + background-color: #635dff; + color: white; + border-color: transparent; + + &:hover { + background-color: #564ed1; + color: white; + } + } +} + +.btn, a.btn { + &.btn-lg { + background-color: #D63AFF; + color: white; + border: none; + } + + &.btn-ghost { + background: transparent; + border: 1px solid #D63AFF; + color: #D63AFF; + } + + & + .btn { + margin-left: 2rem; + } + + .token { + margin-top: 35px; + } + + h5 { + font-size: 14px; + font-weight: normal; + margin: 0 0 10px 0; color: #999; letter-spacing: 1px; - + } +} // plain-text +.plain-text { + .container { + max-width: 630px; + } + + h1 { + font-size: 25px; + font-weight: 300; + color: #333; + margin-top: 10px; + line-height: 1.3; + + +breakpoint('mobile-landscape') { + font-size: 40px; + } + } + + & > h1, & > hr { + display: none; + } + + h2, h3, h4, h5, h6 { + &.anchor-heading { + position: relative; + + .anchor { + display: none; + + +breakpoint('tablet') { + position: absolute; + top: 0; + left: -25px; + visibility: hidden; + } + } + + &:hover { + +breakpoint('tablet') { + .anchor { + visibility: visible; + } + } + } + } + } + + h2, h3, h4 { + font-weight: 700; + color: #333; + line-height: 1.3; + } + + h2 { + font-size: 20px; + margin-top: 40px; + + &:first-child { + margin-top: 0; + } + } + + h3 { + font-size: 16px; + } + + h4, h5, h6 { + font-size: 13px; + text-transform: uppercase; + letter-spacing: 1px; + } + + p, ul li { + color: #5c666f; + font-size: 16px; + line-height: 2; + + strong { + color: #333; + } + + code { + border-radius: 4px; + font-size: 90%; + padding: 3px 8px; + background-color: #F7F7F7; + } + } + + blockquote { + background-color: lighten(#F7F7F7, 55%); + padding: 60px 30px; + border-radius: 3px; + margin: 30px 0; + text-align: center; + border: none; + + p { + margin: 0; + font-size: 12px; + + +breakpoint('tablet') { + font-size: 16px; + } + } + + em { + font-size: 18px; + line-height: 1.5; + + +breakpoint('tablet') { + font-size: 25px; + } + } + + strong { + display: block; + margin-top: 15px; + color: rgba(#333, 0.5); + text-transform: uppercase; + } + } + + sup { + font-size: 90%; + } + + img { + max-width: 100%; + } + + table { + border-collapse: collapse; + width: 100%; + margin: 20px 0 30px; + } + + thead tr th { + font-family: Helvetica, Arial, sans-serif; + font-weight: bold; + text-align: center; + font-size: 13px; + } + + td, th { + border: 1px solid #E0E0E0; + padding: 0.5rem; + text-align: left; + } -.plain-text - .container - max-width 630px - - h1 - font-size 25px - font-weight 300 - color #333 - margin-top 10px - line-height 1.3 - +breakpoint("mobile-landscape") - font-size 40px - - & > h1, & > hr - display none - - h2, h3, h4, h5, h6 - &.anchor-heading - position relative - - .anchor - display none - +breakpoint("tablet") - position absolute - top 0 - left -25px - visibility hidden - &:hover - +breakpoint("tablet") - .anchor - visibility visible - - h2, h3, h4 - font-weight 700 - color #333 - line-height 1.3 - - h2 - font-size 20px - margin-top 40px - &:first-child - margin-top 0 - - h3 - font-size 16px - - h4, h5, h6 - font-size 13px - text-transform uppercase - letter-spacing 1px - - p, ul li - color #5c666f - font-size 16px - line-height 2 - strong - color #333 - code - border-radius 4px - font-size 90% - padding 3px 8px - background-color #F7F7F7 - - blockquote - background-color lighten(#F7F7F7, 55%) - padding 60px 30px - border-radius 3px - margin 30px 0 - text-align center - border none - - p - margin 0 - font-size 12px - +breakpoint("tablet") - font-size 16px - - em - font-size 18px - line-height 1.5 - +breakpoint("tablet") - font-size 25px - - strong - display block - margin-top 15px - color rgba(#333,.5) - text-transform uppercase - - sup - font-size 90% - - img - max-width 100% - - table - border-collapse collapse - width 100% - margin 20px 0 30px - - thead tr th - font-family Helvetica, Arial, sans-serif - font-weight bold - text-align center - font-size 13px - - td, th - border 1px solid #E0E0E0 - padding 0.5rem - text-align left - - tbody tr:nth-child(odd) - background rgba(#eee,.5) - - pre - display block - font-size 13px - line-height 1.42857143 - color #333 - word-break break-all - background-color #f5f5f5 - border-radius 4px - margin-bottom 30px - - pre code - font-size inherit - border none - border-radius 0 + tbody tr:nth-child(odd) { + background: rgba(#eee, 0.5); + } + + pre { + display: block; + font-size: 13px; + line-height: 1.42857143; + color: #333; + word-break: break-all; + background-color: #f5f5f5; + border-radius: 4px; + margin-bottom: 30px; + } + + pre code { + font-size: inherit; + border: none; + border-radius: 0; + } +} // go-tool +.go-tool { + text-align: center; + border-top: 1px solid #DDD; + + p { + font-size: 15px; + display: inline-block; + text-transform: uppercase; -.go-tool - text-align center - border-top 1px solid #DDD - p - font-size 15px - display inline-block - text-transform uppercase - +breakpoint("tablet") - margin-right 20px - .btn.btn-success - background-color #D63AFF - margin 0 - &:hover - background-color darken(#D63AFF, 30%) + +breakpoint('tablet') { + margin-right: 20px; + } + } + .btn.btn-success { + background-color: #D63AFF; + margin: 0; + + &:hover { + background-color: darken(#D63AFF, 30%); + } + } +} // footer +footer { + background-color: black; + border-top: 1px solid rgba(#979797, 0.4); + padding: 20px 0; + text-align: center; + + +breakpoint('tablet') { + text-align: left; + padding: 60px 0; + } + + .columns { + color: white; + font-size: 14px; -footer - background-color black - border-top 1px solid rgba(#979797,.4) - padding 20px 0 - text-align center - +breakpoint("tablet") - text-align left - padding 60px 0 - - .columns - color white - font-size 14px - +breakpoint("tablet") - grid(3, 0, '.column') - - .column - margin 15px 0 - +breakpoint("tablet") - margin 0 - - a - color white - img - margin-left 5px - .as-anchor - color: white - background: none - padding: 0 - border: none - .ccpa-toggle - max-width: 39px - - .logo - height 18px - - .privacy-links - margin-bottom 16px - span - padding 0 6px - - .pull-request - +breakpoint("tablet") - text-align center - font-size 16px - span - display block - +breakpoint("desktop") - display inline-block - a - color #00B9F1 - margin-left 5px - - .social-counter - +breakpoint("tablet") - text-align right - - #ccpa-modal - display: none - position: fixed - top: 50% - left: 50% - transform: translate(-50%, -50%) - width: 90% - height: auto - background: white - z-index: 10000 - color: black - border-radius: 16px - padding: 24px - text-align: left - +breakpoint("tablet") - width: 50% - max-width: 670px - #close-ccpa - background: none - border: none - padding: 0 - position: absolute - top: 20px - right: 30px - font-size: 24px - line-height: 24px - .settings - color: #635dff - appearance: none - border: none - background: none - padding: 0 - -.warning - display block - width 100% - padding 15px - margin 0 0 40px 0 - background #fff7c9 - border-radius 3px - font-size 14px - color rgba(0,0,0,.8) - line-height 2 - - a - border-bottom 1px solid rgba(0,0,0,.4) - color rgba(0,0,0,.8) - text-decoration none - - &:hover - opacity .7 + +breakpoint('tablet') { + grid(3, 0, '.column'); + } + + .column { + margin: 15px 0; + + +breakpoint('tablet') { + margin: 0; + } + } + + a { + color: white; + } + + img { + margin-left: 5px; + } + + .as-anchor { + color: white; + background: none; + padding: 0; + border: none; + } + + .ccpa-toggle { + max-width: 39px; + } + } + + .logo { + height: 18px; + } + + .privacy-links { + margin-bottom: 16px; + + span { + padding: 0 6px; + } + } + + .pull-request { + +breakpoint('tablet') { + text-align: center; + font-size: 16px; + } + + span { + display: block; + + +breakpoint('desktop') { + display: inline-block; + } + } + + a { + color: #00B9F1; + margin-left: 5px; + } + } + + .social-counter { + +breakpoint('tablet') { + text-align: right; + } + } + + #ccpa-modal { + display: none; + position: fixed; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + width: 90%; + height: auto; + background: white; + z-index: 10000; + color: black; + border-radius: 16px; + padding: 24px; + text-align: left; + + +breakpoint('tablet') { + width: 50%; + max-width: 670px; + } + + #close-ccpa { + background: none; + border: none; + padding: 0; + position: absolute; + top: 20px; + right: 30px; + font-size: 24px; + line-height: 24px; + } + + .settings { + color: #635dff; + appearance: none; + border: none; + background: none; + padding: 0; + } + } +} + +.warning { + display: block; + width: 100%; + padding: 15px; + margin: 0 0 40px 0; + background: #fff7c9; + border-radius: 3px; + font-size: 14px; + color: rgba(0, 0, 0, 0.8); + line-height: 2; + + a { + border-bottom: 1px solid rgba(0, 0, 0, 0.4); + color: rgba(0, 0, 0, 0.8); + text-decoration: none; + + &:hover { + opacity: 0.7; + } + } +} .icon-unknown { display: inline-block; @@ -1335,6 +1793,7 @@ footer line-height: 13px; font-style: normal; } + .icon-unknown::after { content: '?'; font-size: 14px; @@ -1344,29 +1803,51 @@ footer display: inline; } -.editor-warning +.editor-warning { position: absolute; bottom: 0; left: 0; right: 0; z-index: 1; - background: rgba(127,123,100,0.1) + background: rgba(127, 123, 100, 0.1); margin: 0; - border-top: 1px solid rgba(155,155,155,0.5); + border-top: 1px solid rgba(155, 155, 155, 0.5); - &.hidden - display: none + &.hidden { + display: none; + } - p - margin: 0 + p { + margin: 0; + } - p + p - margin: 20px 0 0 + p + p { + margin: 20px 0 0; + } +} -.jwt-playground .algorithm-code .tab-content .input:hover - .editor-warning +.jwt-playground .algorithm-code .tab-content .input:hover { + .editor-warning { display: none; + } +} .bun h3 { - color: rgb(0,0,0)!important; + color: rgb(0, 0, 0) !important; +} + +.top-bar { + max-width: 1444px; + margin: 0 auto; + visibility: visible; + opacity: 1; + height: 48px; } + +.top-bar.closed { + visibility: hidden; + height: 0; + opacity: 0; + padding: 0; + transition: all 0.2s linear; +} \ No newline at end of file diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 9021950a..5327d1a7 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -1,3 +1,9 @@ +.top-bar + .top-bar-container + p Learn what's new with Auth0 at Devday23 on May 16 + a(href="https://developerday.com/register" target="_blank") Register now + button + + nav.navbar.closed .container .top-mobile From 940333831ab5b6d6bc903007ce79d70a0342b3a8 Mon Sep 17 00:00:00 2001 From: florcaputti Date: Fri, 14 Apr 2023 16:54:37 -0300 Subject: [PATCH 415/456] Add top banner --- package.json | 2 +- src/website/index.js | 4 +- src/website/top-banner.js | 9 +++ src/website/topbar.js | 3 - stylus/website/index.styl | 105 +++++++++++++++++++++++++++++++---- views/website/navigation.pug | 16 ++++-- 6 files changed, 115 insertions(+), 24 deletions(-) create mode 100644 src/website/top-banner.js delete mode 100644 src/website/topbar.js diff --git a/package.json b/package.json index b44e5ead..fe769327 100644 --- a/package.json +++ b/package.json @@ -83,4 +83,4 @@ "build:libraries": "node libraries.js" }, "heroku-run-build-script": true -} +} \ No newline at end of file diff --git a/src/website/index.js b/src/website/index.js index 3dc37042..9532ae5a 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -11,7 +11,7 @@ import { shareJwtTextElement, } from "./dom-elements.js"; import { CCPAModal } from "./ccpa-modal.js"; -import { TopBar } from "./topbar.js"; +import { TopBanner } from "./top-banner.js"; import queryString from "querystring"; @@ -56,4 +56,4 @@ setupHighlighting(); setupJwtCounter(); setupShareJwtButton(shareJwtButton, shareJwtTextElement); CCPAModal(); -TopBar(); \ No newline at end of file +TopBanner(); \ No newline at end of file diff --git a/src/website/top-banner.js b/src/website/top-banner.js new file mode 100644 index 00000000..91a3dbfc --- /dev/null +++ b/src/website/top-banner.js @@ -0,0 +1,9 @@ +export function TopBanner() { + document.addEventListener("DOMContentLoaded", function () { + document.querySelector(".close-top-banner").addEventListener("click", () => { + document.querySelector(".top-banner").classList.add('closed'); + document.querySelector(".top-banner-spacer").classList.add('hide'); + document.querySelector(".navbar").classList.remove("top-banner-open"); + }); + }); +} diff --git a/src/website/topbar.js b/src/website/topbar.js deleted file mode 100644 index 36789986..00000000 --- a/src/website/topbar.js +++ /dev/null @@ -1,3 +0,0 @@ -export function TopBar() { - -} diff --git a/stylus/website/index.styl b/stylus/website/index.styl index ef7aa651..e4d37b06 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -124,8 +124,12 @@ body { height: 100px; } - &.top-bar-open { - margin-top: 48px; + &.top-banner-open { + margin-top: 5px; + transition: all 0.2s linear; + +breakpoint('tablet') { + margin-top: 48px; + } } .container { @@ -1836,18 +1840,95 @@ footer { color: rgb(0, 0, 0) !important; } -.top-bar { - max-width: 1444px; - margin: 0 auto; +.top-banner { + background: linear-gradient(90deg, #ff4f40 0%, #ff44dd 99.99%); + border-radius: 8px; + max-width: 1440px; + padding: 8px 16px; + border-bottom: 1px solid rgba(255, 255, 255, 0.1); visibility: visible; opacity: 1; - height: 48px; + box-sizing: border-box; + margin: 0 auto; + position: absolute; + top: 12px; + z-index: 1000; + width: 100%; + left: 0; + right: 0; + overflow: hidden; + + &.closed { + visibility: hidden; + height: 0; + opacity: 0; + padding: 0; + transition: all 0.2s linear; + } + + .top-banner-container { + margin: 0 auto; + display: grid; + grid-template-columns: 1fr 30px; + max-width: 1200px; + align-items: center; + + div { + +breakpoint('tablet') { + display: flex; + align-items: center; + } + } + } + + p { + font-size: 14px; + color: #fff; + margin: 0 2rem 0 0; + display: inline; + } + + a { + font-weight: 600; + font-size: 14px; + color: #fff; + text-decoration: none; + display: block; + + span { + margin-left: 8px; + } + + &:hover { + text-decoration: underline; + } + + +breakpoint('tablet') { + display: inline; + } + } + + button { + font-weight: 600; + font-size: 20px; + color: #fff; + text-decoration: none; + background: none; + border: none; + justify-self: flex-end; + display: block; + cursor: pointer; + text-align: right; + transform: rotate(45deg); + } } -.top-bar.closed { - visibility: hidden; - height: 0; - opacity: 0; - padding: 0; - transition: all 0.2s linear; +.top-banner-spacer { + background: black; + height: 50px; + + &.hide { + height: 0; + transition: all 0.2s linear; + } } \ No newline at end of file diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 5327d1a7..4c2f6db0 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -1,10 +1,14 @@ -.top-bar - .top-bar-container - p Learn what's new with Auth0 at Devday23 on May 16 - a(href="https://developerday.com/register" target="_blank") Register now - button + +.top-banner + .top-banner-container + div + p Learn what's new with Auth0 at Devday23 on May 16 + a(href="https://developerday.com/register" target="_blank") Register now + span(aria-hiden="true") → + button.close-top-banner + + +.top-banner-spacer -nav.navbar.closed +nav.navbar.closed.top-banner-open .container .top-mobile .menu-trigger From e8febcf8c951cc608d4cd15f911444baa09617f5 Mon Sep 17 00:00:00 2001 From: florcaputti Date: Mon, 17 Apr 2023 12:49:26 -0300 Subject: [PATCH 416/456] change max-width --- stylus/website/index.styl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stylus/website/index.styl b/stylus/website/index.styl index e4d37b06..6b711783 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -1843,7 +1843,7 @@ footer { .top-banner { background: linear-gradient(90deg, #ff4f40 0%, #ff44dd 99.99%); border-radius: 8px; - max-width: 1440px; + max-width: 1216px; padding: 8px 16px; border-bottom: 1px solid rgba(255, 255, 255, 0.1); visibility: visible; From d45c87a0ccdfc0c48971c5eb830d9258d17ae3ff Mon Sep 17 00:00:00 2001 From: florcaputti Date: Mon, 17 Apr 2023 16:40:14 -0300 Subject: [PATCH 417/456] Add background --- stylus/website/index.styl | 12 +++++++++++- views/website/navigation.pug | 1 + 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 6b711783..54f45be1 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -127,6 +127,7 @@ body { &.top-banner-open { margin-top: 5px; transition: all 0.2s linear; + +breakpoint('tablet') { margin-top: 48px; } @@ -1840,6 +1841,15 @@ footer { color: rgb(0, 0, 0) !important; } +.top-banner-bg { + position: fixed; + top: 0; + background: black; + width: 100%; + height: 48px; + z-index: 100; +} + .top-banner { background: linear-gradient(90deg, #ff4f40 0%, #ff44dd 99.99%); border-radius: 8px; @@ -1850,7 +1860,7 @@ footer { opacity: 1; box-sizing: border-box; margin: 0 auto; - position: absolute; + position: fixed; top: 12px; z-index: 1000; width: 100%; diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 4c2f6db0..628b559d 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -1,3 +1,4 @@ +.top-banner-bg .top-banner .top-banner-container div From a21ee25215c24d4841be75a9ecce8d351f3a0638 Mon Sep 17 00:00:00 2001 From: Flor Lafuente Date: Tue, 27 Jun 2023 12:09:45 -0300 Subject: [PATCH 418/456] chore: remove devdays banner (#657) --- src/website/index.js | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/website/index.js b/src/website/index.js index 9532ae5a..1f2e33c3 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -11,7 +11,6 @@ import { shareJwtTextElement, } from "./dom-elements.js"; import { CCPAModal } from "./ccpa-modal.js"; -import { TopBanner } from "./top-banner.js"; import queryString from "querystring"; @@ -55,5 +54,4 @@ parseLocationQuery(); setupHighlighting(); setupJwtCounter(); setupShareJwtButton(shareJwtButton, shareJwtTextElement); -CCPAModal(); -TopBanner(); \ No newline at end of file +CCPAModal(); \ No newline at end of file From dc450f36c5aeaba6192198c12a2c9cb63880d72d Mon Sep 17 00:00:00 2001 From: Sam Bellen Date: Tue, 27 Jun 2023 17:46:57 +0200 Subject: [PATCH 419/456] Devdays banner cleanup (#659) * Trigger Heroku deploy after updating GitHub credentials * Trigger Heroku deploy after updating GitHub credentials * Remove the devdays banner --- src/website/top-banner.js | 9 ---- stylus/website/index.styl | 93 ------------------------------------ views/website/navigation.pug | 13 +---- 3 files changed, 1 insertion(+), 114 deletions(-) delete mode 100644 src/website/top-banner.js diff --git a/src/website/top-banner.js b/src/website/top-banner.js deleted file mode 100644 index 91a3dbfc..00000000 --- a/src/website/top-banner.js +++ /dev/null @@ -1,9 +0,0 @@ -export function TopBanner() { - document.addEventListener("DOMContentLoaded", function () { - document.querySelector(".close-top-banner").addEventListener("click", () => { - document.querySelector(".top-banner").classList.add('closed'); - document.querySelector(".top-banner-spacer").classList.add('hide'); - document.querySelector(".navbar").classList.remove("top-banner-open"); - }); - }); -} diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 54f45be1..868e875a 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -1848,97 +1848,4 @@ footer { width: 100%; height: 48px; z-index: 100; -} - -.top-banner { - background: linear-gradient(90deg, #ff4f40 0%, #ff44dd 99.99%); - border-radius: 8px; - max-width: 1216px; - padding: 8px 16px; - border-bottom: 1px solid rgba(255, 255, 255, 0.1); - visibility: visible; - opacity: 1; - box-sizing: border-box; - margin: 0 auto; - position: fixed; - top: 12px; - z-index: 1000; - width: 100%; - left: 0; - right: 0; - overflow: hidden; - - &.closed { - visibility: hidden; - height: 0; - opacity: 0; - padding: 0; - transition: all 0.2s linear; - } - - .top-banner-container { - margin: 0 auto; - display: grid; - grid-template-columns: 1fr 30px; - max-width: 1200px; - align-items: center; - - div { - +breakpoint('tablet') { - display: flex; - align-items: center; - } - } - } - - p { - font-size: 14px; - color: #fff; - margin: 0 2rem 0 0; - display: inline; - } - - a { - font-weight: 600; - font-size: 14px; - color: #fff; - text-decoration: none; - display: block; - - span { - margin-left: 8px; - } - - &:hover { - text-decoration: underline; - } - - +breakpoint('tablet') { - display: inline; - } - } - - button { - font-weight: 600; - font-size: 20px; - color: #fff; - text-decoration: none; - background: none; - border: none; - justify-self: flex-end; - display: block; - cursor: pointer; - text-align: right; - transform: rotate(45deg); - } -} - -.top-banner-spacer { - background: black; - height: 50px; - - &.hide { - height: 0; - transition: all 0.2s linear; - } } \ No newline at end of file diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 628b559d..9021950a 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -1,15 +1,4 @@ -.top-banner-bg -.top-banner - .top-banner-container - div - p Learn what's new with Auth0 at Devday23 on May 16 - a(href="https://developerday.com/register" target="_blank") Register now - span(aria-hiden="true") → - button.close-top-banner + - -.top-banner-spacer - -nav.navbar.closed.top-banner-open +nav.navbar.closed .container .top-mobile .menu-trigger From 262fa4675444d3448fe023d34128f4482e153746 Mon Sep 17 00:00:00 2001 From: florcaputti Date: Fri, 4 Aug 2023 09:13:19 -0300 Subject: [PATCH 420/456] Remove ebook utm --- views/website/ebook.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/ebook.pug b/views/website/ebook.pug index 01dfb666..ff72170d 100644 --- a/views/website/ebook.pug +++ b/views/website/ebook.pug @@ -3,4 +3,4 @@ section.container p strong Get the JWT Handbook for free! |  Download it now and get up-to-speed faster. - a.btn.btn-download-ebook(href='https://auth0.com/resources/ebooks/jwt-handbook?utm_source=jwtio&utm_medium=main_gc_banner&utm_campaign=gc_jwt_test_10_2019', target='_blank') Download Ebook + a.btn.btn-download-ebook(href='https://auth0.com/resources/ebooks/jwt-handbook', target='_blank') Download Ebook From d12e26fc0e53275e343a1e0aaebe1ecd6ccea5b6 Mon Sep 17 00:00:00 2001 From: florcaputti Date: Fri, 4 Aug 2023 12:15:59 -0300 Subject: [PATCH 421/456] remove utms --- README.md | 2 +- views/extension/index.pug | 2 +- views/website/layout.pug | 2 +- views/website/navigation.pug | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 4cbfafbf..8e09a5a2 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ ||| |-|-| -|![auth0 logo](https://user-images.githubusercontent.com/83319/31722733-de95bbde-b3ea-11e7-96bf-4f4e8f915588.png)|If you want to quickly add secure (JSON Web) token-based authentication to your projects, feel free to check Auth0's documentation and free plan at [auth0.com/developers](https://auth0.com/developers?utm_source=GHsponsor&utm_medium=GHsponsor&utm_campaign=jwtio&utm_content=auth)| +|![auth0 logo](https://user-images.githubusercontent.com/83319/31722733-de95bbde-b3ea-11e7-96bf-4f4e8f915588.png)|If you want to quickly add secure (JSON Web) token-based authentication to your projects, feel free to check Auth0's documentation and free plan at [developer.auth0.com](https://developer.auth0.com)| ### How to add a library diff --git a/views/extension/index.pug b/views/extension/index.pug index 3e956e40..131b7306 100644 --- a/views/extension/index.pug +++ b/views/extension/index.pug @@ -36,7 +36,7 @@ block content .colophon.clearfix .pull-left - a(target="_blank" href="https://auth0.com/developers/?utm_source=jwt-ext&utm_campaign=badge") + a(target="_blank" href="https://developer.auth0.com/") | Supported by   img(src="http://github.com/img/ico_logo.svg" alt='Supported by Auth0 - JWT.io Token Based Authentication') a  -  diff --git a/views/website/layout.pug b/views/website/layout.pug index 6a296b37..40ee91e5 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -61,7 +61,7 @@ html(lang='en') button.as-anchor#open-ccpa | Your Privacy Choices img.ccpa-toggle(src='https://cdn.auth0.com/website/footer/ccpa.svg' alt='Privacy choices') - a(href='https://auth0.com/developers/', target="_blank") + a(href='https://developer.auth0.com/', target="_blank") | Supported by img(src='http://github.com/img/ico_logo.svg' alt='Supported by Auth0 - JWT.io Token Based Authentication').logo #ccpa-modal diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 9021950a..57edd64c 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -15,11 +15,11 @@ nav.navbar.closed a(href='https://community.auth0.com/c/jwt/8', target='_blank') Ask .social - a.a0(href='https://auth0.com/developers?utm_source=jwtio&utm_medium=navbar_whats_auth0&utm_campaign=jwt_nav_cta_12_2019', target='_blank') + a.a0(href='https://developer.auth0.com/', target='_blank') span.by-text Crafted by img(src='http://github.com/img/pic_logo_ft.svg', alt='Crafted by Auth0 - JWT.io Token Based Authentication') span.crafted-by__question-mark ? - a.supported(href='https://auth0.com/?utm_source=jwtio&utm_campaign=craftedby', target="_blank") + a.supported(href='https://auth0.com/', target="_blank") | Supported by img(src='http://github.com/img/ico_logo.svg', alt='Supported by Auth0 - JWT.io Token Based Authentication').logo-mobile \ No newline at end of file From 4ce7d9bc86541c4552ea1eeac6757bc73986052a Mon Sep 17 00:00:00 2001 From: Jonas Roussel Date: Wed, 23 Aug 2023 13:13:57 +0200 Subject: [PATCH 422/456] Add the support for PS256, PS384, PS512 & ES256K for the dart_jsonwebtoken library --- views/website/libraries/36-Dart.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/views/website/libraries/36-Dart.json b/views/website/libraries/36-Dart.json index d68e52d0..85530ea6 100644 --- a/views/website/libraries/36-Dart.json +++ b/views/website/libraries/36-Dart.json @@ -16,7 +16,7 @@ "nbf": true, "iat": true, "jti": true, - "typ": true, + "typ": true, "hs256": true, "hs384": true, "hs512": true, @@ -27,10 +27,10 @@ "es384": true, "es512": true, "eddsa": true, - "ps256": false, - "ps384": false, - "ps512": false, - "es256k": false + "ps256": true, + "ps384": true, + "ps512": true, + "es256k": true }, "authorUrl": "https://github.com/jonasroussel", "authorName": "Jonas Roussel", From 6cffb089d127c20f9d98d9bf19fc60e05bc3dcc0 Mon Sep 17 00:00:00 2001 From: Christian Banse Date: Fri, 15 Sep 2023 22:43:58 +0200 Subject: [PATCH 423/456] Updating info about `jwt` Go library This PR updates the `jwt` Go library with features recently introduced in `v5`. --- views/website/libraries/9-Go.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/views/website/libraries/9-Go.json b/views/website/libraries/9-Go.json index ac602548..385f61bd 100644 --- a/views/website/libraries/9-Go.json +++ b/views/website/libraries/9-Go.json @@ -9,8 +9,8 @@ "support": { "sign": true, "verify": true, - "iss": false, - "sub": false, + "iss": true, + "sub": true, "aud": true, "exp": true, "nbf": true, @@ -25,16 +25,16 @@ "es256": true, "es384": true, "es512": true, - "ps256": false, - "ps384": false, - "ps512": false, + "ps256": true, + "ps384": true, + "ps512": true, "eddsa": true }, "authorUrl": "https://github.com/golang-jwt", "authorName": "golang-jwt", "gitHubRepoPath": "golang-jwt/jwt", "repoUrl": "https://github.com/golang-jwt/jwt", - "installCommandHtml": "go get github.com/golang-jwt/jwt/v4" + "installCommandHtml": "go get github.com/golang-jwt/jwt/v5" }, { "minimumVersion": null, From a342f71f7972f154d07e8e497ceac4abe5571e4d Mon Sep 17 00:00:00 2001 From: Hardik Juneja Date: Fri, 29 Sep 2023 16:11:53 +0200 Subject: [PATCH 424/456] DXD-112: update new cic logos everywhere --- img/website/ico_logo.svg | 7 ++++++- img/website/pic_logo_ft.svg | 21 +++++++++++++++++---- stylus/website/index.styl | 4 ++-- 3 files changed, 25 insertions(+), 7 deletions(-) diff --git a/img/website/ico_logo.svg b/img/website/ico_logo.svg index bdd8e582..e3ced17f 100644 --- a/img/website/ico_logo.svg +++ b/img/website/ico_logo.svg @@ -1 +1,6 @@ - \ No newline at end of file + + + + + + diff --git a/img/website/pic_logo_ft.svg b/img/website/pic_logo_ft.svg index f29ae85d..c24832d1 100644 --- a/img/website/pic_logo_ft.svg +++ b/img/website/pic_logo_ft.svg @@ -1,4 +1,17 @@ - - - - \ No newline at end of file + + + + + + + + + + + + + + + + + diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 868e875a..5f70f938 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -312,7 +312,7 @@ body { top: -1px; img { - height: 35px; + height: 32px; } .by-text { @@ -1848,4 +1848,4 @@ footer { width: 100%; height: 48px; z-index: 100; -} \ No newline at end of file +} From ea34512a5c0fbdfa4603e9b7b72c41826a7453ba Mon Sep 17 00:00:00 2001 From: dan <37590801+dan-auth0@users.noreply.github.com> Date: Wed, 20 Dec 2023 15:39:29 -0500 Subject: [PATCH 425/456] update footer links --- .gitignore | 1 + views/website/counter.pug | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 7ad7b569..97d73092 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,4 @@ Dockerfile yarn.lock .env libraries.json +.idea/* diff --git a/views/website/counter.pug b/views/website/counter.pug index 8fdf5310..a3f2bdd0 100644 --- a/views/website/counter.pug +++ b/views/website/counter.pug @@ -2,10 +2,10 @@ .container img(src='http://github.com/img/pic_logo_ft.svg' alt='Auth0 logo').logo p JWT.io is brought to you by - a(href='https://auth0.com/signup', target="_blank") Auth0 + a(href='https://auth0.com/signup/?utm_source=jwt.io&utm_medium=microsites&utm_campaign=devn_signup', target="_blank", rel="noreferrer noopener") Auth0 p Securely implement authentication with JWTs using Auth0 on any stack and any device in less than 10 minutes. - a(href='https://auth0.com/signup', target="_blank").btn.btn-success Create free account + a(href='https://auth0.com/signup/?utm_source=jwt.io&utm_medium=microsites&utm_campaign=devn_signup', target="_blank", rel="noreferrer noopener").btn.btn-success Create free account .token h5 TOKENS CREATED From 1b2138398522d9ae14bfec5349e6a8d146fc9d8f Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Tue, 2 Jan 2024 12:48:17 -0500 Subject: [PATCH 426/456] update/remove old logo from images --- img/website/ebook.png | Bin 107722 -> 34745 bytes views/website/md/introduction.md | 6 +++--- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/img/website/ebook.png b/img/website/ebook.png index e176e43f6f84bad64ec29534c6fb3e06eba4e8df..9d75fac88860ac6c92d6ec07d06d0441daef6300 100644 GIT binary patch literal 34745 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%0A_Osr{i;&@zSbWht~O@SwE)nQy5$Lc6Zn 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 z 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 diff --git a/views/website/md/introduction.md b/views/website/md/introduction.md index 81304b3c..ff39b890 100755 --- a/views/website/md/introduction.md +++ b/views/website/md/introduction.md @@ -90,7 +90,7 @@ The following shows a JWT that has the previous header and payload encoded, and If you want to play with JWT and put these concepts into practice, you can use [jwt.io Debugger](https://jwt.io/#debugger-io) to decode, verify, and generate JWTs. -![JWT.io Debugger](https://cdn.auth0.com/blog/legacy-app-auth/legacy-app-auth-5.png) +![JWT.io Debugger](https://cdn.auth0.com/website/jwt/introduction/debugger.png) ## How do JSON Web Tokens work? In authentication, when the user successfully logs in using their credentials, a JSON Web Token will be returned. Since tokens are credentials, great care must be taken to prevent security issues. In general, you should not keep tokens longer than required. @@ -111,7 +111,7 @@ If the token is sent in the `Authorization` header, Cross-Origin Resource Sharin The following diagram shows how a JWT is obtained and used to access APIs or resources: -![How does a JSON Web Token work](https://cdn2.auth0.com/docs/media/articles/api-auth/client-credentials-grant.png) +![How does a JSON Web Token work](https://cdn.auth0.com/website/jwt/introduction/client-credentials-grant.png) 1. The application or client requests authorization to the authorization server. This is performed through one of the different authorization flows. For example, a typical [OpenID Connect](http://openid.net/connect/) compliant web application will go through the `/oauth/authorize` endpoint using the [authorization code flow](http://openid.net/specs/openid-connect-core-1_0.html#CodeFlowAuth). 2. When the authorization is granted, the authorization server returns an access token to the application. @@ -134,4 +134,4 @@ Regarding usage, JWT is used at Internet scale. This highlights the ease of clie ![Comparing the length of an encoded JWT and an encoded SAML](https://cdn.auth0.com/content/jwt/comparing-jwt-vs-saml2.png) _Comparison of the length of an encoded JWT and an encoded SAML_ -If you want to read more about JSON Web Tokens and even start using them to perform authentication in your own applications, browse to the [JSON Web Token landing page](http://auth0.com/learn/json-web-tokens) at Auth0. +If you want to read more about JSON Web Tokens and even start using them to perform authentication in your own applications, browse to the [JSON Web Token landing page](http://auth0.com/learn/json-web-tokens) at Auth0 by Okta. From 8dcebbf29705c290448282b1c0a6d119ddcf2617 Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Tue, 2 Jan 2024 15:16:24 -0500 Subject: [PATCH 427/456] use single deck logo --- img/website/auth0_logo_ft.svg | 17 +++++++++++++++++ .../{pic_logo_ft.svg => auth0_logo_header.svg} | 0 views/website/counter.pug | 2 +- views/website/navigation.pug | 4 ++-- 4 files changed, 20 insertions(+), 3 deletions(-) create mode 100644 img/website/auth0_logo_ft.svg rename img/website/{pic_logo_ft.svg => auth0_logo_header.svg} (100%) diff --git a/img/website/auth0_logo_ft.svg b/img/website/auth0_logo_ft.svg new file mode 100644 index 00000000..57c51da3 --- /dev/null +++ b/img/website/auth0_logo_ft.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/img/website/pic_logo_ft.svg b/img/website/auth0_logo_header.svg similarity index 100% rename from img/website/pic_logo_ft.svg rename to img/website/auth0_logo_header.svg diff --git a/views/website/counter.pug b/views/website/counter.pug index a3f2bdd0..95c4363d 100644 --- a/views/website/counter.pug +++ b/views/website/counter.pug @@ -1,6 +1,6 @@ .tokens-created .container - img(src='http://github.com/img/pic_logo_ft.svg' alt='Auth0 logo').logo + img(src='http://github.com/img/auth0_logo_ft.svg' alt='Auth0 logo').logo p JWT.io is brought to you by a(href='https://auth0.com/signup/?utm_source=jwt.io&utm_medium=microsites&utm_campaign=devn_signup', target="_blank", rel="noreferrer noopener") Auth0 p Securely implement authentication with JWTs using Auth0 on any stack and any device in less than 10 minutes. diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 57edd64c..f0b9d527 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -17,9 +17,9 @@ nav.navbar.closed .social a.a0(href='https://developer.auth0.com/', target='_blank') span.by-text Crafted by - img(src='http://github.com/img/pic_logo_ft.svg', alt='Crafted by Auth0 - JWT.io Token Based Authentication') + img(src='http://github.com/img/auth0_logo_header.svg', alt='Crafted by Auth0 - JWT.io Token Based Authentication') span.crafted-by__question-mark ? a.supported(href='https://auth0.com/', target="_blank") | Supported by - img(src='http://github.com/img/ico_logo.svg', alt='Supported by Auth0 - JWT.io Token Based Authentication').logo-mobile \ No newline at end of file + img(src='http://github.com/img/ico_logo.svg', alt='Supported by Auth0 - JWT.io Token Based Authentication').logo-mobile From 08b617ad8b0163c8abda71a1e52c025d19afa566 Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Tue, 2 Jan 2024 15:21:08 -0500 Subject: [PATCH 428/456] update crafted by logo on footer --- views/extension/index.pug | 4 ++-- views/website/layout.pug | 6 +++--- views/website/navigation.pug | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/views/extension/index.pug b/views/extension/index.pug index 131b7306..ede24c46 100644 --- a/views/extension/index.pug +++ b/views/extension/index.pug @@ -37,8 +37,8 @@ block content .colophon.clearfix .pull-left a(target="_blank" href="https://developer.auth0.com/") - | Supported by   - img(src="http://github.com/img/ico_logo.svg" alt='Supported by Auth0 - JWT.io Token Based Authentication') + | Crafted by   + img(src="http://github.com/img/auth0_logo_ft.svg" alt='Crafted by Auth0 - JWT.io Token Based Authentication') a  -  a.keep-deco(href='https://github.com/jsonwebtoken/jsonwebtoken.github.io/blob/master/LICENSE.txt', target="_blank") License diff --git a/views/website/layout.pug b/views/website/layout.pug index 40ee91e5..74f46239 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -62,8 +62,8 @@ html(lang='en') | Your Privacy Choices img.ccpa-toggle(src='https://cdn.auth0.com/website/footer/ccpa.svg' alt='Privacy choices') a(href='https://developer.auth0.com/', target="_blank") - | Supported by - img(src='http://github.com/img/ico_logo.svg' alt='Supported by Auth0 - JWT.io Token Based Authentication').logo + | Crafted by + img(src='http://github.com/img/auth0_logo_ft.svg' alt='Crafted by Auth0 - JWT.io Token Based Authentication').logo #ccpa-modal button#close-ccpa x h3 Your Privacy Choices @@ -83,4 +83,4 @@ html(lang='en') if process.env.NODE_ENV === "production" script(src="https://cdn.cookielaw.org/scripttemplates/otSDKStub.js", type="text/javascript", charset="UTF-8", data-domain-script=COOKIE_CONSENT_DOMAIN_ID, id="consent-script") - script(src="http://github.com/js/cookie-consent.js") \ No newline at end of file + script(src="http://github.com/js/cookie-consent.js") diff --git a/views/website/navigation.pug b/views/website/navigation.pug index f0b9d527..1388f24c 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -21,5 +21,5 @@ nav.navbar.closed span.crafted-by__question-mark ? a.supported(href='https://auth0.com/', target="_blank") - | Supported by - img(src='http://github.com/img/ico_logo.svg', alt='Supported by Auth0 - JWT.io Token Based Authentication').logo-mobile + | Crafted by + img(src='http://github.com/img/auth0_logo_ft.svg', alt='Crafted by Auth0 - JWT.io Token Based Authentication').logo-mobile From d8635699ef06953099a5524470f08480285473c7 Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Thu, 22 Feb 2024 13:30:43 -0500 Subject: [PATCH 429/456] feature: tippy top banner code::identity --- .tool-versions | 1 + src/website/index.js | 4 +- src/website/top-banner.js | 11 +++++ stylus/website/index.styl | 93 ++++++++++++++++++++++++++++++++++++ views/website/navigation.pug | 13 ++++- 5 files changed, 120 insertions(+), 2 deletions(-) create mode 100644 .tool-versions create mode 100644 src/website/top-banner.js diff --git a/.tool-versions b/.tool-versions new file mode 100644 index 00000000..826ccf4f --- /dev/null +++ b/.tool-versions @@ -0,0 +1 @@ +nodejs 16.15.0 diff --git a/src/website/index.js b/src/website/index.js index 1f2e33c3..d86eb9d2 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -11,6 +11,7 @@ import { shareJwtTextElement, } from "./dom-elements.js"; import { CCPAModal } from "./ccpa-modal.js"; +import { TopBanner } from "./top-banner.js"; import queryString from "querystring"; @@ -54,4 +55,5 @@ parseLocationQuery(); setupHighlighting(); setupJwtCounter(); setupShareJwtButton(shareJwtButton, shareJwtTextElement); -CCPAModal(); \ No newline at end of file +CCPAModal(); +TopBanner(); diff --git a/src/website/top-banner.js b/src/website/top-banner.js new file mode 100644 index 00000000..1cc65776 --- /dev/null +++ b/src/website/top-banner.js @@ -0,0 +1,11 @@ +export function TopBanner() { + document.addEventListener("DOMContentLoaded", function () { + document + .querySelector(".close-top-banner") + .addEventListener("click", () => { + document.querySelector(".top-banner").classList.add("closed"); + document.querySelector(".top-banner-spacer").classList.add("hide"); + document.querySelector(".navbar").classList.remove("top-banner-open"); + }); + }); +} diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 5f70f938..50efd788 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -1849,3 +1849,96 @@ footer { height: 48px; z-index: 100; } + +.top-banner { + background: linear-gradient(90deg, #ff4f40 0%, #ff44dd 99.99%); + border-radius: 8px; + max-width: 1216px; + padding: 8px 16px; + border-bottom: 1px solid rgba(255, 255, 255, 0.1); + visibility: visible; + opacity: 1; + box-sizing: border-box; + margin: 0 auto; + position: fixed; + top: 12px; + z-index: 1000; + width: 100%; + left: 0; + right: 0; + overflow: hidden; + + &.closed { + visibility: hidden; + height: 0; + opacity: 0; + padding: 0; + transition: all 0.2s linear; + } + + .top-banner-container { + margin: 0 auto; + display: grid; + grid-template-columns: 1fr 30px; + max-width: 1200px; + align-items: center; + + div { + +breakpoint('tablet') { + display: flex; + align-items: center; + } + } + } + + p { + font-size: 14px; + color: #fff; + margin: 0 2rem 0 0; + display: inline; + } + + a { + font-weight: 600; + font-size: 14px; + color: #fff; + text-decoration: none; + display: block; + + span { + margin-left: 8px; + } + + &:hover { + text-decoration: underline; + } + + +breakpoint('tablet') { + display: inline; + } + } + + button { + font-weight: 600; + font-size: 20px; + color: #fff; + text-decoration: none; + background: none; + border: none; + justify-self: flex-end; + display: block; + cursor: pointer; + text-align: right; + transform: rotate(45deg); + } +} + +.top-banner-spacer { + background: black; + height: 50px; + + &.hide { + height: 0; + transition: all 0.2s linear; + } +} diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 1388f24c..1044d9b9 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -1,4 +1,15 @@ -nav.navbar.closed +.top-banner-bg +.top-banner + .top-banner-container + div + p Build your login box in minutes with Auth0. + a(href="https://regionalevents.okta.com/soyouneedtobuildaloginbox/DeveloperCenter" target="_blank") Register for Code::Identity to learn how + span(aria-hiden="true") → + button.close-top-banner + + +.top-banner-spacer + +nav.navbar.closed.top-banner-open .container .top-mobile .menu-trigger From e6526743329f58dde2099d259584a9a727dd56bc Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Thu, 22 Feb 2024 14:05:31 -0500 Subject: [PATCH 430/456] fix: mobile nav banner not visible due top-banner-bg --- src/website/top-banner.js | 1 + stylus/website/index.styl | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/src/website/top-banner.js b/src/website/top-banner.js index 1cc65776..e8910a9e 100644 --- a/src/website/top-banner.js +++ b/src/website/top-banner.js @@ -3,6 +3,7 @@ export function TopBanner() { document .querySelector(".close-top-banner") .addEventListener("click", () => { + document.querySelector(".top-banner-bg").classList.add("closed"); document.querySelector(".top-banner").classList.add("closed"); document.querySelector(".top-banner-spacer").classList.add("hide"); document.querySelector(".navbar").classList.remove("top-banner-open"); diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 50efd788..8883933a 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -1848,6 +1848,14 @@ footer { width: 100%; height: 48px; z-index: 100; + + &.closed { + visibility: hidden; + height: 0; + opacity: 0; + padding: 0; + transition: all 0.1s linear; + } } .top-banner { From ad5d27cbb0f5a24bdbf6d695cdd0228cacee97e1 Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Thu, 22 Feb 2024 15:37:36 -0500 Subject: [PATCH 431/456] update copy --- .tool-versions | 1 - views/website/navigation.pug | 6 ++---- 2 files changed, 2 insertions(+), 5 deletions(-) delete mode 100644 .tool-versions diff --git a/.tool-versions b/.tool-versions deleted file mode 100644 index 826ccf4f..00000000 --- a/.tool-versions +++ /dev/null @@ -1 +0,0 @@ -nodejs 16.15.0 diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 1044d9b9..5e32b2c5 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -1,10 +1,8 @@ .top-banner-bg .top-banner .top-banner-container - div - p Build your login box in minutes with Auth0. - a(href="https://regionalevents.okta.com/soyouneedtobuildaloginbox/DeveloperCenter" target="_blank") Register for Code::Identity to learn how - span(aria-hiden="true") → + a(href="https://regionalevents.okta.com/soyouneedtobuildaloginbox/DeveloperCenter" target="_blank") Developers! Catch our webinar and see how to build with Auth0 in minutes. + span(aria-hiden="true") → button.close-top-banner + .top-banner-spacer From 8e46978aa9224ede30d1923931865307a7b0d874 Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Fri, 23 Feb 2024 09:42:22 -0500 Subject: [PATCH 432/456] fix tippy top banner not closing on introduction and libraries pages --- src/website/introduction/index.js | 2 ++ src/website/libraries/index.js | 4 +++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/website/introduction/index.js b/src/website/introduction/index.js index 2645aba5..f2d329f1 100644 --- a/src/website/introduction/index.js +++ b/src/website/introduction/index.js @@ -1,6 +1,8 @@ import { setupHighlighting } from "../highlighting.js"; import { setupJwtCounter } from "../counter.js"; +import { TopBanner } from "../top-banner.js"; // Initialization setupHighlighting(); setupJwtCounter(); +TopBanner(); diff --git a/src/website/libraries/index.js b/src/website/libraries/index.js index 2dc41b1b..3b3280ff 100644 --- a/src/website/libraries/index.js +++ b/src/website/libraries/index.js @@ -1,8 +1,10 @@ import { setupLibraries } from "./libraries.js"; import { setupHighlighting } from "../highlighting.js"; import { setupJwtCounter } from "../counter.js"; +import { TopBanner } from "../top-banner.js"; // Initialization setupLibraries(); setupHighlighting(); -setupJwtCounter(); \ No newline at end of file +setupJwtCounter(); +TopBanner(); From 60ac8b5cbe539b6bc04bc68f1b1f4ba013e80384 Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Fri, 23 Feb 2024 09:47:58 -0500 Subject: [PATCH 433/456] fix privacy choices modal not opening on introduction and libraries pages --- src/website/introduction/index.js | 4 +++- src/website/libraries/index.js | 6 ++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/website/introduction/index.js b/src/website/introduction/index.js index f2d329f1..b35fb926 100644 --- a/src/website/introduction/index.js +++ b/src/website/introduction/index.js @@ -1,8 +1,10 @@ -import { setupHighlighting } from "../highlighting.js"; +import { CCPAModal } from "../ccpa-modal.js"; import { setupJwtCounter } from "../counter.js"; +import { setupHighlighting } from "../highlighting.js"; import { TopBanner } from "../top-banner.js"; // Initialization setupHighlighting(); setupJwtCounter(); +CCPAModal(); TopBanner(); diff --git a/src/website/libraries/index.js b/src/website/libraries/index.js index 3b3280ff..0775a920 100644 --- a/src/website/libraries/index.js +++ b/src/website/libraries/index.js @@ -1,10 +1,12 @@ -import { setupLibraries } from "./libraries.js"; -import { setupHighlighting } from "../highlighting.js"; +import { CCPAModal } from "../ccpa-modal.js"; import { setupJwtCounter } from "../counter.js"; +import { setupHighlighting } from "../highlighting.js"; import { TopBanner } from "../top-banner.js"; +import { setupLibraries } from "./libraries.js"; // Initialization setupLibraries(); setupHighlighting(); setupJwtCounter(); +CCPAModal(); TopBanner(); From 66cfebc4a64afd00fbd9ff56e8f2fb1163aae688 Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Fri, 23 Feb 2024 10:29:59 -0500 Subject: [PATCH 434/456] fix mobile nav bar not working on introduction and libraries pages --- src/website/dom-elements-common.js | 11 +++++++++-- src/website/dom-elements.js | 10 +--------- src/website/introduction/index.js | 2 ++ src/website/libraries/index.js | 2 ++ src/website/navbar.js | 6 +++--- src/website/smooth-scrolling.js | 4 ++-- 6 files changed, 19 insertions(+), 16 deletions(-) diff --git a/src/website/dom-elements-common.js b/src/website/dom-elements-common.js index 9c3abe51..dd9631e8 100644 --- a/src/website/dom-elements-common.js +++ b/src/website/dom-elements-common.js @@ -1,2 +1,9 @@ -export const codeElements = document.querySelectorAll('.plain-text pre code'); -export const counterElement = document.querySelector('.counter'); +export const codeElements = document.querySelectorAll(".plain-text pre code"); +export const counterElement = document.querySelector(".counter"); + +export const navbarElement = document.querySelector("nav.navbar"); +export const menuTriggerElement = document.querySelector(".menu-trigger"); +export const menuLinks = document.querySelectorAll(".navbar .menu a"); +export const menuScrollableLinks = navbarElement.querySelectorAll("a.scrollto"); + +export const sectionElements = document.getElementsByTagName("section"); diff --git a/src/website/dom-elements.js b/src/website/dom-elements.js index 5e1fc415..5d85131c 100644 --- a/src/website/dom-elements.js +++ b/src/website/dom-elements.js @@ -1,14 +1,6 @@ export * from '../dom-elements.js'; export * from './dom-elements-common.js'; -export const navbarElement = document.querySelector('nav.navbar'); -export const menuTriggerElement = document.querySelector('.menu-trigger'); -export const menuLinks = document.querySelectorAll('.navbar .menu a'); -export const menuScrollableLinks = - navbarElement.querySelectorAll('a.scrollto'); - -export const sectionElements = document.getElementsByTagName('section'); - export const extensionSection = document.querySelector('.update-site'); export const ebookSection = document.querySelector('.jtw-ebook-banner'); @@ -22,4 +14,4 @@ export const debuggerSection = document.getElementById('debugger-io'); export const shareJwtButton = document.querySelector('.website-share button'); export const shareJwtTextElement = shareJwtButton.querySelector('span'); -export const starsElements = document.getElementsByClassName('stars'); \ No newline at end of file +export const starsElements = document.getElementsByClassName('stars'); diff --git a/src/website/introduction/index.js b/src/website/introduction/index.js index b35fb926..c75a1b41 100644 --- a/src/website/introduction/index.js +++ b/src/website/introduction/index.js @@ -1,9 +1,11 @@ import { CCPAModal } from "../ccpa-modal.js"; import { setupJwtCounter } from "../counter.js"; import { setupHighlighting } from "../highlighting.js"; +import { setupNavbar } from "../navbar.js"; import { TopBanner } from "../top-banner.js"; // Initialization +setupNavbar(); setupHighlighting(); setupJwtCounter(); CCPAModal(); diff --git a/src/website/libraries/index.js b/src/website/libraries/index.js index 0775a920..e1aaa352 100644 --- a/src/website/libraries/index.js +++ b/src/website/libraries/index.js @@ -1,10 +1,12 @@ import { CCPAModal } from "../ccpa-modal.js"; import { setupJwtCounter } from "../counter.js"; import { setupHighlighting } from "../highlighting.js"; +import { setupNavbar } from "../navbar.js"; import { TopBanner } from "../top-banner.js"; import { setupLibraries } from "./libraries.js"; // Initialization +setupNavbar(); setupLibraries(); setupHighlighting(); setupJwtCounter(); diff --git a/src/website/navbar.js b/src/website/navbar.js index db4821d0..9de30cd6 100644 --- a/src/website/navbar.js +++ b/src/website/navbar.js @@ -1,12 +1,12 @@ import { getOffsetBoundingClientRect } from './utils.js'; -import { +import { navbarElement, menuTriggerElement, menuLinks, sectionElements, menuScrollableLinks -} from './dom-elements.js'; +} from './dom-elements-common.js'; export function setupNavbar() { window.addEventListener('scroll', () => { @@ -50,4 +50,4 @@ export function setupNavbar() { document.body.classList.remove('menu-mobile'); }); }); -} \ No newline at end of file +} diff --git a/src/website/smooth-scrolling.js b/src/website/smooth-scrolling.js index 1cd0758b..1356279f 100644 --- a/src/website/smooth-scrolling.js +++ b/src/website/smooth-scrolling.js @@ -1,4 +1,4 @@ -import { menuScrollableLinks, navbarElement } from './dom-elements.js'; +import { menuScrollableLinks, navbarElement } from './dom-elements-common.js'; import { isWideScreen } from '../utils.js'; import $ from 'jquery'; @@ -9,7 +9,7 @@ import log from 'loglevel'; // jQuery somewhere else. export function smoothScrollTo(element) { // TODO: don't use jQuery - + const navHeight = $(navbarElement).height(); const targetElement = $(element); From 80e4950528f758cd3bf4ef5940a9087721dd955a Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Tue, 27 Feb 2024 11:35:15 -0500 Subject: [PATCH 435/456] fix: update URL TTB --- views/website/navigation.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 5e32b2c5..1a1e0b6c 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -1,7 +1,7 @@ .top-banner-bg .top-banner .top-banner-container - a(href="https://regionalevents.okta.com/soyouneedtobuildaloginbox/DeveloperCenter" target="_blank") Developers! Catch our webinar and see how to build with Auth0 in minutes. + a(href="https://regionalevents.okta.com/soyouneedtobuildaloginbox/jwtio" target="_blank") Developers! Catch our webinar and see how to build with Auth0 in minutes. span(aria-hiden="true") → button.close-top-banner + From 0c065eaa337c54909b4fc5f80bcb76ea001dbecb Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Thu, 14 Mar 2024 14:00:50 -0500 Subject: [PATCH 436/456] feature: update banner for FGA Webinar --- views/website/navigation.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 1a1e0b6c..18a37be1 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -1,7 +1,7 @@ .top-banner-bg .top-banner .top-banner-container - a(href="https://regionalevents.okta.com/soyouneedtobuildaloginbox/jwtio" target="_blank") Developers! Catch our webinar and see how to build with Auth0 in minutes. + a(href="https://pages.okta.com/2024-03-WBN-Introduce-FGA?_gl=1*1tgmuji*_ga*NzU5NTY0MzE1LjE2NzcyNjg2OTU.*_ga_QKMSDV5369*MTcxMDQyNjYzMS4zNDQuMS4xNzEwNDI5NjkxLjYwLjAuMA" target="_blank") Catch our webinar on next-gen authorization: Okta Fine-Grained Authorization span(aria-hiden="true") → button.close-top-banner + From 0bc74d546329d9d48980058847d85d537658b46f Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Fri, 15 Mar 2024 10:05:11 -0500 Subject: [PATCH 437/456] fix: typo on OKTA FGA product name --- views/website/navigation.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 18a37be1..09d0921b 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -1,7 +1,7 @@ .top-banner-bg .top-banner .top-banner-container - a(href="https://pages.okta.com/2024-03-WBN-Introduce-FGA?_gl=1*1tgmuji*_ga*NzU5NTY0MzE1LjE2NzcyNjg2OTU.*_ga_QKMSDV5369*MTcxMDQyNjYzMS4zNDQuMS4xNzEwNDI5NjkxLjYwLjAuMA" target="_blank") Catch our webinar on next-gen authorization: Okta Fine-Grained Authorization + a(href="https://pages.okta.com/2024-03-WBN-Introduce-FGA?_gl=1*1tgmuji*_ga*NzU5NTY0MzE1LjE2NzcyNjg2OTU.*_ga_QKMSDV5369*MTcxMDQyNjYzMS4zNDQuMS4xNzEwNDI5NjkxLjYwLjAuMA" target="_blank") Catch our webinar on next-gen authorization: Okta Fine Grained Authorization span(aria-hiden="true") → button.close-top-banner + From 67e8da56a9dd935466323b536353e2746e45a78c Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Fri, 5 Apr 2024 07:33:12 -0500 Subject: [PATCH 438/456] fix: disable message banner (#687) --- src/website/index.js | 2 -- src/website/introduction/index.js | 2 -- src/website/libraries/index.js | 2 -- views/website/navigation.pug | 11 +---------- 4 files changed, 1 insertion(+), 16 deletions(-) diff --git a/src/website/index.js b/src/website/index.js index d86eb9d2..cb849342 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -11,7 +11,6 @@ import { shareJwtTextElement, } from "./dom-elements.js"; import { CCPAModal } from "./ccpa-modal.js"; -import { TopBanner } from "./top-banner.js"; import queryString from "querystring"; @@ -56,4 +55,3 @@ setupHighlighting(); setupJwtCounter(); setupShareJwtButton(shareJwtButton, shareJwtTextElement); CCPAModal(); -TopBanner(); diff --git a/src/website/introduction/index.js b/src/website/introduction/index.js index c75a1b41..f0076d8f 100644 --- a/src/website/introduction/index.js +++ b/src/website/introduction/index.js @@ -2,11 +2,9 @@ import { CCPAModal } from "../ccpa-modal.js"; import { setupJwtCounter } from "../counter.js"; import { setupHighlighting } from "../highlighting.js"; import { setupNavbar } from "../navbar.js"; -import { TopBanner } from "../top-banner.js"; // Initialization setupNavbar(); setupHighlighting(); setupJwtCounter(); CCPAModal(); -TopBanner(); diff --git a/src/website/libraries/index.js b/src/website/libraries/index.js index e1aaa352..81c2ad9f 100644 --- a/src/website/libraries/index.js +++ b/src/website/libraries/index.js @@ -2,7 +2,6 @@ import { CCPAModal } from "../ccpa-modal.js"; import { setupJwtCounter } from "../counter.js"; import { setupHighlighting } from "../highlighting.js"; import { setupNavbar } from "../navbar.js"; -import { TopBanner } from "../top-banner.js"; import { setupLibraries } from "./libraries.js"; // Initialization @@ -11,4 +10,3 @@ setupLibraries(); setupHighlighting(); setupJwtCounter(); CCPAModal(); -TopBanner(); diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 09d0921b..1388f24c 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -1,13 +1,4 @@ -.top-banner-bg -.top-banner - .top-banner-container - a(href="https://pages.okta.com/2024-03-WBN-Introduce-FGA?_gl=1*1tgmuji*_ga*NzU5NTY0MzE1LjE2NzcyNjg2OTU.*_ga_QKMSDV5369*MTcxMDQyNjYzMS4zNDQuMS4xNzEwNDI5NjkxLjYwLjAuMA" target="_blank") Catch our webinar on next-gen authorization: Okta Fine Grained Authorization - span(aria-hiden="true") → - button.close-top-banner + - -.top-banner-spacer - -nav.navbar.closed.top-banner-open +nav.navbar.closed .container .top-mobile .menu-trigger From fd7b0d06376dc6cdeb4a3990f00797ca85aa6a86 Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Fri, 5 Apr 2024 14:31:02 -0500 Subject: [PATCH 439/456] feature: promote new webinar --- src/website/index.js | 2 ++ src/website/introduction/index.js | 2 ++ src/website/libraries/index.js | 2 ++ views/website/navigation.pug | 9 +++++++++ 4 files changed, 15 insertions(+) diff --git a/src/website/index.js b/src/website/index.js index cb849342..d86eb9d2 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -11,6 +11,7 @@ import { shareJwtTextElement, } from "./dom-elements.js"; import { CCPAModal } from "./ccpa-modal.js"; +import { TopBanner } from "./top-banner.js"; import queryString from "querystring"; @@ -55,3 +56,4 @@ setupHighlighting(); setupJwtCounter(); setupShareJwtButton(shareJwtButton, shareJwtTextElement); CCPAModal(); +TopBanner(); diff --git a/src/website/introduction/index.js b/src/website/introduction/index.js index f0076d8f..c75a1b41 100644 --- a/src/website/introduction/index.js +++ b/src/website/introduction/index.js @@ -2,9 +2,11 @@ import { CCPAModal } from "../ccpa-modal.js"; import { setupJwtCounter } from "../counter.js"; import { setupHighlighting } from "../highlighting.js"; import { setupNavbar } from "../navbar.js"; +import { TopBanner } from "../top-banner.js"; // Initialization setupNavbar(); setupHighlighting(); setupJwtCounter(); CCPAModal(); +TopBanner(); diff --git a/src/website/libraries/index.js b/src/website/libraries/index.js index 81c2ad9f..e1aaa352 100644 --- a/src/website/libraries/index.js +++ b/src/website/libraries/index.js @@ -2,6 +2,7 @@ import { CCPAModal } from "../ccpa-modal.js"; import { setupJwtCounter } from "../counter.js"; import { setupHighlighting } from "../highlighting.js"; import { setupNavbar } from "../navbar.js"; +import { TopBanner } from "../top-banner.js"; import { setupLibraries } from "./libraries.js"; // Initialization @@ -10,3 +11,4 @@ setupLibraries(); setupHighlighting(); setupJwtCounter(); CCPAModal(); +TopBanner(); diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 1388f24c..745e1971 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -1,3 +1,12 @@ +.top-banner-bg +.top-banner + .top-banner-container + a(href="https://regionalevents.okta.com/codeidentityq1releaseroundup/jwtio" target="_blank") Dive into passkeys, see MFA and other new features in action in this developer webinar + span(aria-hiden="true") → + button.close-top-banner + + +.top-banner-spacer + nav.navbar.closed .container .top-mobile From b6e7708e42840d48729c6e1ae56b5ba0844e6568 Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Mon, 8 Apr 2024 09:12:16 -0500 Subject: [PATCH 440/456] fix: nav bar top banner missing class --- views/website/navigation.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 745e1971..e194cb99 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -7,7 +7,7 @@ .top-banner-spacer -nav.navbar.closed +nav.navbar.closed.top-banner-open .container .top-mobile .menu-trigger From 88829bff9dc90fea351490927a51317e310e3224 Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Tue, 30 Apr 2024 09:39:16 -0500 Subject: [PATCH 441/456] feat: disable ad bar q1 roundup webinar (#691) --- src/website/index.js | 2 -- src/website/introduction/index.js | 2 -- src/website/libraries/index.js | 2 -- views/website/navigation.pug | 11 +---------- 4 files changed, 1 insertion(+), 16 deletions(-) diff --git a/src/website/index.js b/src/website/index.js index d86eb9d2..cb849342 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -11,7 +11,6 @@ import { shareJwtTextElement, } from "./dom-elements.js"; import { CCPAModal } from "./ccpa-modal.js"; -import { TopBanner } from "./top-banner.js"; import queryString from "querystring"; @@ -56,4 +55,3 @@ setupHighlighting(); setupJwtCounter(); setupShareJwtButton(shareJwtButton, shareJwtTextElement); CCPAModal(); -TopBanner(); diff --git a/src/website/introduction/index.js b/src/website/introduction/index.js index c75a1b41..f0076d8f 100644 --- a/src/website/introduction/index.js +++ b/src/website/introduction/index.js @@ -2,11 +2,9 @@ import { CCPAModal } from "../ccpa-modal.js"; import { setupJwtCounter } from "../counter.js"; import { setupHighlighting } from "../highlighting.js"; import { setupNavbar } from "../navbar.js"; -import { TopBanner } from "../top-banner.js"; // Initialization setupNavbar(); setupHighlighting(); setupJwtCounter(); CCPAModal(); -TopBanner(); diff --git a/src/website/libraries/index.js b/src/website/libraries/index.js index e1aaa352..81c2ad9f 100644 --- a/src/website/libraries/index.js +++ b/src/website/libraries/index.js @@ -2,7 +2,6 @@ import { CCPAModal } from "../ccpa-modal.js"; import { setupJwtCounter } from "../counter.js"; import { setupHighlighting } from "../highlighting.js"; import { setupNavbar } from "../navbar.js"; -import { TopBanner } from "../top-banner.js"; import { setupLibraries } from "./libraries.js"; // Initialization @@ -11,4 +10,3 @@ setupLibraries(); setupHighlighting(); setupJwtCounter(); CCPAModal(); -TopBanner(); diff --git a/views/website/navigation.pug b/views/website/navigation.pug index e194cb99..1388f24c 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -1,13 +1,4 @@ -.top-banner-bg -.top-banner - .top-banner-container - a(href="https://regionalevents.okta.com/codeidentityq1releaseroundup/jwtio" target="_blank") Dive into passkeys, see MFA and other new features in action in this developer webinar - span(aria-hiden="true") → - button.close-top-banner + - -.top-banner-spacer - -nav.navbar.closed.top-banner-open +nav.navbar.closed .container .top-mobile .menu-trigger From 563ae49ba822b080d0a2b2ede9aa15f58226c31b Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Wed, 24 Jul 2024 13:26:53 -0500 Subject: [PATCH 442/456] feat: enable ttb to gather feedback from community (#701) --- src/website/index.js | 2 ++ src/website/introduction/index.js | 2 ++ src/website/libraries/index.js | 2 ++ views/website/navigation.pug | 11 ++++++++++- 4 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/website/index.js b/src/website/index.js index cb849342..d86eb9d2 100644 --- a/src/website/index.js +++ b/src/website/index.js @@ -11,6 +11,7 @@ import { shareJwtTextElement, } from "./dom-elements.js"; import { CCPAModal } from "./ccpa-modal.js"; +import { TopBanner } from "./top-banner.js"; import queryString from "querystring"; @@ -55,3 +56,4 @@ setupHighlighting(); setupJwtCounter(); setupShareJwtButton(shareJwtButton, shareJwtTextElement); CCPAModal(); +TopBanner(); diff --git a/src/website/introduction/index.js b/src/website/introduction/index.js index f0076d8f..c75a1b41 100644 --- a/src/website/introduction/index.js +++ b/src/website/introduction/index.js @@ -2,9 +2,11 @@ import { CCPAModal } from "../ccpa-modal.js"; import { setupJwtCounter } from "../counter.js"; import { setupHighlighting } from "../highlighting.js"; import { setupNavbar } from "../navbar.js"; +import { TopBanner } from "../top-banner.js"; // Initialization setupNavbar(); setupHighlighting(); setupJwtCounter(); CCPAModal(); +TopBanner(); diff --git a/src/website/libraries/index.js b/src/website/libraries/index.js index 81c2ad9f..e1aaa352 100644 --- a/src/website/libraries/index.js +++ b/src/website/libraries/index.js @@ -2,6 +2,7 @@ import { CCPAModal } from "../ccpa-modal.js"; import { setupJwtCounter } from "../counter.js"; import { setupHighlighting } from "../highlighting.js"; import { setupNavbar } from "../navbar.js"; +import { TopBanner } from "../top-banner.js"; import { setupLibraries } from "./libraries.js"; // Initialization @@ -10,3 +11,4 @@ setupLibraries(); setupHighlighting(); setupJwtCounter(); CCPAModal(); +TopBanner(); diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 1388f24c..4b01443a 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -1,4 +1,13 @@ -nav.navbar.closed +.top-banner-bg +.top-banner + .top-banner-container + a(href="https://a0.to/jwt-io-feedback" target="_blank") Help us shape the future of jwt.io! Learn more about upcoming changes and share feedback. + span(aria-hiden="true") → + button.close-top-banner + + +.top-banner-spacer + +nav.navbar.closed.top-banner-open .container .top-mobile .menu-trigger From 59f098d576b9d77a069c5f4a6c0bf4391bdc2f61 Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Thu, 25 Jul 2024 09:09:55 -0500 Subject: [PATCH 443/456] fix: update ttb copy jwt.io feedback (#703) --- views/website/navigation.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 4b01443a..5a7625b7 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -1,7 +1,7 @@ .top-banner-bg .top-banner .top-banner-container - a(href="https://a0.to/jwt-io-feedback" target="_blank") Help us shape the future of jwt.io! Learn more about upcoming changes and share feedback. + a(href="https://a0.to/jwt-io-feedback" target="_blank") Learn about the upcoming changes to jwt.io and share your feedback span(aria-hiden="true") → button.close-top-banner + From 0c5ba7a1ca414675a06180ba26dec4e1e1ddcb7d Mon Sep 17 00:00:00 2001 From: Paul Toffoloni <69189821+ptoffy@users.noreply.github.com> Date: Thu, 10 Oct 2024 17:23:53 +0200 Subject: [PATCH 444/456] Update Swift's JWTKit's supported algorithms (#680) * Update Swift's JWTKit supported algorithms * Update JWTKit install command * Format * Add `typ` header to JWTKit --- views/website/libraries/19-Swift.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/views/website/libraries/19-Swift.json b/views/website/libraries/19-Swift.json index 482b87bf..97af5d28 100644 --- a/views/website/libraries/19-Swift.json +++ b/views/website/libraries/19-Swift.json @@ -47,6 +47,7 @@ "nbf": true, "iat": true, "jti": true, + "typ": true, "hs256": true, "hs384": true, "hs512": true, @@ -56,16 +57,16 @@ "es256": true, "es384": true, "es512": true, - "ps256": false, - "ps384": false, - "ps512": false + "ps256": true, + "ps384": true, + "ps512": true, + "eddsa": true }, "authorUrl": "https://github.com/vapor", "authorName": "Vapor", "gitHubRepoPath": "vapor/jwt-kit", "repoUrl": "https://github.com/vapor/jwt-kit", - "installCommandHtml": - ".package(url: \"https://github.com/vapor/jwt-kit.git/", from: \"4.0.0\")" + "installCommandHtml": ".package(url: \"https://github.com/vapor/jwt-kit.git/", from: \"5.0.0\")" }, { "minimumVersion": null, @@ -127,8 +128,7 @@ "authorName": "IBM Swift", "gitHubRepoPath": "IBM-Swift/Swift-JWT", "repoUrl": "https://github.com/IBM-Swift/Swift-JWT", - "installCommandHtml": - ".package(url:\"https://github.com/IBM-Swift/Swift-JWT/", from: \"3.5.0\")" + "installCommandHtml": ".package(url:\"https://github.com/IBM-Swift/Swift-JWT/", from: \"3.5.0\")" }, { "minimumVersion": null, From c4ecc6ddee63594d1256efa76103febfa640b654 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gon=C3=A7alo=20Frade?= <106541307+beatt83@users.noreply.github.com> Date: Wed, 16 Oct 2024 14:30:50 +0100 Subject: [PATCH 445/456] add beatt87 jose-swift library (#678) Add a jose library that adds support of Jose (JWA, JWK, JWS, JWE, JWT). Supported JWT features: - Signing with all JWS algorithms including EDDSA and ES256K. - Encrypting with all JWE algorithms including ECDH-1PU. - Nested JWTs. - Validation of iss, sub, aud, exp, nbf, iat. - Support of jti, typ and cty. --- views/website/libraries/19-Swift.json | 35 +++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/views/website/libraries/19-Swift.json b/views/website/libraries/19-Swift.json index 97af5d28..f0ca67c9 100644 --- a/views/website/libraries/19-Swift.json +++ b/views/website/libraries/19-Swift.json @@ -160,6 +160,41 @@ "gitHubRepoPath": "airsidemobile/JOSESwift", "repoUrl": "https://github.com/airsidemobile/JOSESwift", "installCommandHtml": "pod 'JOSESwift'" + }, + { + "minimumVersion": null, + "support": { + "sign": true, + "verify": true, + "iss": true, + "sub": true, + "aud": true, + "exp": true, + "nbf": true, + "iat": true, + "jti": true, + "typ": true, + "hs256": true, + "hs384": true, + "hs512": true, + "rs256": true, + "rs384": true, + "rs512": true, + "es256": true, + "es384": true, + "es512": true, + "es256k": true, + "ps256": true, + "ps384": true, + "ps512": true, + "eddsa": true + }, + "authorUrl": "https://github.com/beatt83", + "authorName": "Gonçalo Frade", + "gitHubRepoPath": "beatt83/jose-swift", + "repoUrl": "https://github.com/beatt83/jose-swift", + "installCommandHtml": + ".package(url: \"https://github.com/beatt83/jose-swift.git/", .upToNextMinor(from: \"4.0.0\"))" } ] } From a8069602043e1f8c92332c00aa0d25ca72143aff Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Thu, 17 Oct 2024 06:31:35 -0500 Subject: [PATCH 446/456] Add persistence to ad banner (#710) * feature: add persistence to the ad banner with localStorage * fix: smooth transition * fix: remove class not required * update copy for best of devday * remove not used properties * delete GH test action * move GH test action * fix: fixed height logo hero banner * fix: fixed height logo Auth0 by Okta * fix: render the ttb banner smoothly when loading --- .github/{workflows => inactive}/test.yml | 0 src/website/top-banner.js | 99 +++++++++++++++++++++++- stylus/website/index.styl | 36 ++++++++- views/website/layout.pug | 3 +- views/website/navigation.pug | 10 +-- 5 files changed, 133 insertions(+), 15 deletions(-) rename .github/{workflows => inactive}/test.yml (100%) diff --git a/.github/workflows/test.yml b/.github/inactive/test.yml similarity index 100% rename from .github/workflows/test.yml rename to .github/inactive/test.yml diff --git a/src/website/top-banner.js b/src/website/top-banner.js index e8910a9e..84fa6304 100644 --- a/src/website/top-banner.js +++ b/src/website/top-banner.js @@ -1,12 +1,103 @@ +const MESSAGE_BAR_STATE = { + CLOSED: "CLOSED", + OPEN: "OPEN", +}; + +const MESSAGE_BAR_STATUS = { + ACTIVE: "ACTIVE", + INACTIVE: "INACTIVE", +}; + +const messageBar = { + status: MESSAGE_BAR_STATUS.ACTIVE, + id: { + key: "messageBar_id", + value: "BEST_OF_DEVDAY_2024", + }, + state: { + key: "messageBar_state", + }, +}; + +const closeMessageBar = () => { + const isMessageBarActive = messageBar.status === MESSAGE_BAR_STATUS.ACTIVE; + + if (!isMessageBarActive) { + return; + } + + window.localStorage.setItem(messageBar.state.key, MESSAGE_BAR_STATE.CLOSED); + + document.querySelector(".top-banner-bg").classList.add("closed"); + document.querySelector(".top-banner").classList.add("closed"); + document.querySelector(".content").classList.remove("top-banner-open"); + document.querySelector(".top-mobile").classList.remove("top-banner-open"); + document.querySelector(".navbar").classList.remove("top-banner-open"); +}; + +const renderTopBanner = () => { + document.querySelector(".top-banner-bg").classList.remove("closed"); + document.querySelector(".top-banner").classList.remove("closed"); + document.querySelector(".content").classList.add("top-banner-open"); + document.querySelector(".top-mobile").classList.add("top-banner-open"); + document.querySelector(".navbar").classList.add("top-banner-open"); +}; + +const loadBannerStateFromLocalStorage = () => { + let messageBarId = window.localStorage.getItem(messageBar.id.key); + let messageBarState = window.localStorage.getItem(messageBar.state.key); + + if (!messageBarId) { + window.localStorage.setItem(messageBar.id.key, messageBar.id.value); + messageBarId = window.localStorage.getItem(messageBar.id.key); + } + + if (!messageBarState) { + window.localStorage.setItem(messageBar.state.key, MESSAGE_BAR_STATE.OPEN); + messageBarState = window.localStorage.getItem(messageBar.state.key); + } + + switch (messageBar.status) { + case MESSAGE_BAR_STATUS.ACTIVE: { + const isExistingCta = messageBarId === messageBar.id.value; + + if (!isExistingCta) { + window.localStorage.setItem(messageBar.id.key, messageBar.id.value); + window.localStorage.setItem( + messageBar.state.key, + MESSAGE_BAR_STATE.OPEN + ); + + renderTopBanner(); + + return; + } + + switch (messageBarState) { + case MESSAGE_BAR_STATE.OPEN: { + renderTopBanner(); + + return; + } + default: { + return; + } + } + } + default: { + return; + } + } +}; + export function TopBanner() { document.addEventListener("DOMContentLoaded", function () { + loadBannerStateFromLocalStorage(); + document .querySelector(".close-top-banner") .addEventListener("click", () => { - document.querySelector(".top-banner-bg").classList.add("closed"); - document.querySelector(".top-banner").classList.add("closed"); - document.querySelector(".top-banner-spacer").classList.add("hide"); - document.querySelector(".navbar").classList.remove("top-banner-open"); + closeMessageBar(); }); }); } diff --git a/stylus/website/index.styl b/stylus/website/index.styl index 8883933a..cbe3099b 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -126,7 +126,7 @@ body { &.top-banner-open { margin-top: 5px; - transition: all 0.2s linear; + transition: margin-top 0.4s linear; +breakpoint('tablet') { margin-top: 48px; @@ -141,11 +141,21 @@ body { border-bottom: 1px solid rgba(#4A4A4A, 0.6); clearfix(); margin: 0 -15px; + padding-top: 0; + transition: padding-top 0.4s linear; +breakpoint('tablet') { border: none; margin: 0; } + + &.top-banner-open { + padding-top: 50px; + + +breakpoint('tablet') { + padding-top: 0; + } + } } .menu-trigger { @@ -299,6 +309,7 @@ body { position: absolute; right: 15px; top: 28px; + height: 32px; } +breakpoint('desktop') { @@ -442,6 +453,19 @@ body { } } +.content { + +breakpoint('tablet') { + padding-top: 0; + transition: padding-top 0.4s linear; + } + + &.top-banner-open { + +breakpoint('tablet') { + padding-top: 50px; + } + } +} + // banner-jwt .banner-jwt { background: black; @@ -503,10 +527,12 @@ body { img { width: 70px; + height: 70px; display: block; +breakpoint('desktop') { width: 80px; + height: 80px; } } } @@ -1848,13 +1874,14 @@ footer { width: 100%; height: 48px; z-index: 100; + transition: height 0.4s linear; &.closed { visibility: hidden; height: 0; opacity: 0; padding: 0; - transition: all 0.1s linear; + transition: height 0.4s linear; } } @@ -1875,13 +1902,14 @@ footer { left: 0; right: 0; overflow: hidden; + transition: all 0.4s linear; &.closed { visibility: hidden; height: 0; opacity: 0; padding: 0; - transition: all 0.2s linear; + transition: all 0.4s linear; } .top-banner-container { @@ -1947,6 +1975,6 @@ footer { &.hide { height: 0; - transition: all 0.2s linear; + transition: all 0.4s linear; } } diff --git a/views/website/layout.pug b/views/website/layout.pug index 74f46239..d692a850 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -45,7 +45,8 @@ html(lang='en') include ./navigation.pug - block content + .content + block content footer .container diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 5a7625b7..fe93afb6 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -1,13 +1,11 @@ -.top-banner-bg -.top-banner +.top-banner-bg.closed +.top-banner.closed .top-banner-container - a(href="https://a0.to/jwt-io-feedback" target="_blank") Learn about the upcoming changes to jwt.io and share your feedback + a(href="https://pages.okta.com/2024-11-WBN-Best-of-Dev-Day_LP/" target="_blank") Missed DevDay24? Register for the Best of DevDay span(aria-hiden="true") → button.close-top-banner + -.top-banner-spacer - -nav.navbar.closed.top-banner-open +nav.navbar .container .top-mobile .menu-trigger From 6a9c56726bf9f5725ffa4d6bdb23dd1d65f4f004 Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Tue, 22 Oct 2024 16:11:18 -0500 Subject: [PATCH 447/456] update ttb background --- stylus/website/index.styl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stylus/website/index.styl b/stylus/website/index.styl index cbe3099b..fe593c89 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -1886,7 +1886,7 @@ footer { } .top-banner { - background: linear-gradient(90deg, #ff4f40 0%, #ff44dd 99.99%); + background: #242424; border-radius: 8px; max-width: 1216px; padding: 8px 16px; From f2eb7337ea723c0dd16cc6e2f7c51e3cdf841f0e Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Fri, 8 Nov 2024 10:13:16 -0500 Subject: [PATCH 448/456] feat: promote jwt.io feedback ttb --- src/website/top-banner.js | 2 +- views/website/navigation.pug | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/website/top-banner.js b/src/website/top-banner.js index 84fa6304..4afc4158 100644 --- a/src/website/top-banner.js +++ b/src/website/top-banner.js @@ -12,7 +12,7 @@ const messageBar = { status: MESSAGE_BAR_STATUS.ACTIVE, id: { key: "messageBar_id", - value: "BEST_OF_DEVDAY_2024", + value: "JWT_IO_FEEDBACK", }, state: { key: "messageBar_state", diff --git a/views/website/navigation.pug b/views/website/navigation.pug index fe93afb6..85f1aaf8 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -1,7 +1,7 @@ .top-banner-bg.closed .top-banner.closed .top-banner-container - a(href="https://pages.okta.com/2024-11-WBN-Best-of-Dev-Day_LP/" target="_blank") Missed DevDay24? Register for the Best of DevDay + a(href="https://a0.to/jwt-io-feedback" target="_blank") Learn about the upcoming changes to jwt.io and share your feedback span(aria-hiden="true") → button.close-top-banner + From 08a3deec3143c617689d31998e38730544f93f39 Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Thu, 19 Dec 2024 14:25:42 -0500 Subject: [PATCH 449/456] feat: update ttb copy --- src/website/top-banner.js | 2 +- stylus/website/index.styl | 2 +- views/website/navigation.pug | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/website/top-banner.js b/src/website/top-banner.js index 4afc4158..da4208ff 100644 --- a/src/website/top-banner.js +++ b/src/website/top-banner.js @@ -12,7 +12,7 @@ const messageBar = { status: MESSAGE_BAR_STATUS.ACTIVE, id: { key: "messageBar_id", - value: "JWT_IO_FEEDBACK", + value: "JWT_V2_FEEDBACK", }, state: { key: "messageBar_state", diff --git a/stylus/website/index.styl b/stylus/website/index.styl index fe593c89..cbe3099b 100644 --- a/stylus/website/index.styl +++ b/stylus/website/index.styl @@ -1886,7 +1886,7 @@ footer { } .top-banner { - background: #242424; + background: linear-gradient(90deg, #ff4f40 0%, #ff44dd 99.99%); border-radius: 8px; max-width: 1216px; padding: 8px 16px; diff --git a/views/website/navigation.pug b/views/website/navigation.pug index 85f1aaf8..dd10e956 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -1,7 +1,7 @@ .top-banner-bg.closed .top-banner.closed .top-banner-container - a(href="https://a0.to/jwt-io-feedback" target="_blank") Learn about the upcoming changes to jwt.io and share your feedback + a(href="https://a0.to/jwt-io-feedback" target="_blank") Get an exclusive look at jwt.io v2 and help us shape its final form with your feedback. span(aria-hiden="true") → button.close-top-banner + From 5d0061e32f7db93ebf6219796ddd1815209caf06 Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Thu, 19 Dec 2024 15:22:13 -0500 Subject: [PATCH 450/456] feat: add robots.txt file --- Gruntfile.js | 6 +++++- robots.txt | 4 ++++ 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 robots.txt diff --git a/Gruntfile.js b/Gruntfile.js index c6d22bae..15e564c6 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -48,6 +48,10 @@ module.exports = (grunt) => { src: ["sitemap.xml"], dest: "dist/website/", }, + { + src: ["robots.txt"], + dest: "dist/website/", + }, ], }, extension: { @@ -278,4 +282,4 @@ module.exports = (grunt) => { grunt.registerTask("test", ["unit-tests", "functional-tests"]); grunt.registerTask("default", ["build-dev", "connect:website", "watch"]); -}; \ No newline at end of file +}; diff --git a/robots.txt b/robots.txt new file mode 100644 index 00000000..0713d672 --- /dev/null +++ b/robots.txt @@ -0,0 +1,4 @@ +User-agent: * +Disallow: /beta/ +Allow: / +Sitemap: https://jwt.io/sitemap.xml From 17d2d4051705800f6d5012cf5371bf72414a0838 Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Thu, 16 Jan 2025 12:31:27 -0500 Subject: [PATCH 451/456] feat: localize jwt.io banner japanese --- server.js | 27 +++++++++++++++++++++++---- views/website/navigation.pug | 8 ++++++-- 2 files changed, 29 insertions(+), 6 deletions(-) diff --git a/server.js b/server.js index 8f4148fc..52fbdc3a 100644 --- a/server.js +++ b/server.js @@ -18,22 +18,41 @@ if (process.env.NODE_ENV === "production") { ); } +app.use((req, res, next) => { + const acceptLanguage = req.headers['accept-language']; + + if(acceptLanguage){ + const preferredLanguage = acceptLanguage.split(",")[0].split("-")[0]; + + req.preferredLanguage = preferredLanguage; + }else{ + req.preferredLanguage = 'en'; + } + + next(); +}) + app.use((req, res, next) => { res.locals.COOKIE_CONSENT_DOMAIN_ID = process.env.COOKIE_CONSENT_DOMAIN_ID; next(); }); app.use(express.static("dist/website")); app.get("/", function(req, res) { - res.render("index"); + res.render("index", { + preferredLanguage: req.preferredLanguage, + }); }); app.get("/introduction", function(req, res) { - res.render("introduction"); + res.render("introduction", { + preferredLanguage: req.preferredLanguage, + }); }); app.get("/libraries", function(req, res) { res.render("libraries", { - languages: languages + languages: languages, + preferredLanguage: req.preferredLanguage, }); }); @@ -44,4 +63,4 @@ app.get("/home", function(req, res) { app.listen(process.env.PORT || 3000, function() { console.log("Started."); -}); \ No newline at end of file +}); diff --git a/views/website/navigation.pug b/views/website/navigation.pug index dd10e956..d84a986e 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -1,8 +1,12 @@ .top-banner-bg.closed .top-banner.closed .top-banner-container - a(href="https://a0.to/jwt-io-feedback" target="_blank") Get an exclusive look at jwt.io v2 and help us shape its final form with your feedback. - span(aria-hiden="true") → + if preferredLanguage === 'ja' + a(href="https://a0.to/jwt-io-feedback-ja" target="_blank") jwt.io v2ベータバージョン: フィードバックをお寄せください。 + span(aria-hiden="true") → + else + a(href="https://a0.to/jwt-io-feedback" target="_blank") Get an exclusive look at jwt.io v2 and help us shape its final form with your feedback. + span(aria-hiden="true") → button.close-top-banner + nav.navbar From 6d2191c8b1e7f8b4de3325361affe3c7310fa40f Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Thu, 16 Jan 2025 14:18:33 -0500 Subject: [PATCH 452/456] refactor: use negotiator and intl-localematcher to get the preferred language --- package-lock.json | 54 ++++++++++++++++++++++++++++++++++++++--------- package.json | 4 +++- server.js | 19 ++++++++++------- 3 files changed, 58 insertions(+), 19 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3d2092ac..6f26525a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,6 +8,7 @@ "name": "jwt.io", "version": "3.3.0", "dependencies": { + "@formatjs/intl-localematcher": "^0.5.10", "@octokit/rest": "^18.0.12", "dotenv": "^8.2.0", "express": "^4.17.1", @@ -15,6 +16,7 @@ "jstransformer-markdown": "^1.2.1", "jstransformer-markdown-it": "^2.1.0", "lodash.debounce": "^4.0.8", + "negotiator": "^1.0.0", "pug": "^2.0.4", "querystring": "^0.2.0" }, @@ -72,6 +74,9 @@ "webpack": "^4.33.0", "webpack-merge": "^4.2.1", "xhr-mock": "^2.4.1" + }, + "engines": { + "node": "16" } }, "node_modules/@ampproject/remapping": { @@ -1860,6 +1865,14 @@ "integrity": "sha512-oyOjMhyKMLEjOOtvkwg0G4pAzLQ9WdbbeX7WdqKzvYXu+UFgD0Zo/Brq5Q49zNmnGPPzV5rmYvrr0jz1zWx8Iw==", "dev": true }, + "node_modules/@formatjs/intl-localematcher": { + "version": "0.5.10", + "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.5.10.tgz", + "integrity": "sha512-af3qATX+m4Rnd9+wHcjJ4w2ijq+rAVP3CCinJQvFv1kgSu1W6jypUmvleJxcewdxmutM8dmIRZFxO/IQBZmP2Q==", + "dependencies": { + "tslib": "2" + } + }, "node_modules/@jridgewell/gen-mapping": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", @@ -2297,6 +2310,14 @@ "node": ">= 0.6" } }, + "node_modules/accepts/node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, "node_modules/acorn": { "version": "4.0.13", "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", @@ -11822,9 +11843,9 @@ } }, "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz", + "integrity": "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==", "engines": { "node": ">= 0.6" } @@ -16863,8 +16884,7 @@ "node_modules/tslib": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", - "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==", - "dev": true + "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" }, "node_modules/tty-browserify": { "version": "0.0.0", @@ -19916,6 +19936,14 @@ } } }, + "@formatjs/intl-localematcher": { + "version": "0.5.10", + "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.5.10.tgz", + "integrity": "sha512-af3qATX+m4Rnd9+wHcjJ4w2ijq+rAVP3CCinJQvFv1kgSu1W6jypUmvleJxcewdxmutM8dmIRZFxO/IQBZmP2Q==", + "requires": { + "tslib": "2" + } + }, "@jridgewell/gen-mapping": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", @@ -20331,6 +20359,13 @@ "requires": { "mime-types": "~2.1.34", "negotiator": "0.6.3" + }, + "dependencies": { + "negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" + } } }, "acorn": { @@ -28207,9 +28242,9 @@ } }, "negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz", + "integrity": "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==" }, "neo-async": { "version": "2.6.2", @@ -32457,8 +32492,7 @@ "tslib": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", - "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==", - "dev": true + "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" }, "tty-browserify": { "version": "0.0.0", diff --git a/package.json b/package.json index fe769327..187c558b 100644 --- a/package.json +++ b/package.json @@ -6,6 +6,7 @@ "url": "https://github.com/jsonwebtoken/jsonwebtoken.github.io" }, "dependencies": { + "@formatjs/intl-localematcher": "^0.5.10", "@octokit/rest": "^18.0.12", "dotenv": "^8.2.0", "express": "^4.17.1", @@ -13,6 +14,7 @@ "jstransformer-markdown": "^1.2.1", "jstransformer-markdown-it": "^2.1.0", "lodash.debounce": "^4.0.8", + "negotiator": "^1.0.0", "pug": "^2.0.4", "querystring": "^0.2.0" }, @@ -83,4 +85,4 @@ "build:libraries": "node libraries.js" }, "heroku-run-build-script": true -} \ No newline at end of file +} diff --git a/server.js b/server.js index 52fbdc3a..8d4812eb 100644 --- a/server.js +++ b/server.js @@ -2,6 +2,8 @@ const express = require("express"); const enforce = require("express-sslify"); const languages = require("./libraries.json"); const dotenv = require("dotenv").config(); +const Negotiator = require("negotiator"); +const localeMatcher = require("@formatjs/intl-localematcher"); const app = express(); @@ -19,16 +21,17 @@ if (process.env.NODE_ENV === "production") { } app.use((req, res, next) => { - const acceptLanguage = req.headers['accept-language']; + const languagesFromRequestHeaders = new Negotiator(req).languages(); + const LANGUAGE_CODES = ["en", "ja"] + const DEFAULT_LANGUAGE_CODE = ["en"] - if(acceptLanguage){ - const preferredLanguage = acceptLanguage.split(",")[0].split("-")[0]; - - req.preferredLanguage = preferredLanguage; - }else{ - req.preferredLanguage = 'en'; - } + const languageFromRequestHeader = localeMatcher.match( + languagesFromRequestHeaders, + LANGUAGE_CODES, + DEFAULT_LANGUAGE_CODE, + ); + req.preferredLanguage = languageFromRequestHeader; next(); }) From 11ddb09d47b1edcfd649691249c39d04a7436de5 Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Fri, 31 Jan 2025 07:30:53 -0500 Subject: [PATCH 453/456] feat: update header and footer logo (#731) --- img/website/auth0_logo.svg | 29 +++++++++++++++++++++++++++++ img/website/auth0_logo_ft.svg | 17 ----------------- img/website/auth0_logo_header.svg | 17 ----------------- views/extension/index.pug | 2 +- views/website/counter.pug | 2 +- views/website/layout.pug | 2 +- views/website/md/introduction.md | 2 +- views/website/navigation.pug | 4 ++-- 8 files changed, 35 insertions(+), 40 deletions(-) create mode 100644 img/website/auth0_logo.svg delete mode 100644 img/website/auth0_logo_ft.svg delete mode 100644 img/website/auth0_logo_header.svg diff --git a/img/website/auth0_logo.svg b/img/website/auth0_logo.svg new file mode 100644 index 00000000..12a27bb8 --- /dev/null +++ b/img/website/auth0_logo.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + diff --git a/img/website/auth0_logo_ft.svg b/img/website/auth0_logo_ft.svg deleted file mode 100644 index 57c51da3..00000000 --- a/img/website/auth0_logo_ft.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/img/website/auth0_logo_header.svg b/img/website/auth0_logo_header.svg deleted file mode 100644 index c24832d1..00000000 --- a/img/website/auth0_logo_header.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/views/extension/index.pug b/views/extension/index.pug index ede24c46..71a2b7ed 100644 --- a/views/extension/index.pug +++ b/views/extension/index.pug @@ -38,7 +38,7 @@ block content .pull-left a(target="_blank" href="https://developer.auth0.com/") | Crafted by   - img(src="http://github.com/img/auth0_logo_ft.svg" alt='Crafted by Auth0 - JWT.io Token Based Authentication') + img(src="http://github.com/img/auth0_logo.svg" alt='Crafted by Auth0 - JWT.io Token Based Authentication') a  -  a.keep-deco(href='https://github.com/jsonwebtoken/jsonwebtoken.github.io/blob/master/LICENSE.txt', target="_blank") License diff --git a/views/website/counter.pug b/views/website/counter.pug index 95c4363d..a4a41daa 100644 --- a/views/website/counter.pug +++ b/views/website/counter.pug @@ -1,6 +1,6 @@ .tokens-created .container - img(src='http://github.com/img/auth0_logo_ft.svg' alt='Auth0 logo').logo + img(src='http://github.com/img/auth0_logo.svg' alt='Auth0 logo').logo p JWT.io is brought to you by a(href='https://auth0.com/signup/?utm_source=jwt.io&utm_medium=microsites&utm_campaign=devn_signup', target="_blank", rel="noreferrer noopener") Auth0 p Securely implement authentication with JWTs using Auth0 on any stack and any device in less than 10 minutes. diff --git a/views/website/layout.pug b/views/website/layout.pug index d692a850..b65068f5 100644 --- a/views/website/layout.pug +++ b/views/website/layout.pug @@ -64,7 +64,7 @@ html(lang='en') img.ccpa-toggle(src='https://cdn.auth0.com/website/footer/ccpa.svg' alt='Privacy choices') a(href='https://developer.auth0.com/', target="_blank") | Crafted by - img(src='http://github.com/img/auth0_logo_ft.svg' alt='Crafted by Auth0 - JWT.io Token Based Authentication').logo + img(src='http://github.com/img/auth0_logo.svg' alt='Crafted by Auth0 - JWT.io Token Based Authentication').logo #ccpa-modal button#close-ccpa x h3 Your Privacy Choices diff --git a/views/website/md/introduction.md b/views/website/md/introduction.md index ff39b890..c4a2abc7 100755 --- a/views/website/md/introduction.md +++ b/views/website/md/introduction.md @@ -134,4 +134,4 @@ Regarding usage, JWT is used at Internet scale. This highlights the ease of clie ![Comparing the length of an encoded JWT and an encoded SAML](https://cdn.auth0.com/content/jwt/comparing-jwt-vs-saml2.png) _Comparison of the length of an encoded JWT and an encoded SAML_ -If you want to read more about JSON Web Tokens and even start using them to perform authentication in your own applications, browse to the [JSON Web Token landing page](http://auth0.com/learn/json-web-tokens) at Auth0 by Okta. +If you want to read more about JSON Web Tokens and even start using them to perform authentication in your own applications, browse to the [JSON Web Token landing page](http://auth0.com/learn/json-web-tokens) at Auth0. diff --git a/views/website/navigation.pug b/views/website/navigation.pug index d84a986e..beda0aa9 100644 --- a/views/website/navigation.pug +++ b/views/website/navigation.pug @@ -28,9 +28,9 @@ nav.navbar .social a.a0(href='https://developer.auth0.com/', target='_blank') span.by-text Crafted by - img(src='http://github.com/img/auth0_logo_header.svg', alt='Crafted by Auth0 - JWT.io Token Based Authentication') + img(src='http://github.com/img/auth0_logo.svg', alt='Crafted by Auth0 - JWT.io Token Based Authentication') span.crafted-by__question-mark ? a.supported(href='https://auth0.com/', target="_blank") | Crafted by - img(src='http://github.com/img/auth0_logo_ft.svg', alt='Crafted by Auth0 - JWT.io Token Based Authentication').logo-mobile + img(src='http://github.com/img/auth0_logo.svg', alt='Crafted by Auth0 - JWT.io Token Based Authentication').logo-mobile From faf1867d77bbc56186b1ae841e0025f3f44cdc8d Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Wed, 5 Feb 2025 16:58:03 -0500 Subject: [PATCH 454/456] feat: add event dataLayer --- src/cookie-consent.js | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/cookie-consent.js b/src/cookie-consent.js index 32fdb795..401b19f4 100644 --- a/src/cookie-consent.js +++ b/src/cookie-consent.js @@ -11,6 +11,23 @@ function addScripts(lvl) { // Necessary if (lvl.includes(COOKIE_CONSENT_NECESSARY)) { + if (!window.digitalData) { + window.digitalData = {}; + } + + if (!window.dataLayer) { + window.dataLayer = []; + } + + const dataLayerInfo = { + event: "ab-viewed", + experiment: "OKTA_NEW_HOMEPAGE_v1", + variation: "control" + }; + + //add the data to each data layer object + window.digitalData.abInfo = dataLayerInfo; + window.dataLayer.push(dataLayerInfo); // GTM (function(w, d, s, l, i) { w[l] = w[l] || []; @@ -62,4 +79,4 @@ const poll = window.setInterval(() => { } else { tries++; } -}, POLL_INTERVAL); \ No newline at end of file +}, POLL_INTERVAL); From 3c66281f1269ceb75309f2f99a67c332c2aa424a Mon Sep 17 00:00:00 2001 From: Byron Motoche <116190812+byron-okta@users.noreply.github.com> Date: Wed, 5 Feb 2025 17:19:12 -0500 Subject: [PATCH 455/456] refactor: follow conventions dataLayer data --- src/cookie-consent.js | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/cookie-consent.js b/src/cookie-consent.js index 401b19f4..bb7e40c9 100644 --- a/src/cookie-consent.js +++ b/src/cookie-consent.js @@ -20,12 +20,11 @@ function addScripts(lvl) { } const dataLayerInfo = { - event: "ab-viewed", - experiment: "OKTA_NEW_HOMEPAGE_v1", - variation: "control" + 'event': "ab-viewed", + 'experiment': "JWT_NEW_DESIGN", + 'variation': "control" }; - //add the data to each data layer object window.digitalData.abInfo = dataLayerInfo; window.dataLayer.push(dataLayerInfo); // GTM From 5b5dcb32ecbc126d300069d779744d1e81e6c238 Mon Sep 17 00:00:00 2001 From: christiansamaniego-okta <199278128+christiansamaniego-okta@users.noreply.github.com> Date: Fri, 21 Feb 2025 18:20:35 -0500 Subject: [PATCH 456/456] Update README.md (#741) * Update README.md This change adds a section on the README.md file including the steps to run the project locally * Update README.md Co-authored-by: christiansamaniego-okta <199278128+christiansamaniego-okta@users.noreply.github.com> --------- Co-authored-by: Byron Motoche <116190812+byron-okta@users.noreply.github.com> --- README.md | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/README.md b/README.md index 8e09a5a2..c79ca634 100644 --- a/README.md +++ b/README.md @@ -115,4 +115,36 @@ To run tests, execute: Look at the end of the [Gruntfile](/Gruntfile.js) for other common tasks. +### How to run project locally + +- Make sure that you run these commands using Node `v16.x.x`. + +- Clone the project: + +```bash +git clone org-6887375@github.com:jsonwebtoken/jsonwebtoken.github.io.git +``` +- Make the project directory your current directory: + +```bash +cd jsonwebtoken.github.io +``` + +- Install required dependencies: + +```bash +npm install +``` +- Build the project: + +```bash +npm run build +``` +- Run the development server: + +```bash +npm run start +``` +- Visit: [http://localhost:3000](http://localhost:3000) + ### Happy hacking!