From c6f6fe8ec15226b4ee7b7e366a1d546c40e59beb Mon Sep 17 00:00:00 2001 | |
From: Sohom Datta <[email protected]> | |
Date: Sun, 24 May 2020 00:46:56 0530 | |
Subject: [PATCH] [WIP] Added new API endpoint, laid groundwork for pagelist | |
editing widget | |
Added a new API endpoint that takes in parameters and a title and | |
returns the parsed html for a pagelist. Also, added rudimentary selenium | |
testing as well as a feature flag to load | |
ext.proofreadpage.index.pagelist/init.js while editing Index: pages. | |
Configured extension.json and package.json to make way for the same. | |
Bug: T253458 | |
Change-Id: Ic4ce664c50691ffb8841c7a7ffbf7a8ac945350c | |
--- | |
.gitignore | 1 | |
extension.json | 15 | |
i18n/api/en.json | 10 - | |
i18n/api/qqq.json | 8 - | |
includes/Api/ApiParsePagelist.php | 83 | |
includes/Index/EditIndexPage.php | 4 | |
modules/index.pagelist/init.js | 3 | |
package-lock.json | 1438 | |
package.json | 10 - | |
tests/selenium/.eslintrc.json | 18 | |
tests/selenium/README.md | 33 | |
tests/selenium/pageobjects/index.page.js | 15 | |
tests/selenium/pageobjects/version.page.js | 13 | |
tests/selenium/specs/index.js | 15 | |
tests/selenium/specs/version.js | 16 | |
tests/selenium/wdio.conf.js | 88 | |
16 files changed, 1765 insertions( ), 5 deletions(-) | |
create mode 100644 includes/Api/ApiParsePagelist.php | |
create mode 100644 modules/index.pagelist/init.js | |
create mode 100644 tests/selenium/.eslintrc.json | |
create mode 100644 tests/selenium/README.md | |
create mode 100644 tests/selenium/pageobjects/index.page.js | |
create mode 100644 tests/selenium/pageobjects/version.page.js | |
create mode 100644 tests/selenium/specs/index.js | |
create mode 100644 tests/selenium/specs/version.js | |
create mode 100644 tests/selenium/wdio.conf.js | |
diff --git a/.gitignore b/.gitignore | |
index 0302781..6a9a866 100644 | |
--- a/.gitignore | |
b/.gitignore | |
@@ -6,3 6,4 @@ | |
/vendor/ | |
/composer.lock | |
.eslintcache | |
/tests/selenium/log/* | |
diff --git a/extension.json b/extension.json | |
index ce1f786..37a4da3 100644 | |
--- a/extension.json | |
b/extension.json | |
@@ -29,6 29,9 @@ | |
"IndexPages": "\\ProofreadPage\\Special\\SpecialProofreadPages", | |
"PagesWithoutScans": "\\ProofreadPage\\Special\\SpecialPagesWithoutScans" | |
}, | |
"APIModules": { | |
"parsepagelist": "\\ProofreadPage\\Api\\ApiParsePagelist" | |
}, | |
"APIMetaModules": { | |
"proofreadinfo": "\\ProofreadPage\\Api\\ApiQueryProofreadInfo" | |
}, | |
@@ -139,6 142,14 @@ | |
"mediawiki.widgets.CategoryMultiselectWidget" | |
] | |
}, | |
"ext.proofreadpage.index.pagelist": { | |
"packageFiles": [ | |
"index.pagelist/init.js" | |
], | |
"dependencies": [ | |
"oojs-ui-core" | |
] | |
}, | |
"ext.proofreadpage.special.indexpages": { | |
"styles": "special/indexpages/ext.proofreadpage.special.indexpages.css", | |
"dependencies": [ | |
@@ -301,6 312,10 @@ | |
"ProofreadPagePageSeparatorPlaceholder": { | |
"value": "__PAGESEPARATOR__", | |
"description": "Placeholder to mark the position of the page separator" | |
}, | |
"ProofreadPageEnableJSPagelistEditing": { | |
"value": false, | |
"description": "Enables JS based graphical pagelist editing on Index: pages" | |
} | |
}, | |
"callback": "ProofreadPage\\ProofreadPage::onRegistration", | |
diff --git a/i18n/api/en.json b/i18n/api/en.json | |
index 843c0cf..8319e02 100644 | |
--- a/i18n/api/en.json | |
b/i18n/api/en.json | |
@@ -9,5 9,11 @@ | |
"apihelp-query proofreadinfo-summary": "Return information about configuration of ProofreadPage extension.", | |
"apihelp-query proofreadinfo-param-prop": "Which proofread properties to get:\n;namespaces:Information about \"{{ns:Page}}\" and \"{{ns:Index}}\" namespaces.\n;qualitylevels:List of proofread quality levels.", | |
"apihelp-query proofreadinfo-example-1": "Return default information", | |
- "apihelp-query proofreadinfo-example-3": "Return namespace information" | |
-} | |
\ No newline at end of file | |
"apihelp-query proofreadinfo-example-3": "Return namespace information", | |
"apihelp-parsepagelist-summary": "Returns the parsed html representation of a pagelist tag with the supplied arguments on the Index: page", | |
"apihelp-parsepagelist-param-title": "Title of Index page on which the pagelist tag is to be parsed. The Index: part of the page title should be omitted", | |
"apierror-parsepagelist-notvalidtitle": "The title supplied cannot exist", | |
"apihelp-parsepagelist-param-arguments": "Arguments to be passed to the pagelist tag", | |
"apihelp-parsepagelist-example-1": "Returns the parses html for an empty pagelist tag on Index:Foo.djvu ", | |
"apihelp-parsepagelist-example-2": "Returns the parses html for an pagelist with the parameters 2=1 on Index:Foo.djvu " | |
} | |
diff --git a/i18n/api/qqq.json b/i18n/api/qqq.json | |
index 2191e23..a696e62 100644 | |
--- a/i18n/api/qqq.json | |
b/i18n/api/qqq.json | |
@@ -36,5 36,11 @@ | |
"apihelp-query proofreadinfo-summary": "{{doc-apihelp-summary|query proofreadinfo}}", | |
"apihelp-query proofreadinfo-param-prop": "Use \"{{ns:Page}}\" and \"{{ns:Index}}\" with quotes instead of Page and Index namespaces.\n\n{{doc-apihelp-param|query proofreadinfo|prop}}", | |
"apihelp-query proofreadinfo-example-1": "{{doc-apihelp-example|query proofreadinfo}}", | |
- "apihelp-query proofreadinfo-example-3": "{{doc-apihelp-example|query proofreadinfo}}" | |
"apihelp-query proofreadinfo-example-3": "{{doc-apihelp-example|query proofreadinfo}}", | |
"apihelp-parsepagelist-summary": "{{doc-apihelp-summary|parsepagelist}}", | |
"apihelp-parsepagelist-param-title": "{{doc-apihelp-param|parsepagelist|title}}", | |
"apierror-parsepagelist-notvalidtitle": "{{doc-apihelp-error|parsepagelist|notvalidtitle}}", | |
"apihelp-parsepagelist-param-arguments": "{{doc-apihelp-param|parsepagelist|arguments}}", | |
"apihelp-parsepagelist-example-1": "{{doc-apihelp-example|parsepagelist}}", | |
"apihelp-parsepagelist-example-2": "{{doc-apihelp-example|parsepagelist}}" | |
} | |
diff --git a/includes/Api/ApiParsePagelist.php b/includes/Api/ApiParsePagelist.php | |
new file mode 100644 | |
index 0000000..080d5be | |
--- /dev/null | |
b/includes/Api/ApiParsePagelist.php | |
@@ -0,0 1,83 @@ | |
<?php | |
namespace ProofreadPage\Api; | |
use ApiBase; | |
use MediaWiki\MediaWikiServices; | |
use Parser; | |
use ProofreadPage\Context; | |
use ProofreadPage\Parser\PagelistTagParser; | |
use Sanitizer; | |
use Title; | |
use WikiPage; | |
/** | |
* @license GPL-2.0-or-later | |
* | |
* A parser for Pagelist arguments. | |
*/ | |
class ApiParsePagelist extends ApiBase { | |
/** | |
* @inheritDoc | |
*/ | |
public function execute() { | |
$parameters = $this->extractRequestParams(); | |
$titleparameter = $parameters[ 'title' ]; | |
$arguments = $parameters[ 'arguments' ] ? $parameters[ 'arguments' ] : ''; | |
$title = Title::makeTitleSafe( 252, $titleparameter ); | |
if ( !$title || !$title->canExist() ) { | |
$this->dieWithError( 'apierror-parsepagelist-notvalidtitle' ); | |
} | |
$this->checkTitleUserPermissions( $title, 'view' ); | |
$context = Context::getDefaultContext( true ); | |
$parser = $this->createParser( $title ); | |
$pagelistTagParser = new PagelistTagParser( $parser, $context ); | |
$output = $pagelistTagParser->render( Sanitizer::decodeTagAttributes( $arguments ) ); | |
$parser->replaceLinkHolders( $output ); | |
$this->getResult()->addValue( null, $this->getModuleName(), $output ); | |
} | |
/** | |
* @param Title $title | |
* Creates an instance of the Parser for the given title | |
* @return Parser | |
*/ | |
public function createParser( $title ) { | |
$page = WikiPage::factory( $title ); | |
$parser = MediaWikiServices::getInstance()->getParser(); | |
$popts = $page->makeParserOptions( $this->getContext() ); | |
$popts->setIsPreview( true ); | |
$parser->startExternalParse( $title, $popts, Parser::OT_PREPROCESS ); | |
return $parser; | |
} | |
/** | |
* Returns list of allowed parameters | |
* @see ApiBase::getAllowedParams() | |
* @return array | |
*/ | |
public function getAllowedParams() { | |
return [ | |
'title' => [ | |
ApiBase::PARAM_REQUIRED => true, | |
ApiBase::PARAM_TYPE => 'text' | |
], | |
'arguments' => [ | |
ApiBase::PARAM_TYPE => 'text' | |
], | |
]; | |
} | |
/** | |
* @inheritDoc | |
*/ | |
protected function getExamplesMessages() { | |
return [ | |
'&action=parsepagelist?title=' | |
=> 'apihelp-parsepagelist-example-1', | |
'&action=parsepagelist?title=?arguments=' | |
=> 'apihelp-parsepagelist-example-2', | |
]; | |
} | |
} | |
diff --git a/includes/Index/EditIndexPage.php b/includes/Index/EditIndexPage.php | |
index 8a3da66..7e9a1fe 100644 | |
--- a/includes/Index/EditIndexPage.php | |
b/includes/Index/EditIndexPage.php | |
@@ -55,6 55,7 @@ class EditIndexPage extends EditPage { | |
protected function showContentForm() { | |
$pageLang = $this->getTitle()->getPageLanguage(); | |
$out = $this->context->getOutput(); | |
$globalConfig = $out->getConfig(); | |
$out->enableOOUI(); | |
$inputOptions = [ 'lang' => $pageLang->getCode(), 'dir' => $pageLang->getDir() ]; | |
if ( wfReadOnly() ) { | |
@@ -86,6 87,9 @@ class EditIndexPage extends EditPage { | |
] ) ); | |
$out->addModules( 'ext.proofreadpage.index' ); | |
if ( $globalConfig->get( 'ProofreadPageEnableJSPagelistEditing' ) ) { | |
$out->addModules( 'ext.proofreadpage.index.pagelist' ); | |
} | |
} | |
/** | |
diff --git a/modules/index.pagelist/init.js b/modules/index.pagelist/init.js | |
new file mode 100644 | |
index 0000000..31beebc | |
--- /dev/null | |
b/modules/index.pagelist/init.js | |
@@ -0,0 1,3 @@ | |
( function () { | |
mw.notify( 'Index pagelist editing widget should load here' ); | |
}() ); | |
diff --git a/package-lock.json b/package-lock.json | |
index f0651ba..e5726ea 100644 | |
--- a/package-lock.json | |
b/package-lock.json | |
@@ -367,6 367,97 @@ | |
"color-convert": "^1.9.0" | |
} | |
}, | |
"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" | |
}, | |
"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" | |
} | |
}, | |
"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" | |
} | |
}, | |
"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" | |
} | |
} | |
} | |
}, | |
"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" | |
}, | |
"dependencies": { | |
"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" | |
} | |
}, | |
"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" | |
} | |
} | |
} | |
}, | |
"argparse": { | |
"version": "1.0.10", | |
"resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", | |
@@ -394,6 485,21 @@ | |
"integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", | |
"dev": true | |
}, | |
"asn1": { | |
"version": "0.2.4", | |
"resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", | |
"integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", | |
"dev": true, | |
"requires": { | |
"safer-buffer": "~2.1.0" | |
} | |
}, | |
"assert-plus": { | |
"version": "1.0.0", | |
"resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", | |
"integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", | |
"dev": true | |
}, | |
"astral-regex": { | |
"version": "1.0.0", | |
"resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", | |
@@ -406,6 512,18 @@ | |
"integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", | |
"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 | |
}, | |
"autoprefixer": { | |
"version": "9.7.6", | |
"resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.7.6.tgz", | |
@@ -421,6 539,36 @@ | |
"postcss-value-parser": "^4.0.3" | |
} | |
}, | |
"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-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 | |
} | |
} | |
}, | |
"bail": { | |
"version": "1.0.5", | |
"resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", | |
@@ -433,6 581,63 @@ | |
"integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", | |
"dev": true | |
}, | |
"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 | |
}, | |
"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" | |
} | |
}, | |
"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" | |
}, | |
"dependencies": { | |
"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" | |
} | |
}, | |
"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" | |
} | |
} | |
} | |
}, | |
"bluebird": { | |
"version": "3.7.2", | |
"resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", | |
"integrity": "sha512-XpNj6GDQzdfW r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV azxAm8jdWZN06QTQk 2N2XB9jRDkvbmQmcRtg==", | |
"dev": true | |
}, | |
"brace-expansion": { | |
"version": "1.1.11", | |
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", | |
@@ -452,6 657,12 @@ | |
"fill-range": "^7.0.1" | |
} | |
}, | |
"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 | |
}, | |
"browserslist": { | |
"version": "4.12.0", | |
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.12.0.tgz", | |
@@ -464,6 675,44 @@ | |
"pkg-up": "^2.0.0" | |
} | |
}, | |
"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-fill": { | |
"version": "1.0.0", | |
"resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", | |
"integrity": "sha1- PeLdniYiO858gXNY39o5wISKyw=", | |
"dev": true | |
}, | |
"callsites": { | |
"version": "3.1.0", | |
"resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", | |
@@ -492,6 741,12 @@ | |
"integrity": "sha512-Y8o2Iz1KPcD6FjySbk1sPpvJqchgxk/iow0DABpGyzA1UeQAuxh63Xh0Enj5/BrsYbXtCN32JmR4ZxQTCQ6E6A==", | |
"dev": true | |
}, | |
"caseless": { | |
"version": "0.12.0", | |
"resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", | |
"integrity": "sha1-G2gcIf EAzyCZUMJBolCDRhxUdw=", | |
"dev": true | |
}, | |
"ccount": { | |
"version": "1.0.5", | |
"resolved": "https://registry.npmjs.org/ccount/-/ccount-1.0.5.tgz", | |
@@ -596,6 851,59 @@ | |
"integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", | |
"dev": true | |
}, | |
"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.15.1", | |
"resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz", | |
"integrity": "sha512-VlfT9F3V0v jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq MjcXnhYq2icNOizHr1kK 5TI6H0Hy0ag==", | |
"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" | |
}, | |
"dependencies": { | |
"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" | |
} | |
}, | |
"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" | |
} | |
} | |
} | |
}, | |
"concat-map": { | |
"version": "0.0.1", | |
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", | |
@@ -611,6 919,18 @@ | |
"safe-buffer": "~5.1.1" | |
} | |
}, | |
"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-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 | |
}, | |
"cosmiconfig": { | |
"version": "6.0.0", | |
"resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", | |
@@ -644,6 964,51 @@ | |
} | |
} | |
}, | |
"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" | |
}, | |
"dependencies": { | |
"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" | |
} | |
}, | |
"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" | |
} | |
} | |
} | |
}, | |
"cross-spawn": { | |
"version": "6.0.5", | |
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", | |
@@ -665,6 1030,41 @@ | |
} | |
} | |
}, | |
"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": "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" | |
} | |
}, | |
"css-value": { | |
"version": "0.0.1", | |
"resolved": "https://registry.npmjs.org/css-value/-/css-value-0.0.1.tgz", | |
"integrity": "sha1-Xv1sLupeof1rasV wEJ7GEUkJOo=", | |
"dev": true | |
}, | |
"cssesc": { | |
"version": "3.0.0", | |
"resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", | |
@@ -680,6 1080,15 @@ | |
"array-find-index": "^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" | |
} | |
}, | |
"dateformat": { | |
"version": "1.0.12", | |
"resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz", | |
@@ -715,12 1124,51 @@ | |
"map-obj": "^1.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=", | |
"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 | |
}, | |
"deepmerge": { | |
"version": "2.0.1", | |
"resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-2.0.1.tgz", | |
"integrity": "sha512-VIPwiMJqJ13ZQfaCsIFnp5Me9tnjURiaIFxfz7EH0Ci0dTSQpZtSLrqOicXqEd/z2r z Klk9GzmnRsgpgbOsQ==", | |
"dev": true | |
}, | |
"define-properties": { | |
"version": "1.1.3", | |
"resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", | |
"integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V Zuy BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8 3SKlXQ==", | |
"dev": true, | |
"requires": { | |
"object-keys": "^1.0.12" | |
} | |
}, | |
"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 | |
}, | |
"detect-libc": { | |
"version": "1.0.3", | |
"resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", | |
"integrity": "sha1- hN8S9aY7fVc1c0CrFWfkaTEups=", | |
"dev": true | |
}, | |
"diff": { | |
"version": "3.5.0", | |
"resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", | |
"integrity": "sha512-A46qtFgd g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", | |
"dev": true | |
}, | |
"dir-glob": { | |
"version": "3.0.1", | |
"resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", | |
@@ -796,6 1244,22 @@ | |
"domelementtype": "1" | |
} | |
}, | |
"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" | |
} | |
}, | |
"ejs": { | |
"version": "2.5.9", | |
"resolved": "https://registry.npmjs.org/ejs/-/ejs-2.5.9.tgz", | |
"integrity": "sha512-GJCAeDBKfREgkBtgrYSf9hQy9kTb3helv0zGdzqhM7iAkW8FA/ZF97VQDbwFiwIT8MQLLOe5VlPZOEvZAqtUAQ==", | |
"dev": true | |
}, | |
"electron-to-chromium": { | |
"version": "1.3.414", | |
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.414.tgz", | |
@@ -808,6 1272,15 @@ | |
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", | |
"dev": true | |
}, | |
"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" | |
} | |
}, | |
"entities": { | |
"version": "1.1.2", | |
"resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", | |
@@ -1076,6 1549,12 @@ | |
"tmp": "^0.0.33" | |
} | |
}, | |
"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", | |
@@ -1117,6 1596,15 @@ | |
"reusify": "^1.0.4" | |
} | |
}, | |
"fibers": { | |
"version": "3.1.1", | |
"resolved": "https://registry.npmjs.org/fibers/-/fibers-3.1.1.tgz", | |
"integrity": "sha512-dl3Ukt08rHVQfY8xGD0ODwyjwrRALtaghuqGH2jByYX1wpY nAnRQjJ6Dbqq0DnVgNVQ9yibObzbF4IlPyiwPw==", | |
"dev": true, | |
"requires": { | |
"detect-libc": "^1.0.3" | |
} | |
}, | |
"figures": { | |
"version": "3.1.0", | |
"resolved": "https://registry.npmjs.org/figures/-/figures-3.1.0.tgz", | |
@@ -1195,18 1683,56 @@ | |
"integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K 0GhF3NBgmJCc3ma WOgX8Jg==", | |
"dev": true | |
}, | |
"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" | |
} | |
}, | |
"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.realpath": { | |
"version": "1.0.0", | |
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", | |
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", | |
"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 | |
}, | |
"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 | |
}, | |
"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" | |
} | |
}, | |
"gensync": { | |
"version": "1.0.0-beta.1", | |
"resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", | |
@@ -1225,6 1751,15 @@ | |
"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" | |
} | |
}, | |
"glob": { | |
"version": "7.1.6", | |
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", | |
@@ -1305,6 1840,17 @@ | |
"integrity": "sha1-L0SUrIkZ43Z8XLtpHp9GMyQoXUM=", | |
"dev": true | |
}, | |
"globule": { | |
"version": "1.3.1", | |
"resolved": "https://registry.npmjs.org/globule/-/globule-1.3.1.tgz", | |
"integrity": "sha512-OVyWOHgw29yosRHCHo7NncwR1hW5ew0W/UrvtwvjefVJeQ26q4/8r8FmPsSF1hJ93IgWkyv16pCTz6WblMzm/g==", | |
"dev": true, | |
"requires": { | |
"glob": "~7.1.1", | |
"lodash": "~4.17.12", | |
"minimatch": "~3.0.2" | |
} | |
}, | |
"gonzales-pe": { | |
"version": "4.3.0", | |
"resolved": "https://registry.npmjs.org/gonzales-pe/-/gonzales-pe-4.3.0.tgz", | |
@@ -1320,6 1866,18 @@ | |
"integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht sHuGYj8PHs7M/5Z rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", | |
"dev": true | |
}, | |
"grapheme-splitter": { | |
"version": "1.0.4", | |
"resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", | |
"integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/ 5vpOqV4YQ==", | |
"dev": true | |
}, | |
"growl": { | |
"version": "1.10.5", | |
"resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", | |
"integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7 YGWqUjLp5oSA==", | |
"dev": true | |
}, | |
"grunt": { | |
"version": "1.1.0", | |
"resolved": "https://registry.npmjs.org/grunt/-/grunt-1.1.0.tgz", | |
@@ -1505,18 2063,63 @@ | |
} | |
} | |
}, | |
"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.3", | |
"resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", | |
"integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS 6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", | |
"dev": true, | |
"requires": { | |
"ajv": "^6.5.5", | |
"har-schema": "^2.0.0" | |
} | |
}, | |
"hard-rejection": { | |
"version": "2.1.0", | |
"resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", | |
"integrity": "sha512-VIZB ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", | |
"dev": true | |
}, | |
"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" | |
}, | |
"dependencies": { | |
"ansi-regex": { | |
"version": "2.1.1", | |
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", | |
"integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", | |
"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 | |
}, | |
"he": { | |
"version": "1.1.1", | |
"resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", | |
"integrity": "sha1-k0EP0hsAlzUVH4howvJx80J I/0=", | |
"dev": true | |
}, | |
"hooker": { | |
"version": "0.2.3", | |
"resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz", | |
@@ -1549,6 2152,23 @@ | |
"readable-stream": "^3.1.1" | |
} | |
}, | |
"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" | |
} | |
}, | |
"humanize-duration": { | |
"version": "3.15.3", | |
"resolved": "https://registry.npmjs.org/humanize-duration/-/humanize-duration-3.15.3.tgz", | |
"integrity": "sha512-BMz6w8p3NVa6QP9wDtqUkXfwgBqDaZ5z/np0EYdoWrLqL849Onp6JWMXMhbHtuvO9jUThLN5H1ThRQ8dUWnYkA==", | |
"dev": true | |
}, | |
"iconv-lite": { | |
"version": "0.4.24", | |
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", | |
@@ -1558,6 2178,12 @@ | |
"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 | |
}, | |
"ignore": { | |
"version": "4.0.6", | |
"resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", | |
@@ -1765,12 2391,24 @@ | |
"integrity": "sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==", | |
"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 | |
}, | |
"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 | |
}, | |
"js-tokens": { | |
"version": "4.0.0", | |
"resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", | |
@@ -1787,6 2425,12 @@ | |
"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", | |
@@ -1799,6 2443,12 @@ | |
"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", | |
@@ -1811,6 2461,12 @@ | |
"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", | |
@@ -1826,6 2482,18 @@ | |
"integrity": "sha512-o6/yDBYccGvTz1 QFevz6l6OBZ2 fMVu2JZ9CIhzsYRX4mjaK5IyX9eldUdCmga16zlgQxyrj5pt9kzuj2C02w==", | |
"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" | |
} | |
}, | |
"kind-of": { | |
"version": "6.0.3", | |
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", | |
@@ -1838,6 2506,41 @@ | |
"integrity": "sha512-69AgJ1rQa7VvUsd2kpvVq VeObDuo3zrj0CzM5Slmf6yduQFAI2kXPDQJR2IE/u6MSAUOJrwSzjg5vlz8qcMiw==", | |
"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" | |
}, | |
"dependencies": { | |
"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" | |
} | |
}, | |
"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" | |
} | |
} | |
} | |
}, | |
"leven": { | |
"version": "3.1.0", | |
"resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", | |
@@ -2000,6 2703,21 @@ | |
"picomatch": "^2.0.5" | |
} | |
}, | |
"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==", | |
"dev": true | |
}, | |
"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==", | |
"dev": true, | |
"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", | |
@@ -2054,6 2772,80 @@ | |
"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": { | |
"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" | |
} | |
}, | |
"ms": { | |
"version": "2.0.0", | |
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", | |
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", | |
"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" | |
} | |
} | |
} | |
}, | |
"ms": { | |
"version": "2.1.2", | |
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", | |
@@ -2066,6 2858,17 @@ | |
"integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", | |
"dev": true | |
}, | |
"mwbot": { | |
"version": "1.0.10", | |
"resolved": "https://registry.npmjs.org/mwbot/-/mwbot-1.0.10.tgz", | |
"integrity": "sha1-pEC9ZmOnYoq1t5lgnpjLL8ThM8k=", | |
"dev": true, | |
"requires": { | |
"bluebird": "^3.4.6", | |
"request": "^2.75.0", | |
"semlog": "^0.6.10" | |
} | |
}, | |
"natural-compare": { | |
"version": "1.4.0", | |
"resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", | |
@@ -2113,6 2916,15 @@ | |
} | |
} | |
}, | |
"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" | |
} | |
}, | |
"normalize-range": { | |
"version": "0.1.2", | |
"resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", | |
@@ -2125,18 2937,48 @@ | |
"integrity": "sha1-0LFF62kRicY6eNIB3E/bEpPvDAM=", | |
"dev": true | |
}, | |
"npm-install-package": { | |
"version": "2.1.0", | |
"resolved": "https://registry.npmjs.org/npm-install-package/-/npm-install-package-2.1.0.tgz", | |
"integrity": "sha1-1 /jz816sAYUuJbqUxGdyaslkSU=", | |
"dev": true | |
}, | |
"num2fraction": { | |
"version": "1.2.2", | |
"resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", | |
"integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", | |
"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-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.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" | |
} | |
}, | |
"once": { | |
"version": "1.4.0", | |
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", | |
@@ -2155,6 2997,24 @@ | |
"mimic-fn": "^2.1.0" | |
} | |
}, | |
"optimist": { | |
"version": "0.6.1", | |
"resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", | |
"integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", | |
"dev": true, | |
"requires": { | |
"minimist": "~0.0.1", | |
"wordwrap": "~0.0.2" | |
}, | |
"dependencies": { | |
"minimist": { | |
"version": "0.0.10", | |
"resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", | |
"integrity": "sha1-3j YVD2/lggr5IrRoMfNqDYwHc8=", | |
"dev": true | |
} | |
} | |
}, | |
"optionator": { | |
"version": "0.8.3", | |
"resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", | |
@@ -2269,6 3129,12 @@ | |
"pinkie-promise": "^2.0.0" | |
} | |
}, | |
"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", | |
@@ -2454,18 3320,58 @@ | |
"integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", | |
"dev": true | |
}, | |
"prettyjson": { | |
"version": "1.2.1", | |
"resolved": "https://registry.npmjs.org/prettyjson/-/prettyjson-1.2.1.tgz", | |
"integrity": "sha1-/P rQdGcq0365eV15kJGYZsS0ok=", | |
"dev": true, | |
"requires": { | |
"colors": "^1.1.2", | |
"minimist": "^1.2.0" | |
} | |
}, | |
"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 | |
}, | |
"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 | |
}, | |
"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 | |
}, | |
"q": { | |
"version": "1.5.1", | |
"resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", | |
"integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", | |
"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 | |
}, | |
"querystring": { | |
"version": "0.2.0", | |
"resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", | |
"integrity": "sha1-sgmEkgO7Jd CDadW50cAWHhSFiA=", | |
"dev": true | |
}, | |
"quick-lru": { | |
"version": "4.0.1", | |
"resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", | |
@@ -2583,6 3489,12 @@ | |
"xtend": "^4.0.1" | |
} | |
}, | |
"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-string": { | |
"version": "1.6.1", | |
"resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", | |
@@ -2604,6 3516,34 @@ | |
"integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=", | |
"dev": true | |
}, | |
"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" | |
} | |
}, | |
"resolve": { | |
"version": "1.14.2", | |
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.14.2.tgz", | |
@@ -2619,6 3559,12 @@ | |
"integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/ vgZqsCGJapvy8N3Q 4o7FwvquPJcnZ7RYy4g==", | |
"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": "3.1.0", | |
"resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", | |
@@ -2635,6 3581,12 @@ | |
"integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", | |
"dev": true | |
}, | |
"rgb2hex": { | |
"version": "0.1.10", | |
"resolved": "https://registry.npmjs.org/rgb2hex/-/rgb2hex-0.1.10.tgz", | |
"integrity": "sha512-vKz kzolWbL3rke/xeTE2 6vHmZnNxGyDnaVW4OckntAIcc7DcZzWkQSfxMDwqHS8vhgySnIFyBUH7lIk6PxvQ==", | |
"dev": true | |
}, | |
"rimraf": { | |
"version": "2.6.3", | |
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", | |
@@ -2659,6 3611,21 @@ | |
"integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==", | |
"dev": 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 | |
}, | |
"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": "6.5.4", | |
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", | |
@@ -2680,6 3647,58 @@ | |
"integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", | |
"dev": true | |
}, | |
"semlog": { | |
"version": "0.6.10", | |
"resolved": "https://registry.npmjs.org/semlog/-/semlog-0.6.10.tgz", | |
"integrity": "sha1-DyJa6o6zwvJM6TWNhnjQ9Bp/4Fs=", | |
"dev": true, | |
"requires": { | |
"chalk": "^1.1.3", | |
"prettyjson": "^1.1.3" | |
}, | |
"dependencies": { | |
"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": "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" | |
} | |
}, | |
"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" | |
} | |
}, | |
"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 | |
} | |
} | |
}, | |
"semver": { | |
"version": "6.3.0", | |
"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", | |
@@ -2738,6 3757,25 @@ | |
"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-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 | |
}, | |
"spdx-correct": { | |
"version": "3.1.0", | |
"resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", | |
@@ -2782,6 3820,23 @@ | |
"integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", | |
"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" | |
} | |
}, | |
"state-toggle": { | |
"version": "1.0.3", | |
"resolved": "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.3.tgz", | |
@@ -3257,6 4312,47 @@ | |
} | |
} | |
}, | |
"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" | |
}, | |
"dependencies": { | |
"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" | |
} | |
}, | |
"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" | |
} | |
} | |
} | |
}, | |
"text-table": { | |
"version": "0.2.0", | |
"resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", | |
@@ -3278,6 4374,12 @@ | |
"os-tmpdir": "~1.0.2" | |
} | |
}, | |
"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", | |
@@ -3293,6 4395,16 @@ | |
"is-number": "^7.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" | |
} | |
}, | |
"trim": { | |
"version": "0.0.1", | |
"resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", | |
@@ -3323,6 4435,21 @@ | |
"integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK jGCaMnVomla7gVlIcc3EvKPbTQ==", | |
"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" | |
} | |
}, | |
"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-check": { | |
"version": "0.3.2", | |
"resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", | |
@@ -3450,12 4577,42 @@ | |
"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 | |
} | |
} | |
}, | |
"util-deprecate": { | |
"version": "1.0.2", | |
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", | |
"integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", | |
"dev": true | |
}, | |
"uuid": { | |
"version": "3.4.0", | |
"resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", | |
"integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08 KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", | |
"dev": true | |
}, | |
"v8-compile-cache": { | |
"version": "2.1.0", | |
"resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz", | |
@@ -3472,6 4629,17 @@ | |
"spdx-expression-parse": "^3.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" | |
} | |
}, | |
"vfile": { | |
"version": "4.1.0", | |
"resolved": "https://registry.npmjs.org/vfile/-/vfile-4.1.0.tgz", | |
@@ -3552,6 4720,232 @@ | |
"lodash": "^4.17.15" | |
} | |
}, | |
"wdio-dot-reporter": { | |
"version": "0.0.10", | |
"resolved": "https://registry.npmjs.org/wdio-dot-reporter/-/wdio-dot-reporter-0.0.10.tgz", | |
"integrity": "sha512-A0TCk2JdZEn3M1DSG9YYbNRcGdx/YRw19lTiRpgwzH4qqWkO/oRDZRmi3Snn4L2j54KKTfPalBhlOtc8fojVgg==", | |
"dev": true | |
}, | |
"wdio-mediawiki": { | |
"version": "0.5.0", | |
"resolved": "https://registry.npmjs.org/wdio-mediawiki/-/wdio-mediawiki-0.5.0.tgz", | |
"integrity": "sha512-TolU/QSSxDFHVD2RUUgy0QsslNGXlAml9 RzcUUiSunqjzj5fr4GlWXjBH65VZMyp6cJL2WACQZmCvfsaN9IKg==", | |
"dev": true, | |
"requires": { | |
"mwbot": "1.0.10" | |
} | |
}, | |
"wdio-mocha-framework": { | |
"version": "0.6.4", | |
"resolved": "https://registry.npmjs.org/wdio-mocha-framework/-/wdio-mocha-framework-0.6.4.tgz", | |
"integrity": "sha512-GZsXwoW60/fkkfqZJR/ZAdiALaM hW BbnTT9x214qPR4Pe5XeyYxhJNEdyf0dNI9625cMdkyZYaWoFHN5zDcA==", | |
"dev": true, | |
"requires": { | |
"babel-runtime": "^6.23.0", | |
"mocha": "^5.2.0", | |
"wdio-sync": "0.7.3" | |
} | |
}, | |
"wdio-spec-reporter": { | |
"version": "0.1.5", | |
"resolved": "https://registry.npmjs.org/wdio-spec-reporter/-/wdio-spec-reporter-0.1.5.tgz", | |
"integrity": "sha512-MqvgTow8hFwhFT47q67JwyJyeynKodGRQCxF7ijKPGfsaG1NLssbXYc0JhiL7SiAyxnQxII0UxzTCd3I6sEdkg==", | |
"dev": true, | |
"requires": { | |
"babel-runtime": "~6.26.0", | |
"chalk": "^2.3.0", | |
"humanize-duration": "~3.15.0" | |
} | |
}, | |
"wdio-sync": { | |
"version": "0.7.3", | |
"resolved": "https://registry.npmjs.org/wdio-sync/-/wdio-sync-0.7.3.tgz", | |
"integrity": "sha512-ukASSHOQmOxaz5HTILR0jykqlHBtAPsBpMtwhpiG0aW9uc7SO7PF E5LhVvTG4ypAh UGmY3rTjohOsqDr39jw==", | |
"dev": true, | |
"requires": { | |
"babel-runtime": "^6.26.0", | |
"fibers": "^3.0.0", | |
"object.assign": "^4.0.3" | |
} | |
}, | |
"webdriverio": { | |
"version": "4.14.4", | |
"resolved": "https://registry.npmjs.org/webdriverio/-/webdriverio-4.14.4.tgz", | |
"integrity": "sha512-Knp2vzuzP5c5ybgLu zTwy/l1Gh0bRP4zAr8NWcrStbuomm9Krn9oRF0rZucT6AyORpXinETzmeowFwIoo7mNA==", | |
"dev": true, | |
"requires": { | |
"archiver": "~2.1.0", | |
"babel-runtime": "^6.26.0", | |
"css-parse": "^2.0.0", | |
"css-value": "~0.0.1", | |
"deepmerge": "~2.0.1", | |
"ejs": "~2.5.6", | |
"gaze": "~1.1.2", | |
"glob": "~7.1.1", | |
"grapheme-splitter": "^1.0.2", | |
"inquirer": "~3.3.0", | |
"json-stringify-safe": "~5.0.1", | |
"mkdirp": "~0.5.1", | |
"npm-install-package": "~2.1.0", | |
"optimist": "~0.6.1", | |
"q": "~1.5.0", | |
"request": "^2.83.0", | |
"rgb2hex": "^0.1.9", | |
"safe-buffer": "~5.1.1", | |
"supports-color": "~5.0.0", | |
"url": "~0.11.0", | |
"wdio-dot-reporter": "~0.0.8", | |
"wgxpath": "~1.0.0" | |
}, | |
"dependencies": { | |
"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": "3.0.0", | |
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", | |
"integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", | |
"dev": true | |
}, | |
"chardet": { | |
"version": "0.4.2", | |
"resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", | |
"integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=", | |
"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" | |
} | |
}, | |
"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" | |
} | |
}, | |
"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" | |
} | |
}, | |
"has-flag": { | |
"version": "2.0.0", | |
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", | |
"integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", | |
"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" | |
} | |
}, | |
"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 | |
}, | |
"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 | |
}, | |
"mute-stream": { | |
"version": "0.0.7", | |
"resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", | |
"integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", | |
"dev": true | |
}, | |
"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" | |
} | |
}, | |
"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" | |
} | |
}, | |
"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" | |
} | |
}, | |
"supports-color": { | |
"version": "5.0.1", | |
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.0.1.tgz", | |
"integrity": "sha512-7FQGOlSQ AQxBNXJpVDj8efTA/FtyB5wcNE1omXXJ0cq6jm1jjDwuROlYDbnzHqdNPqliWFhcioCWSyav xBnA==", | |
"dev": true, | |
"requires": { | |
"has-flag": "^2.0.0" | |
} | |
} | |
} | |
}, | |
"wgxpath": { | |
"version": "1.0.0", | |
"resolved": "https://registry.npmjs.org/wgxpath/-/wgxpath-1.0.0.tgz", | |
"integrity": "sha1-7vikudVYzEla06mit1FZfs2a9pA=", | |
"dev": true | |
}, | |
"which": { | |
"version": "1.3.1", | |
"resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", | |
@@ -3567,6 4961,12 @@ | |
"integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus muE5vQ==", | |
"dev": true | |
}, | |
"wordwrap": { | |
"version": "0.0.3", | |
"resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", | |
"integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", | |
"dev": true | |
}, | |
"wrappy": { | |
"version": "1.0.2", | |
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", | |
@@ -3626,6 5026,44 @@ | |
"dev": true | |
} | |
} | |
}, | |
"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" | |
}, | |
"dependencies": { | |
"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" | |
} | |
}, | |
"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" | |
} | |
} | |
} | |
} | |
} | |
} | |
diff --git a/package.json b/package.json | |
index a63d526..736217a 100644 | |
--- a/package.json | |
b/package.json | |
@@ -1,7 1,9 @@ | |
{ | |
"private": true, | |
"scripts": { | |
- "test": "grunt test" | |
"test": "grunt test", | |
"selenium-daily": "npm run selenium-test", | |
"selenium-test": "wdio tests/selenium/wdio.conf.js" | |
}, | |
"devDependencies": { | |
"eslint-config-wikimedia": "0.15.3", | |
@@ -9,6 11,10 @@ | |
"grunt-banana-checker": "0.9.0", | |
"grunt-eslint": "22.0.0", | |
"grunt-stylelint": "0.15.0", | |
- "stylelint-config-wikimedia": "0.10.1" | |
"stylelint-config-wikimedia": "0.10.1", | |
"wdio-mediawiki": "0.5.0", | |
"wdio-mocha-framework": "0.6.4", | |
"wdio-spec-reporter": "0.1.5", | |
"webdriverio": "4.14.4" | |
} | |
} | |
diff --git a/tests/selenium/.eslintrc.json b/tests/selenium/.eslintrc.json | |
new file mode 100644 | |
index 0000000..11b34c7 | |
--- /dev/null | |
b/tests/selenium/.eslintrc.json | |
@@ -0,0 1,18 @@ | |
{ | |
"root": true, | |
"extends": [ | |
"wikimedia/server" | |
], | |
"env": { | |
"mocha": true | |
}, | |
"globals": { | |
"browser": false, | |
"mw": false, | |
"$": false | |
}, | |
"rules": { | |
"no-console": "off", | |
"prefer-template": "off" | |
} | |
} | |
diff --git a/tests/selenium/README.md b/tests/selenium/README.md | |
new file mode 100644 | |
index 0000000..a498317 | |
--- /dev/null | |
b/tests/selenium/README.md | |
@@ -0,0 1,33 @@ | |
# Selenium tests | |
For more information see https://www.mediawiki.org/wiki/Selenium/Node.js and [PATH]/mediawiki/vagrant/mediawiki/tests/selenium/README.md. | |
## Setup | |
Set up MediaWiki-Vagrant: | |
cd [PATH]/mediawiki/vagrant/mediawiki/extensions/[EXTENSION] | |
vagrant up | |
vagrant roles enable [ROLE] | |
vagrant provision | |
npm install | |
Chromedriver has to run in one terminal window: | |
chromedriver --url-base=wd/hub --port=4444 | |
## Run all specs | |
In another terminal window: | |
npm run selenium-test | |
## Run specific tests | |
Filter by file name: | |
npm run selenium-test -- --spec tests/selenium/specs/[FILE-NAME] | |
Filter by file name and test name: | |
npm run selenium-test -- --spec tests/selenium/specs/[FILE-NAME] --mochaOpts.grep [TEST-NAME] | |
diff --git a/tests/selenium/pageobjects/index.page.js b/tests/selenium/pageobjects/index.page.js | |
new file mode 100644 | |
index 0000000..639a75b | |
--- /dev/null | |
b/tests/selenium/pageobjects/index.page.js | |
@@ -0,0 1,15 @@ | |
const Page = require( 'wdio-mediawiki/Page' ); | |
class IndexPage extends Page { | |
// returns textareass | |
get textareas() { | |
return browser.elements( 'textarea[id^=wpprpindex-]' ); | |
} | |
// opening a page | |
open() { | |
super.openTitle( 'Index:Foo.djvu', { action: 'edit' } ); | |
} | |
} | |
module.exports = new IndexPage(); | |
diff --git a/tests/selenium/pageobjects/version.page.js b/tests/selenium/pageobjects/version.page.js | |
new file mode 100644 | |
index 0000000..ce72186 | |
--- /dev/null | |
b/tests/selenium/pageobjects/version.page.js | |
@@ -0,0 1,13 @@ | |
const Page = require( 'wdio-mediawiki/Page' ); | |
class VersionPage extends Page { | |
// Find the element corresponding to ProofreadPage | |
get extension() { return browser.element( '#mw-version-ext-other-ProofreadPage' ); } | |
// Opens page | |
open() { | |
super.openTitle( 'Special:Version' ); | |
} | |
} | |
module.exports = new VersionPage(); | |
diff --git a/tests/selenium/specs/index.js b/tests/selenium/specs/index.js | |
new file mode 100644 | |
index 0000000..5d95bc6 | |
--- /dev/null | |
b/tests/selenium/specs/index.js | |
@@ -0,0 1,15 @@ | |
var assert = require( 'assert' ), | |
// this is just a sample on how to use a page | |
IndexPage = require( '../pageobjects/index.page' ); | |
describe( 'Pages in the Index namespace', function () { | |
it( 'load the custom editing form in edit mode', function () { | |
IndexPage.open(); | |
// textareas load | |
assert( IndexPage.textareas.isExisting() ); | |
} ); | |
} ); | |
diff --git a/tests/selenium/specs/version.js b/tests/selenium/specs/version.js | |
new file mode 100644 | |
index 0000000..2342cc8 | |
--- /dev/null | |
b/tests/selenium/specs/version.js | |
@@ -0,0 1,16 @@ | |
var assert = require( 'assert' ), | |
// this is just a sample on how to use a page | |
VersionPage = require( '../pageobjects/version.page' ); | |
describe( 'ProofreadPage', function () { | |
// this is just a sample test | |
it( 'is configured correctly', function () { | |
VersionPage.open(); | |
// this is just a sample assertion, checking if an element exists | |
assert( VersionPage.extension.isExisting() ); | |
} ); | |
} ); | |
diff --git a/tests/selenium/wdio.conf.js b/tests/selenium/wdio.conf.js | |
new file mode 100644 | |
index 0000000..e7f293f | |
--- /dev/null | |
b/tests/selenium/wdio.conf.js | |
@@ -0,0 1,88 @@ | |
/** | |
* See also: http://webdriver.io/guide/testrunner/configurationfile.html | |
*/ | |
const fs = require( 'fs' ), | |
saveScreenshot = require( 'wdio-mediawiki' ).saveScreenshot; | |
exports.config = { | |
// ====== | |
// Custom WDIO config specific to MediaWiki | |
// ====== | |
// Use in a test as `browser.options.<key>`. | |
// Defaults are for convenience with MediaWiki-Vagrant | |
// Wiki admin | |
username: process.env.MEDIAWIKI_USER || 'Admin', | |
password: process.env.MEDIAWIKI_PASSWORD || 'vagrant', | |
// Base for browser.url() and Page#openTitle() | |
baseUrl: ( process.env.MW_SERVER || 'http://127.0.0.1:8080' ) ( | |
process.env.MW_SCRIPT_PATH || '/w' | |
), | |
// ================== | |
// Test Files | |
// ================== | |
specs: [ | |
__dirname '/specs/*.js' | |
], | |
// ============ | |
// Capabilities | |
// ============ | |
capabilities: [ { | |
// https://sites.google.com/a/chromium.org/chromedriver/capabilities | |
browserName: 'chrome', | |
maxInstances: 1, | |
chromeOptions: { | |
// If DISPLAY is set, assume developer asked non-headless or CI with Xvfb. | |
// Otherwise, use --headless (added in Chrome 59) | |
// https://chromium.googlesource.com/chromium/src/ /59.0.3030.0/headless/README.md | |
args: [ | |
...( process.env.DISPLAY ? [] : [ '--headless' ] ), | |
// Chrome sandbox does not work in Docker | |
...( fs.existsSync( '/.dockerenv' ) ? [ '--no-sandbox' ] : [] ) | |
] | |
} | |
} ], | |
// =================== | |
// Test Configurations | |
// =================== | |
// Level of verbosity: silent | verbose | command | data | result | error | |
logLevel: 'error', | |
// Setting this enables automatic screenshots for when a browser command fails | |
// It is also used by afterTest for capturing failed assertions. | |
screenshotPath: process.env.LOG_DIR || __dirname '/log', | |
// Default timeout for each waitFor* command. | |
waitforTimeout: 10 * 1000, | |
// See also: http://webdriver.io/guide/testrunner/reporters.html | |
reporters: [ 'spec' ], | |
// See also: http://mochajs.org | |
mochaOpts: { | |
ui: 'bdd', | |
timeout: 60 * 1000 | |
}, | |
// ===== | |
// Hooks | |
// ===== | |
/** | |
* Save a screenshot when test fails. | |
* | |
* @param {Object} test Mocha Test object | |
*/ | |
afterTest: function ( test ) { | |
var filePath; | |
if ( !test.passed ) { | |
filePath = saveScreenshot( test.title ); | |
console.log( '\n\tScreenshot: ' filePath '\n' ); | |
} | |
} | |
}; | |
-- | |
2.26.2 | |
File Metadata
File Metadata
- Mime Type
- text/x-diff
- Storage Engine
- blob
- Storage Format
- Raw Data
- Storage Handle
- 8416854
- Default Alt Text
- 0001-WIP-Added-new-API-endpoint-laid-groundwork-for-pagel.patch (78 KB)